Prejsť na obsah
Secret Knock

Klient knockd pre iPhone, iPad a Mac

knockd otvorí port, keď jedna adresa včas zasiahne tajnú sekvenciu portov. Secret Knock odošle túto sekvenciu z vášho iPhonu, iPadu, Macu alebo Apple Watch, skontroluje, či port odpovedá, a otvorí vašu aplikáciu SSH.

Čo Secret Knock odosiela

Každý krok dverí je zaklopanie TCP alebo UDP na jeden port s voliteľným oneskorením pred ním a pri UDP aj s voliteľnou dátovou časťou vo forme textu alebo hexadecimálneho zápisu. Zaklopanie TCP je jeden pokus o pripojenie: aplikácia odošle jeden SYN a pokus ihneď ukončí, takže ho operačný systém znova neodošle — knockd 0.8 pri opakovanom SYN resetuje sekvenciu.

Fungujú aj jednorazové sekvencie (one_time_sequences knockd): vyberte Typ zaklopania › Jednorazové sekvencie a zadajte zoznam; po zaklopaní, ktoré otvorilo dvere, Secret Knock prejde na ďalšiu sekvenciu. Import súboru knockd.conf nečíta súbor so sekvenciami — import na to upozorní — preto tento zoznam zadajte ručne.

Nastavenie servera

Minimálna sekcia knockd, ktorá otvorí SSH pre zaklopávajúcu adresu na 10 sekúnd. Zvoľte si vlastné porty — nikdy nepoužívajte znova zverejnené prí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
/etc/knockd.conf

Pridanie dverí v aplikácii

  1. 1Vyberte Nové dvere › Začať zo šablóny › knockd (ukážka 7000, 8000, 9000). Šablóna vyplní trojportovú sekvenciu TCP a SSH ako port na kontrolu; nahraďte porty vlastnými.
  2. 2Alebo + › Importovať zo súboru a vyberte svoj knockd.conf: každá sekcia so sekvenciou sa zmení na dvere.
  3. 3Ak knockd na serveri počúva iba v jednej skupine adries, pre dvere pripnite IPv4 alebo IPv6.
  4. 4Podržte mosadzné klopadlo. Keď port 22 odpovie, dvere zobrazia Pootvorené dvere a možnosť Otvoriť SSH vám umožní prejsť do vašej aplikácie SSH.

Všetky príklady na GitHube → Každá konfigurácia z tejto stránky pripravená na skopírovanie: github.com/mobilcomm/secretknock-examples (voľné dielo).

Otázky

Funguje to s tcpflags = syn v knockd?

Áno. Každé zaklopanie TCP je jeden SYN, čo presne zodpovedá tomu, čo tcpflags = syn počíta.

Môžem rovnaké zaklopanie zobraziť ako príkaz?

Áno. Editor dverí zobrazuje zaklopanie ako príkaz knock pre váš terminál, pripravený na vloženie.

Návody pre vašu konfiguráciu