Klient knockd pro iPhone, iPad a Mac
knockd otevře port, když jedna adresa včas zasáhne tajnou sekvenci portů. Secret Knock odešle tuto sekvenci z iPhonu, iPadu, Macu nebo Apple Watch, zkontroluje, zda port odpovídá, a otevře vaši aplikaci SSH.
Co Secret Knock odesílá
Každý krok dveří je zaklepání TCP nebo UDP na jeden port s volitelným zpožděním před ním a u UDP také s volitelnou datovou částí jako text nebo hex. Zaklepání TCP je jeden pokus o připojení: aplikace odešle jeden SYN a pokus ihned ukončí, takže jej operační systém znovu neodešle — knockd 0.8 resetuje sekvenci při opakovaném SYN.
Fungují i jednorázové sekvence (one_time_sequences v knockd): vyberte Typ zaklepání › Jednorázové sekvence a zadejte seznam; po zaklepání, které otevřelo dveře, Secret Knock přejde na další sekvenci. Import knockd.conf soubor se sekvencemi nenačte — import na to upozorňuje — proto tento seznam zadejte ručně.
Nastavení serveru
Minimální oddíl knockd, který otevře SSH pro zaklepávající adresu na 10 sekund. Zvolte si vlastní porty — nikdy znovu nepoužívejte zveřejněné příklady.
[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 Přidání dveří v aplikaci
- 1Nové dveře › Začít ze šablony › ukázka knockd vyplní tříportovou sekvenci TCP a SSH jako kontrolovaný port; porty nahraďte svými.
- 2Případně + › Importovat ze souboru a vyberte knockd.conf: z každého oddílu se sekvencí se vytvoří dveře.
- 3Pokud knockd na serveru naslouchá jen jedné rodině adres, připněte pro dveře IPv4 nebo IPv6.
- 4Podržte mosazné klepadlo. Jakmile port 22 odpoví, dveře zobrazí Dveře pootevřené a Otevřít SSH vás předá vaší aplikaci SSH.
Všechny příklady na GitHubu → Každá konfigurace na této stránce připravená ke zkopírování: github.com/mobilcomm/secretknock-examples (public domain).
Otázky
Funguje to s tcpflags = syn v knockd?
Ano. Každé zaklepání TCP je jeden SYN, což přesně odpovídá tomu, co tcpflags = syn počítá.
Mohu stejné zaklepání zobrazit jako příkaz?
Ano. Editor dveří zobrazuje zaklepání jako příkaz knock pro terminál, připravený k vložení.
Průvodci pro vaše nastavení
- Vysvětlení port knockingu →
- fwknop SPA na iPhonu, Macu a Apple Watch →
- Klepání na porty MikroTik →
- Port knocking pro DrayTek Vigor →
- Skryjte SSH za klepáním na porty →
- Port knocking na Apple Watch →
- Proč zaklepání na port neotevře dveře →
- Příklady knockd.conf →
- nastavení serveru fwknop →
- Port knocking, VPN nebo fail2ban? →