Internet non è al passo con i tempi, ma con il futuro

— Anonimo

Limitare le connessioni SSH e tarpitting

Tagged:

http://www.stenoweb.it/files/blog/openssh.png Se avete una macchina con una porta aperta come ssh verso internet avrete notato una quantità spropositata di accessi tentati e falliti.

Ci sono tantissimi malware che provano ad intrufolarsi in computer mal configurati con password deboli. Dando per scontato che vi serva mantenere la porta aperta la prima e più utile soluzione è abilitare esclusivamente l’accesso via chiave pubblica.

Possiamo farlo impostando:

PubkeyAuthentication yes 

in sshd_config.

Per evitare di dover scorrere inutilmente log chilometrici potreste anche limitare le connessioni. Esistono software come fail2ban o denyhosts, ma potete implementare tutto usando semplicemente iptables.

Ci sono alcuni moduli che potreste usare, il più semplicemente è probabilmente “recent”, anche se potreste provare a giocare con hashlimit o persino con geoip. Quest’ultimo filtra le connessioni in base agli stati.

Il vero colpo di grazia per questi poveracci che setacciano la rete è il tarpitting. Si tratta in pratica di tenere in ostaggio la connessione del malcapitato senza consentire alcun trasferimento di dati e rallentando il loro “lavoro”. Potete trovare il tarpitting in patch-o-matic.

iptables -N autoban
iptables -I INPUT -p TCP --dport 22 -j autoban
iptables -A autoban -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH
iptables -A autoban -p tcp --dport 22 -m state --state NEW -m recent --update //
--seconds 60 --hitcount 2 --rttl --name SSH -j DROP

Interessante! Io, più pigramente, ho preferito cambiare la porta 22 con un'altra nel range 1024-65535, tolto l'accesso ssh a root, e messo delle password allo stesso tempo complicate e facili da ricordare, come ad esempio:

TurbinaPeltonRotta

ma scritta con i numeri:

Turb1n4P3lt0nR0tt4

Il trucco di intrappolare le connessioni con il tarpitting mi fa molto gola, ma ho un po' bisticciato in passato con patch-o-matic... :)

ciao

Riccardo