Přejít na obsah
Secret Knock

Skryjte SSH za klepáním na porty

Otevřený port SSH přitahuje pokusy o přihlášení z celého internetu. Klepání na porty udržuje port zavřený, dokud neprokážete, že znáte tajemství — poté ho otevře pouze pro vaši adresu a jen na několik sekund.

S knockd a nftables

Ve výchozím nastavení SSH zahazujte a přijímejte ho pouze z adres v sadě s časovým limitem. knockd přidá adresu, ze které bylo zaklepáno, do této sady; nftables ji po vypršení časového limitu odebere a navázané spojení SSH funguje dál.

table inet filter {
    set knocked4 {
        type ipv4_addr
        flags timeout
    }
    chain input {
        type filter hook input priority 0; policy drop;
        ct state established,related accept
        iif "lo" accept
        tcp dport 22 ip saddr @knocked4 accept
    }
}
/etc/nftables.conf (výňatek)

Sekce knockd, která naplňuje sadu:

[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 }
/etc/knockd.conf

Trvalý přístup udržujte odděleně

Pokud některé adresy povolujete také trvale, udržujte je v samostatné sadě bez časového limitu. Přidáním adresy, která už je v sadě s časovým limitem, se její limit neobnoví, takže smíchání obou typů položek v jedné sadě vám může po vypršení časovače zablokovat přístup.

Nebo použijte fwknop

fwknop SPA je silnější než sekvence: jeden šifrovaný a ověřený paket, který nelze znovu použít. Viz průvodce fwknop.

Z iPhonu do SSH

  1. 1Podržte mosazné klepadlo. Secret Knock ověří, zda port 22 odpovídá, a zobrazí, jak dlouho zůstane otevřený.
  2. 2Otevřít SSH otevře vaši aplikaci SSH pomocí odkazu ssh:// pro server.
  3. 3Volba „Nechat dveře otevřené, dokud je zobrazený jejich detail“ znovu zaklepe krátce před koncem časového okna, když jsou dveře na obrazovce.

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

Je to náhrada za klíče SSH?

Ne. Klepání na porty službu skryje; nadále používejte silné klíče SSH a také zakažte přihlašování heslem.

Průvodci pro vaše nastavení