Ein knockd-Client für iPhone, iPad und Mac
knockd öffnet einen Port, wenn eine Adresse rechtzeitig eine geheime Portsequenz erreicht. Secret Knock sendet diese Sequenz von deinem iPhone, iPad, Mac oder deiner Apple Watch, prüft, ob der Port antwortet, und öffnet deine SSH-App.
Was Secret Knock sendet
Jeder Schritt einer Tür ist ein TCP- oder UDP-Klopfsignal an einen Port, mit einer optionalen Verzögerung davor und bei UDP mit optionalen Nutzdaten als Text oder Hex. Ein TCP-Klopfsignal ist ein einzelner Verbindungsversuch: Die App sendet ein einzelnes SYN und schließt den Versuch sofort, damit das Betriebssystem ihn nicht erneut überträgt — knockd 0.8 setzt eine Sequenz bei einem wiederholten SYN zurück.
Einmalsequenzen (one_time_sequences von knockd) funktionieren ebenfalls: Wähle Klopftyp › Einmalige Sequenzen (knockd) und gib die Liste ein; nach einem Anklopfen, das die Tür geöffnet hat, fährt Secret Knock mit der nächsten Sequenz fort. Beim Importieren einer knockd.conf wird die Sequenzdatei nicht gelesen — der Import weist darauf hin — gib die Liste daher von Hand ein.
Server einrichten
Ein minimaler knockd-Abschnitt, der SSH für die anklopfende Adresse 10 Sekunden lang öffnet. Wähle eigene Ports — verwende niemals veröffentlichte Beispiele erneut.
[options]
UseSyslog
[openSSH]
sequence = 7311:tcp,8822:tcp,9133:udp
seq_timeout = 10
tcpflags = syn
start_command = /usr/sbin/iptables -I INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
cmd_timeout = 10
stop_command = /usr/sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT Die Tür in der App hinzufügen
- 1Neue Tür › Mit einer Vorlage starten › knockd (Beispiel 7000, 8000, 9000) füllt eine TCP-Sequenz mit drei Ports sowie SSH als zu prüfenden Port aus; ersetze die Ports durch deine.
- 2Oder + › Aus Datei importieren und deine knockd.conf auswählen: Jeder Abschnitt mit einer Sequenz wird zu einer Tür.
- 3Lege IPv4 oder IPv6 für die Tür fest, wenn knockd auf deinem Server nur auf einer Adressfamilie lauscht.
- 4Halte den Messing-Türklopfer gedrückt. Die Tür zeigt Tür angelehnt, sobald Port 22 antwortet, und SSH öffnen übergibt dich an deine SSH-App.
Alle Beispiele auf GitHub → Jede Konfiguration auf dieser Seite, kopierbereit: github.com/mobilcomm/secretknock-examples (gemeinfrei).
Fragen
Funktioniert es mit tcpflags = syn von knockd?
Ja. Jedes TCP-Klopfsignal ist ein einzelnes SYN, genau das zählt tcpflags = syn.
Kann ich dasselbe Anklopfen als Befehl sehen?
Ja. Der Tür-Editor zeigt das Anklopfen als Befehl für knock für dein Terminal an, bereit zum Einfügen.
Anleitungen für dein Setup
- Port knocking erklärt →
- fwknop SPA auf iPhone, Mac und Apple Watch →
- MikroTik-Port-Knocking →
- DrayTek Vigor Port Knocking →
- SSH hinter Port Knocking verbergen →
- Port Knocking auf der Apple Watch →
- Warum ein Port-Knock nicht öffnet →
- knockd.conf-Beispiele →
- fwknop-Server einrichten →
- Port Knocking, VPN oder fail2ban? →