voorbeelden van knockd.conf
knockd leest /etc/knockd.conf: een sectie [options] en één sectie per deur. Elke sectie heeft een reeks, een tijdslimiet en de opdracht die voor het kloppende adres, %IP%, wordt uitgevoerd. Kies je eigen poorten — hergebruik nooit die uit voorbeelden.
Open SSH enkele seconden
De meest gebruikelijke configuratie: één klop opent SSH, en knockd sluit het na cmd_timeout weer. Sessies die je al hebt geopend blijven werken als de firewall bestaande verbindingen accepteert.
[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 Afzonderlijke reeksen om te openen en te sluiten
Zonder timer blijft de poort open totdat je de sluitreeks klopt. Handig, maar gemakkelijk te vergeten — geef de voorkeur aan de versie met tijdslimiet.
[options]
UseSyslog
[openSSH]
sequence = 7311:tcp,8822:tcp,9133:udp
seq_timeout = 10
tcpflags = syn
command = /usr/sbin/iptables -I INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
[closeSSH]
sequence = 9133:udp,8822:tcp,7311:tcp
seq_timeout = 10
tcpflags = syn
command = /usr/sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT Eenmalige reeksen
In plaats van één vaste reeks kan knockd een bestand met reeksen lezen en elke reeks slechts één keer accepteren, zodat een opgenomen klop niet opnieuw kan worden afgespeeld. Secret Knock bewaart dezelfde lijst en gaat naar de volgende reeks na een klop die de deur heeft geopend.
[openSSH]
one_time_sequences = /etc/knockd/ssh_sequences
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
# /etc/knockd/ssh_sequences — one sequence per line, each used once
2222:udp,3333:tcp,4444:udp
5555:tcp,6666:udp,7777:tcp
8888:udp,9999:tcp,1111:tcp Met nftables
Op systemen met nftables laat je knockd het adres toevoegen aan een set met een time-out; de handleiding SSH verbergen toont de bijbehorende nftables-tabel.
[openSSH]
sequence = 7311:tcp,8822:tcp,9133:udp
seq_timeout = 10
tcpflags = syn
start_command = /usr/sbin/nft add element inet filter knocked4 { %IP% timeout 30s } Na het bewerken
- 1Stel op Debian en Ubuntu de interface waarop knockd luistert in via /etc/default/knockd (KNOCKD_OPTS="-i eth0") en herstart knockd.
- 2Bekijk het in werking met journalctl -u knockd -f terwijl je klopt.
- 3In Secret Knock zet + › Importeer uit bestand elke sectie met een reeks om in een deur; voer lijsten met eenmalige reeksen handmatig in.
Alle voorbeelden op GitHub → Elke configuratie op deze pagina, klaar om te kopiëren: github.com/mobilcomm/secretknock-examples (publiek domein).
Vragen
Moet ik TCP- of UDP-stappen gebruiken?
Beide werken. Een combinatie van beide maakt een reeks moeilijker te raden via een poortscan. UDP-stappen kunnen in Secret Knock een payload bevatten als je configuratie die controleert.
Handleidingen voor je configuratie
- Port knocking uitgelegd →
- knockd op iPhone, iPad en Mac →
- fwknop SPA op iPhone, Mac en Apple Watch →
- MikroTik port knocking →
- DrayTek Vigor-port knocking →
- Verberg SSH achter port knocking →
- Port knocking op Apple Watch →
- Waarom een poortklop de deur niet opent →
- fwknop-server instellen →
- Port knocking, VPN of fail2ban? →