Fail2ban
Fail2ban tutkii loki tiedostoja ja estää IP-osoitteita muodostamassa yhteyttä. Esimerkikiksi kirjautumisen virheyritysten esto SSH yhteydellä tärkeää. Myös SSH yhteydellä on suositeltavaa vaihtamaan oletusportti 22 toiseksi portiksi.
Sisällysluettelo
Asentaminen
aptitude install fail2ban
TAI
apt-get install fail2ban
Konfigurointi
Avaan /etc/fail2ban/jail.conf
nano /etc/fail2ban/jail.conf
Oletus asetuksia:
ignoreip = IP-osoitteita jotka ohittava suodattimet
bantime = Aika, kuinka kauan säilytetään estolistalla, oletuksena 600 sekunttia.
findtime = Ban Ip-osoite jos tämän ajan sisällä kolme kertaa epäonnistunut
maxretry = Kuinka monta yritystä, ennen kuin estetään
Esimerkki konfiguroinnista:
[DEFAULT]
# "ignoreip" can be an IP address, a CIDR mask or a DNS host ignoreip = 127.0.0.1 192.168.1.1 bantime = 600 maxretry = 3 # "backend" specifies the backend used to get files modification. Available # options are "gamin", "polling" and "auto
Eli jätetään estolistan ulkopuolelle IP-osoitteet 192.168.1.1 ja 172.0.0.1 (=localhost). Enintään 3 yritystä sallitaan ja jos ylittyy niin 600 sekunniksi estolistalle.
Asentaessa SSH palvelun ja Fail2ban oletuksena SSH palvelu on fail2ban estojärjestelmässä.
[ssh]
enabled = true port = ssh filter = sshd logpath = /var/log/auth.log maxretry = 6
Oletuksena SSH sallii 6 yritystä muodostaessa yhteyttä, suositus on 3 yritystä.
port = ssh pitää muuttaa jos olet muuttanut SSH:n oletusporttia /etc/ssh/sshd.config tiedostosta.
Muista vain käynnistää fail2ban uudelleen lopuksi:
service fail2ban restart
Lokitiedosto
Fail2ban tarkistaa estolistan fail2ban lokista, joka on polussa /var/log/fail2ban.log
nano /var/log/fail2ban.log
Tiedostossa näkyy kaikki lokit ja yritykset muodostaessa yhteyttä palvelimeen.
Esimerkki loki:
2014-05-13 15:52:30,388 fail2ban.actions: WARNING [sendmail] Ban XXX.66.82.116 2014-05-13 15:59:29,295 fail2ban.actions: WARNING [sendmail] Ban XXX.27.118.100 2014-05-13 16:07:31,183 fail2ban.actions: WARNING [sendmail] Unban XXX.66.82.116 2014-05-13 16:14:29,530 fail2ban.actions: WARNING [sendmail] Unban XXX.27.118.100 2014-05-13 16:56:27,086 fail2ban.actions: WARNING [ssh] Ban XXX.136.60.164 2014-05-13 17:11:27,833 fail2ban.actions: WARNING [ssh] Unban XXX.136.60.164
IPTABLES - Palomuuri
Näytetään palomuuri säännöt
iptables -L
Näytetään estetyt palomuurista esim. fail2ban
iptables -L -n
Lista tarkemmin
iptables -L -v
Komento tulostaa:
Chain fail2ban-ssh (1 references) target prot opt source destination DROP all -- 192.168.100.100 0.0.0.0/0 RETURN all -- 0.0.0.0/0 0.0.0.0/0
Poistetaan IP-osoite fail2ban ssh korvaamalla <banned_ip> ban IP-osoitteella.
iptables -D fail2ban-ssh -s <banned_ip> -j DROP
Lisätään IP-osoite ban listalle manuaalisesti:
iptables -A INPUT -s <banned_ip> -j DROP
Verkko-osoiteavaruuksinen ban
iptables -A INPUT -s <banned_ip>/24 -j DROP
Verkko-alueen ban:
iptables -A INPUT -m iprange --src-range <banned-ip>-<range> -j DROP
"/24" tarkoittaa verkkomaskia, oletuksena se on 24 = 255.255.255.0
Lista boteista:
116.10.191.0/24 61.174.50.0/24 61.174.51.0/24
Kun olet estänyt manuaalisesti voit katsoa iptablea, ja se näyttää tältä
Chain INPUT (policy ACCEPT) target prot opt source destination fail2ban-proftpd tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 21,20,990,989 fail2ban-ssh tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 22 DROP all -- 116.10.191.0/24 0.0.0.0/0
Tallenna tiedostoon:
iptables-save > /path
Palauta tiedostosta:
iptables-restore < /path