Was ist Port-Knocking?
Port-Knocking ist ein wirksames Schutzverfahren für Server und Serverdienste in TCP/IP-Netzwerken. Die Verwendung soll unbefugten Dritten den Zugang über offene Ports verwehren. Bei Durchführung eines Portscans erscheint es so, dass kein Zugriff auf den Server möglich ist. Das Prinzip ist einfach: Im Default-Modus bleiben alle Ports des Servers geschlossen. Bevor sich ein Server-Port öffnet, muss der Client mit einer zuvor festgelegten Sequenz „anklopfen“. Das Anklopfen findet in Form einer Serie von Verbindungsversuchen mit den geschlossenen Ports statt. Auf das Anklopfen reagiert der Server zunächst nicht nach außen, die Ports bleiben geschlossen. Ist die Anklopf-Sequenz korrekt, öffnet sich der Port und der Datenaustausch kann beginnen. Schließlich kann sich der Client anmelden und der Datenaustausch beginnen. Geht bei der Port-Knocking-Konfiguration etwas schief, kann sich unter Umständen sogar der Administrator nur noch lokal anmelden. Nach erfolgreichem Abschluss des Datenaustauschs kann der Port mit einer anderen Sequenz wieder geschlossen werden und die gespeicherten Daten sind vor unbefugtem Zugriff geschützt. Port-Knocking lässt sich relativ leicht einrichten und es führt zu keinen Performance-Einbußen.
Was sind die Nachteile des Port Knocking?
Für den Anklopf-Vorgang ist eine spezielle Software nötig, die Konfiguration der Clients kann unerfahrene Anwender vor große Probleme stellen. Verfügt ein Anwender bei einem Rechner nicht über die nötigen Rechte für die nötigen Anpassungen, lässt sich damit keine Verbindung zum Server aufbauen. Eine Schwachstelle besteht beim Port-Knocking, wenn der Angreifer das verwendete Klopfmuster mithört und es anschließend einfach selbst verwendet. Zum Schutz öffentlicher Server eignet sich das Verfahren nicht, da durch das Bekanntwerden der richtigen Anklopf-Sequenz kein effektiver Schutz mehr gegeben ist. Für den Fernzugriff eines Administrators via SSH eignet sich das Port-Knocking jedoch sehr gut. Auf der gleichen Idee beruhend, aber fortgeschrittener, ist die sogenannte Single-Packet-Autorisierung (SPA). Hier dient statt einer Folge von Port-Anfragen als Klopf-Sequenz ein verschlüsseltes Paket als Schlüssel zum Öffnen des Ports.