Portknocking mit knockd

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Portknocking mit knockd

Meinolf Sander
Moin,

ich möchte, dass auf einem Rechner SSH gestartet wird, wenn
eine bestimmte Sequenz von Port-Hits an ihn gesendet wird.
Mit knockd klappt das noch nicht ganz:

/etc/knockd.conf
[options]
        logfile = /var/log/knockd.log

[openSSH]
        sequence    = 7000,8000,9000
        seq_timeout = 5
        command     = /etc/init.d/ssh start
        tcpflags    = syn
[...]

# knockd -v -d -D -i ppp0
config: new section: 'options'
config: log file: /var/log/knockd.log
config: new section: 'openSSH'
config: openSSH: sequence: 7000:tcp,8000:tcp,9000:tcp
config: openSSH: protocol: (null)
config: openSSH: seq_timeout: 5
config: openSSH: start_command: /etc/init.d/ssh start
config: tcp flag: SYN
[...]
ppp interface detected (linux "cooked" encapsulation)
Local IP: $IP1

Im Logfile steht bei einem 'knock $IP1 7000 8000 9000':

starting up, listening on ppp0
$IP2: openSSH: Stage 1
$IP2: openSSH: Stage 2
$IP2: openSSH: Stage 3
$IP2: openSSH: OPEN SESAME
openSSH: running command: /etc/init.d/ssh start
openSSH: command returned non-zero status code (1)

Wie kann ich jetzt herausfinden, warum der SSHD nicht startet?
/etc/ssh/sshd_not_to_be_run gibt es selbstverständlich nicht.


Gruß,
   Meinolf
--
GPG key ID: 0x43891B76


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [hidden email]
mit dem Subject "unsubscribe". Probleme? Mail an [hidden email] (engl)

Reply | Threaded
Open this post in threaded view
|

Re: Portknocking mit knockd

moezzia
On 25/09/06, Meinolf Sander <[hidden email]> wrote:

> Moin,
>
> ich möchte, dass auf einem Rechner SSH gestartet wird, wenn
> eine bestimmte Sequenz von Port-Hits an ihn gesendet wird.
> Mit knockd klappt das noch nicht ganz:
>
> /etc/knockd.conf
> [options]
>         logfile = /var/log/knockd.log
>
> [openSSH]
>         sequence    = 7000,8000,9000
>         seq_timeout = 5
>         command     = /etc/init.d/ssh start
>         tcpflags    = syn
> [...]
>
> # knockd -v -d -D -i ppp0
> config: new section: 'options'
> config: log file: /var/log/knockd.log
> config: new section: 'openSSH'
> config: openSSH: sequence: 7000:tcp,8000:tcp,9000:tcp
> config: openSSH: protocol: (null)
> config: openSSH: seq_timeout: 5
> config: openSSH: start_command: /etc/init.d/ssh start
> config: tcp flag: SYN
> [...]
> ppp interface detected (linux "cooked" encapsulation)
> Local IP: $IP1
>
> Im Logfile steht bei einem 'knock $IP1 7000 8000 9000':
>
> starting up, listening on ppp0
> $IP2: openSSH: Stage 1
> $IP2: openSSH: Stage 2
> $IP2: openSSH: Stage 3
> $IP2: openSSH: OPEN SESAME
> openSSH: running command: /etc/init.d/ssh start
> openSSH: command returned non-zero status code (1)
>
> Wie kann ich jetzt herausfinden, warum der SSHD nicht startet?
> /etc/ssh/sshd_not_to_be_run gibt es selbstverständlich nicht.
>
>
> Gruß,
>    Meinolf

Hallo Meinolf,

Ich denke das Problem ist, dass "knockd" beim Forken (also wenn er als
Daemon laeuft) die Filedeskriptoren 0,1,2 schliesst, also insbesondere
die Standardout. Nun wird im Skript /etc/init.d/ssh mittels "echo"
Sachen auf den Standardout ausgegeben und das wird wohl das Prozess
zum Erliegen bringen. Deshalb wird wohl "sshd" gar nicht gestartet.
Probier doch mal im Skript "/etc/init.d/ssh" die "echo"'s
auszukommentieren (reicht schon beim "start case" das zu machen), oder
starte sshd per hand und nicht mit dem Init Skript (kopier einfach die
"start-stop-daemon" Zeile in dein "knockd.conf"). Ich hoffe das hielft
dir weiter.

Reply | Threaded
Open this post in threaded view
|

Re: Portknocking mit knockd

Meinolf Sander
* [hidden email] schrieb:

> Ich denke das Problem ist, dass "knockd" beim Forken (also wenn er als
> Daemon laeuft) die Filedeskriptoren 0,1,2 schliesst, also insbesondere
> die Standardout. Nun wird im Skript /etc/init.d/ssh mittels "echo"
> Sachen auf den Standardout ausgegeben und das wird wohl das Prozess
> zum Erliegen bringen. Deshalb wird wohl "sshd" gar nicht gestartet.
> Probier doch mal im Skript "/etc/init.d/ssh" die "echo"'s
> auszukommentieren (reicht schon beim "start case" das zu machen), oder
> starte sshd per hand und nicht mit dem Init Skript (kopier einfach die
> "start-stop-daemon" Zeile in dein "knockd.conf").

Besten Dank, so läuft es jetzt.


Gruß,
   Meinolf
--
GPG key ID: 0x43891B76


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [hidden email]
mit dem Subject "unsubscribe". Probleme? Mail an [hidden email] (engl)

Reply | Threaded
Open this post in threaded view
|

Re: Portknocking mit knockd

moezzia
On 26/09/06, Meinolf Sander <[hidden email]> wrote:

> * [hidden email] schrieb:
>
> > Ich denke das Problem ist, dass "knockd" beim Forken (also wenn er als
> > Daemon laeuft) die Filedeskriptoren 0,1,2 schliesst, also insbesondere
> > die Standardout. Nun wird im Skript /etc/init.d/ssh mittels "echo"
> > Sachen auf den Standardout ausgegeben und das wird wohl das Prozess
> > zum Erliegen bringen. Deshalb wird wohl "sshd" gar nicht gestartet.
> > Probier doch mal im Skript "/etc/init.d/ssh" die "echo"'s
> > auszukommentieren (reicht schon beim "start case" das zu machen), oder
> > starte sshd per hand und nicht mit dem Init Skript (kopier einfach die
> > "start-stop-daemon" Zeile in dein "knockd.conf").
>
> Besten Dank, so läuft es jetzt

Hallo Meinolf,

Anscheinend ist das bei knockd 0.5 behoben worden. Da werden die 0,1,2
auf "/dev/null" umgeleitet, sodass du den Init Skript ohne Probleme
brauchen kannst.

"http://www.zeroflux.org/cgi-bin/cvstrac.cgi/knock/wiki" << hier gibt
es den neuesten Deb Packet

Reply | Threaded
Open this post in threaded view
|

Re: Portknocking mit knockd

Meinolf Sander
* [hidden email] schrieb:

> Anscheinend ist das bei knockd 0.5 behoben worden. Da werden die 0,1,2
> auf "/dev/null" umgeleitet, sodass du den Init Skript ohne Probleme
> brauchen kannst.

Das Problem ist, daß der SSHD beim Booten nicht gestartet werden soll.
Wenn ich das dann mit 'dpkg-reconfigure ssh' so einrichte, wird
/etc/ssh/sshd_not_to_be_run angelegt, die auch von /etc/init.d/ssh
ausgewertet wird. Dann kann der SSHD auch beim Anklopfen nicht mehr
gestartet werden.

Gibt's eine einfache Lösung, um das Problem zu umgehen (außer die
start-stop-daemon-Zeile zu verwenden)?


Gruß,
   Meinolf

P.S. Antworten an die Liste reichen aus.
--
GPG key ID: 0x43891B76


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [hidden email]
mit dem Subject "unsubscribe". Probleme? Mail an [hidden email] (engl)

Reply | Threaded
Open this post in threaded view
|

Re: Portknocking mit knockd

Albert Dengg
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Tue, Sep 26, 2006 at 03:18:44PM +0200, Meinolf Sander wrote:

> * [hidden email] schrieb:
>
> > Anscheinend ist das bei knockd 0.5 behoben worden. Da werden die 0,1,2
> > auf "/dev/null" umgeleitet, sodass du den Init Skript ohne Probleme
> > brauchen kannst.
>
> Das Problem ist, daß der SSHD beim Booten nicht gestartet werden soll.
> Wenn ich das dann mit 'dpkg-reconfigure ssh' so einrichte, wird
> /etc/ssh/sshd_not_to_be_run angelegt, die auch von /etc/init.d/ssh
> ausgewertet wird. Dann kann der SSHD auch beim Anklopfen nicht mehr
> gestartet werden.
>
> Gibt's eine einfache Lösung, um das Problem zu umgehen (außer die
> start-stop-daemon-Zeile zu verwenden)?
wie wärs wenn du das script das von knocking ausgefürht wird so
einrichtest:
rm rm /etc/ssh/sshd_not_to_be_run;/etc/init.d/ssh start;touch
/etc/ssh/sshd_not_to_be_run;

?
sollte eigentlich klappen

(ungestestet)

mfg
Albert

- --
Albert Dengg <[hidden email]>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFFGTlEhrtSwvbWj0kRAn5FAJ48Z5RWXGeHLKljIT4Qyif839IQgQCeNk/J
UBSYGus3neFCUg5e2meXVbU=
=oJHM
-----END PGP SIGNATURE-----


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [hidden email]
mit dem Subject "unsubscribe". Probleme? Mail an [hidden email] (engl)

Reply | Threaded
Open this post in threaded view
|

Re: Portknocking mit knockd

moezzia
In reply to this post by Meinolf Sander
> Gibt's eine einfache Lösung, um das Problem zu umgehen (außer die
> start-stop-daemon-Zeile zu verwenden)?

Wie waers wenn du einfach den Link aus dem dem /etc/rc<actuellen
runlevel>.d rausnimmst?
Zb. bei mir waers S20ssh.

Reply | Threaded
Open this post in threaded view
|

Re: Portknocking mit knockd

Martin Steigerwald
Am Dienstag 26 September 2006 16:49 schrieb [hidden email]:
> > Gibt's eine einfache Lösung, um das Problem zu umgehen (außer die
> > start-stop-daemon-Zeile zu verwenden)?
>
> Wie waers wenn du einfach den Link aus dem dem /etc/rc<actuellen
> runlevel>.d rausnimmst?
> Zb. bei mir waers S20ssh.

Hallo,

dann isser beim nächsten Paket-Update wieder drin... mit rcconf kann man
einen Dienst permanent deaktivieren.

Grüße,
--
Martin 'Helios' Steigerwald - http://www.Lichtvoll.de
GPG: 03B0 0D6C 0040 0710 4AFA  B82F 991B EAAC A599 84C7