sshd bei fehlerhaftem login für ip befristet sperren

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
Belgarad
Beiträge: 749
Registriert: 12.07.2002 02:00:44

sshd bei fehlerhaftem login für ip befristet sperren

Beitrag von Belgarad » 11.10.2004 19:16:00

Hallo,

ich suche eine einfache möglichkeit, eine ip befristet zu sperren, wenn versucht wird erfolglos n-mal per ssh eine anmeldung zu bekommen.

ich moechte damit die passwort attacken auf meinem system einschränken.
gibt es die moeglichkeit dass direkt im sshd zu tun, oder muss man logfiles parsen und dann per script die ip-tables anpassen?

p.s. da ich von unterschiedlichen/sich ändernden ip's auf mein system zugreife, kommt eine explizite freigabe für mich derzeit nicht in frage.
Debian SID

Benutzeravatar
eagle
Beiträge: 2282
Registriert: 05.11.2002 11:20:53
Wohnort: Berlin

Beitrag von eagle » 11.10.2004 20:49:56

Ich denke wenn du bei deinem ssh Server nur Public Key Authentication zulässt, dann brauchst du dir um Passwort Attacken keine Sorgen mehr zu machen und bequem ist das auch noch.

eagle
"I love deadlines. I love the whooshing sound they make as they fly by." -- Douglas Adams

Belgarad
Beiträge: 749
Registriert: 12.07.2002 02:00:44

Beitrag von Belgarad » 11.10.2004 23:06:20

Naja, aber wie bekomme ich dann den private key sicher auf ein "fremdes" system, von dem ich ab- und zu auf mein system zugriff haben moechte, ohne zu riskieren, dass der key wegkopiert wird?
Debian SID

Maj0r
Beiträge: 476
Registriert: 08.12.2003 14:52:39
Wohnort: Jüchen, Ne
Kontaktdaten:

Beitrag von Maj0r » 12.10.2004 08:23:30

Ich hab meinen Key zB immer auf USB-Stick (inklusive Putty) dabei.

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22447
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 12.10.2004 09:37:06

Belgarad hat geschrieben:Naja, aber wie bekomme ich dann den private key sicher auf ein "fremdes" system, von dem ich ab- und zu auf mein system zugriff haben moechte, ohne zu riskieren, dass der key wegkopiert wird?
Es gibt das Script ssh-copy-id

Benutzeravatar
QT
Beiträge: 1318
Registriert: 22.07.2004 21:08:02
Wohnort: localhost

Re: sshd bei fehlerhaftem login für ip befristet sperren

Beitrag von QT » 12.10.2004 09:47:31

Belgarad hat geschrieben:gibt es die moeglichkeit dass direkt im sshd zu tun, oder muss man logfiles parsen und dann per script die ip-tables anpassen?
Ich denke, dies wird Deine einzige Moeglichkeit sein. Schau doch mal, ob Du mit logcheck und passendem $HOME/.procmailrc Eintrag etwas erreichen kannst. Ich stelle mir das so vor:

1. Logcheck bemerkt die SSH Attacke in Deinem Logfile und sendet eine Email
2. Mittels procmail wird ein Script gestartet, welches die IP des Angreifers mit iptables blockt und gleichzeitig per 'at' Dienst einen weiteren iptables call aktiviert, der in X Minuten die entsprechende Regel wieder loescht.

Dass man seinen privaten SSH Key nicht auf jeden beliebigen Host ablegt, sollte selbstverstaendlich sein und auch, wenn er auf einem USB Stick ist, kann man diesen nicht so einfach mal an jedes System anstecken. Ich denke, eine Keyverteilung ist nicht wirklich die Loesung dieses "Problems". Fuer manche Hosts mag das praktikabel sein, aber unterliegt doch einigen Restriktionen.

Belgarad
Beiträge: 749
Registriert: 12.07.2002 02:00:44

Beitrag von Belgarad » 13.10.2004 10:32:37

ich denke der weg ueber das kopieren eines privaten ssh keys kommt fuer mich so nicht in frage. dabei habe ich bauchschmerzen, wenn ich daran denke dass der key auf einem fremden system verbleben koennte.
deshalb glaube ich dass der einzige weg ueber ein dynamisches konfigurieren der firewall zu realisieren ist.
-firewall per script modifizieren, sofern anzeichen einer attacke sichtbar sind (z.b. passwort attacke).



alternativ dachte ich auch an portknocking, d.h. das port für den ssh server erst über eine bestimmte sequenz oeffnen.
nachteil hier: man muss dem server mit einem client die entsprechendende sequenz schicken. und dann stellt wieder die frage: wie bekomme ich den client auf den fremden rechner...
siehe:
http://www.portknocking.org/view/faq
http://www.linuxjournal.com/article.php?sid=6811
Debian SID

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22447
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 13.10.2004 12:37:20

Ich denke das dürfte der einzige praktikable Weg sein. Den Namen eines Rechners kann ich nach belieben ändern, die IP ist auch nicht zuverlässig, die bekommt man dynamisch zugeteilt, in den seltensten Fällen ist die Fest. Und wenn ich genau wissen will mit welchen Rechner ich meinen Key austausche muß ich entweder zu dem anderen Rechne hinfahren, und meinen Key mitnehmen, oder ich überprüfe telefonisch die Korrektheit des Keys vom anderen Rechner.

Antworten