|
76 | Ksplice
Das Projekt beseitigt Linux' letzten Downtime-Grund und patcht den laufenden Kernel.
80 | Exchange-Ersatz
Kommerzielle Linux-Mailserver präsentieren sich im Test als Konkurrenten für Microsofts Communication Platform.
88 | Zertifizierungsprogramme
Übersicht über verschiedene Linux-Zertifikate und -Prüfungen.
92 | Kvpnc
Das Tool verspricht VPN-Konfiguration und Tunnelbau aus einer Hand.
|
Port Knocking ist interessant, wenn zum Beispiel eine IPtables-Firewall keinen offensichtlichen Wartungszugang haben soll - aber einen heimlichen. Das kann die Begehrlichkeiten skriptgesteuerter Angriffe verhindern. Das Werkzeug der Wahl für den ambitionierten Heimlichtuer ist Knockd [1]. Das Paket enthält zwei Komponenten: Knock ist der Client, der die Klopfsignale sendet. Der Daemon »knockd« empfängt sie.
Knock, der Anklopfer-Client, bekommt als Parameter nur die abzuklopfenden Portnummern und ein »-v«, um den Vorgang beobachten zu können. Beispiel:
knock -v 10.0.0.42 7000 8000 9000
Das Tool antwortet auf der Kommandozeile pfeilgerade mit:
hitting tcp 10.0.0.42:7000
hitting tcp 10.0.0.42:8000
hitting tcp 10.0.0.42:9000
Welche Aktion der Daemon ausführt, wenn er ein gültiges Klopfsignal erhält, lege ich in der Konfigurationsdatei »/etc/knockd.conf« fest. Ein passendes Beispiel zeigt Listing 1. In der Praxis wähle ich natürlich eher unregelmäßige Portnummern.
01 [options]
02 logfile = /var/log/knockd.log
03 [openSSH]
04 sequence = 7000,8000,9000
05 seq_timeout = 5
06 command = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
07 tcpflags = syn
08 [closeSSH]
09 sequence = 9000,8000,7000
10 seq_timeout = 5
11 command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
12 tcpflags = syn
|
Morsen für den guten Zweck
Wenn er das Klopfzeichen erkennt, öffnet »knockd« den Port 22 für die anklopfende IP, die »%IP%« übergibt (siehe Abbildung 1). Klopfe ich die Ports in umgekehrter Reihenfolge ab, schließt der Daemon den SSH-Zugang wieder. Für schusselige Admins wie mich gibt es noch eine weitere Möglichkeit, die in der »knockd.conf« so aussieht:
start_command = /usr/sbin/iptables -A INPUT -s %IP% -p tcp --syn --dport 22 -j ACCEPT
cmd_timeout = 10
stop_command = /usr/sbin/iptables -D INPUT -s %IP% -p tcp --syn --dport 22 -j ACCEPT
Abbildung 1: Wenn er das Klopfzeichen erkennt, öffnet »knockd« per IPtables den Port 22 für die anfragende IP.
Nach dem Anklopfen führt der Daemon »start_command« aus, dann wartet er die in »cmd_timeout« eingetragene Anzahl Minuten und arbeitet »stop_command« ab. Ganz Paranoide machen von der Möglichkeit Gebrauch, eine Datei mit Portsequenzen zu hinterlegen. Jede der Sequenzen verfällt nach einmaliger Benutzung. (jk)
|
Charly Kühnast administriert Unix-Betriebssysteme im Rechenzentrum Niederrhein in Moers. Zu seinen Aufgaben gehören die Sicherheit und Verfügbarkeit der Firewalls und der DMZ. Im heißen Teil seiner Freizeit frönt er dem Kochen, im feuchten Teil der Süßwasseraquaristik und im östlichen lernt er Japanisch.
|