Jedním z nejběžnějších vektorů útoků na servery jsou pokusy o přihlášení hrubou silou. Tady se útočníci pokoušejí dostat na váš server a zkoušet nekonečné kombinace uživatelských jmen a hesel.
Pro tyto druhy problémů nejrychlejším a nejúčinnějším řešením je omezit počet pokusů a zablokovat přístup uživateli nebo dané IP na určitou dobu. Je také důležité vědět, že k tomu existují také aplikace s otevřeným zdrojovým kódem, které jsou speciálně navrženy k obraně proti tomuto typu útoku.
V dnešním příspěvku Představím vám jeden, který se jmenuje Fail2Ban. Fail2004Ban, který původně vytvořil Cyril Jaquier v roce 2, je softwarový rámec pro prevenci narušení, který chrání servery před útoky hrubou silou.
O společnosti Fail2ban
Fail2ban skenuje soubory protokolu (/ var / log / apache / error_log) a zakazuje IP adresy, které vykazují škodlivou činnost, jako příliš mnoho vadných hesel a hledání zranitelností atd.
Obecně platí, Fail2Ban se používá k aktualizaci pravidel brány firewall tak, aby odmítly adresy IP po stanovenou dobu, i když lze nakonfigurovat i libovolnou jinou libovolnou akci (například odeslat e-mail).
Instalace Fail2Ban na Linux
Fail2Ban se nachází ve většině úložišť hlavních distribucí Linuxu a konkrétněji v nejpoužívanějších pro použití na serverech, jako jsou CentOS, RHEL a Ubuntu.
V případě Ubuntu stačí pro instalaci zadat následující:
sudo apt-get update && sudo apt-get install -y fail2ban
Zatímco v případě Centos a RHEL musí zadat následující:
yum install epel-release
yum install fail2ban fail2ban-systemd
Pokud máte SELinux, je důležité aktualizovat zásady pomocí:
yum update -y selinux-policy*
Jakmile to provedete, měli by v popředí vědět, že konfigurační soubory Fail2Ban jsou v / etc / fail2ban.
Konfigurace Fail2Ban se dělí hlavně na dva klíčové soubory; to jsou fail2ban.conf a jail.conf. fail2ban.confes větší konfigurační soubor Fail2Ban, kde můžete konfigurovat nastavení, jako například:
- Úroveň protokolu.
- Soubor pro přihlášení.
- Soubor procesního soketu.
- Soubor pid.
jail.conf je místo, kde konfigurujete možnosti jako:
- Konfigurace služeb k obraně.
- Jak dlouho zakázat, pokud by měli být napadeni.
- E-mailová adresa pro zasílání zpráv.
- Akce, která se má provést při zjištění útoku.
- Předdefinovaná sada nastavení, například SSH.
konfigurace
Nyní přejdeme ke konfigurační části, První věc, kterou uděláme, je záložní kopie našeho souboru jail.conf s:
cp -pf /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
A nyní pokračujeme v úpravách pomocí nano:
nano /etc/fail2ban/jail.local
Uvnitř přejdeme do sekce [Výchozí], kde můžeme provést určité úpravy.
Zde v části „ingoreip“ jsou adresy IP, které budou vynechány a Fail2Ban je zcela ignoruje, to je v zásadě IP serveru (místní) a ostatní, které by podle vás měly být ignorovány.
Odtamtud ven ostatní IP adresy, které selhaly v přístupu, budou vydány na milost a nemilost v jejich zablokování a počkejte na počet sekund, kdy bude zakázán (ve výchozím nastavení je to 3600 sekund) a že fail2ban funguje pouze po 6 neúspěšných pokusech
Po obecné konfiguraci nyní označíme službu. Fail2Ban již má některé předdefinované filtry pro různé služby. Udělejte tedy nějaké úpravy. Zde je příklad:
[ssh]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 6
S příslušnými provedenými změnami budete konečně muset znovu načíst Fail2Ban, běžící:
service fail2ban reload
systemctl enable firewalld
systemctl start firewalld
Po dokončení provedeme rychlou kontrolu, abychom zjistili, zda je spuštěn Fail2Ban:
sudo fail2ban-client status
Zrušit zákaz IP
Nyní, když jsme úspěšně zakázali IP adresu, co když chceme IP zakázat? K tomu můžeme znovu použít fail2ban-client a říct mu, aby zrušil zákaz konkrétní IP, jako v příkladu níže.
sudo fail2ban-client set ssh unbanip xxx.xxx.xx.xx
Kde „xxx ....“ Bude to adresa IP, kterou uvedete.