Skjul SSH bag port knocking
En åben SSH-port modtager loginforsøg fra hele internettet. Port knocking holder porten lukket, indtil du beviser, at du kender en hemmelighed — og åbner den derefter kun for din adresse i nogle få sekunder.
Med knockd og nftables
Drop SSH som standard, og acceptér det kun fra adresser i et sæt med en timeout. knockd føjer den bankende adresse til sættet; nftables fjerner den, når timeouten udløber, og den etablerede SSH-session fortsætter med at fungere.
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
}
} Afsnittet i knockd, der udfylder sættet:
[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 } Hold permanent adgang adskilt
Hvis du også tillader nogle adresser permanent, skal du opbevare dem i et separat sæt uden en timeout. Tilføjelse af en adresse, der allerede er i et tidsbegrænset sæt, nulstiller ikke dens timeout, så hvis begge typer poster blandes i ét sæt, kan du blive låst ude, når timeren udløber.
Eller brug fwknop
fwknop SPA er stærkere end en sekvens: én krypteret, godkendt pakke, der ikke kan genafspilles. Se vejledningen til fwknop.
Fra din iPhone til SSH
- 1Hold messingdørhammeren nede. Secret Knock kontrollerer, at port 22 svarer, og viser, hvor længe den forbliver åben.
- 2Åbn SSH åbner din SSH-app med et ssh://-link til serveren.
- 3Indstillingen "Hold døren åben, mens dens skærm vises" banker igen kort før tidsvinduet udløber, mens døren vises på skærmen.
Alle eksempler på GitHub → Alle konfigurationer på denne side, klar til kopiering: github.com/mobilcomm/secretknock-examples (public domain).
Spørgsmål
Er dette en erstatning for SSH-nøgler?
Nej. Port knocking skjuler tjenesten; behold stærke SSH-nøgler, og deaktiver også login med adgangskode.
Vejledninger til din opsætning
- Port knocking forklaret →
- knockd på iPhone, iPad og Mac →
- fwknop SPA på iPhone, Mac og Apple Watch →
- MikroTik-port knocking →
- DrayTek Vigor-port knocking →
- Portbankning på Apple Watch →
- Hvorfor en portbankning ikke åbner →
- knockd.conf-eksempler →
- opsætning af fwknop-server →
- Port knocking, VPN eller fail2ban? →