Di recente ho deciso di fare un po 'di manutenzione di sicurezza. Ho visto i miei registri e ci sono stati alcuni tentativi contro il mio server SSH. All'inizio, ho rimosso la porta SSH dal 22 predefinito. Dopo di ciò, ho letto qualcosa su Fail2ban , BlockHosts e DenyHosts .
Ho dato un'occhiata al primo: è semplice da configurare, tutto è comprensibile; ma quando ho provato a "sondare la sua protezione", i test sono falliti . Tutto sembra essere buono, ma posso ancora accedere al server.
Ho anche testato gli IPtables: # iptables -I INPUT -j DROP
- dopo che la mia connessione SSH è stata persa (quindi, quello che volevo). Quindi # iptables -I INPUT -s 84.x.y.z -j DROP
, che ha funzionato anche.
Ma quali regole ha fatto Fail2ban, che non funziona: ( $ sudo iptables -L
)
Chain INPUT (policy ACCEPT)
target prot opt source destination
fail2ban-apache tcp -- anywhere anywhere multiport dports www,https
fail2ban-ssh tcp -- anywhere anywhere multiport dports ssh
fail2ban-ssh-ddos tcp -- anywhere anywhere multiport dports ssh
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain fail2ban-apache (1 references)
target prot opt source destination
RETURN all -- anywhere anywhere
Chain fail2ban-ssh (1 references)
target prot opt source destination
DROP all -- 84.x.y.z anywhere
RETURN all -- anywhere anywhere
Chain fail2ban-ssh-ddos (1 references)
target prot opt source destination
RETURN all -- anywhere anywhere
Moduli del kernel caricati: ( $ lsmod | grep ip
)
iptable_nat 4680 0
nf_nat 15576 1 iptable_nat
nf_conntrack_ipv4 12268 3 iptable_nat,nf_nat
nf_conntrack 55540 4 xt_state,iptable_nat,nf_nat,nf_conntrack_ipv4
xt_multiport 2816 2
iptable_filter 2624 1
ip_tables 10160 2 iptable_nat,iptable_filter
x_tables 13284 5 xt_state,xt_tcpudp,iptable_nat,xt_multiport,ip_tables
ipv6 235396 24
versioni:
- Debian Lenny 5.06, kernel 2.6.26-2-686
- IPtables 1.4.2-6
- Fail2ban 0.8.3-2sid1
openssh-server
1: 5.1p1-5
Test n. 1 passo dopo passo:
- Configurare Fail2ban su bassa durata. 60 secondi Quindi ricaricare.
- Tentativo di accesso (con SSH), direttamente con passwd errato.
- Per la sesta volta inserisci il passwd corretto (il numero massimo di tentativi è solo 4 qui). Ho effettuato l'accesso. Posso anche accedere alla pagina Web ospitata da quel server.
iptables -L
mi ha mostrato come sopra menzionato. Quindi il divieto era attivo, quando mi sono connesso, comandava il mio server.
Test n. 2 passo dopo passo:
- Stop Fail2ban. Crea uno
at
script per rimuovere la seguente regola di divieto scritta in futuro. (iptables -D INPUT 1
) - Crea una regola di divieto:
iptables -I INPUT 1 -s 84.x.y.z -j DROP
- Non ho potuto digitare nient'altro, la connessione SSH è inutilizzabile. Non ho potuto accedere alla pagina Web. Quindi, quello che volevo da iptables.
- Dopo lo
at
script, posso accedere al mio server.
Non vedo la soluzione, cosa devo fare per far funzionare il mio ban IPtables (creato da Fail2ban)?