SSHGuard je open-source démon, který se používá ke zvýšení bezpečnosti ssh a dalších síťových protokolů. Kromě toho se používá k prevenci útoků hrubou silou. Bude nepřetržitě sledovat a uchovávat záznamy o systémových protokolech, což pomáhá při sledování neustálých pokusů o přihlášení nebo škodlivé činnosti. Jakmile takovou aktivitu zjistí, okamžitě zablokuje IP pomocí backendů brány firewall, jako jsou pf, iptables a ipfw. Poté po nastaveném časovém intervalu IP odblokuje. SSHGuard podporuje několik formátů protokolů, jako je raw log file, Syslog-ng a Syslog a také poskytuje další vrstvu ochrany několika službám postfix, Sendmail, vsftpd atd. včetně ssh.
V tomto tutoriálu se naučíte nainstalovat SSHGuard a nakonfigurovat systém tak, aby zabránil útokům hrubou silou v Ubuntu 20.04. Začněme instalací.
Instalace SSHGuard
Sshguard můžete nainstalovat ze správce balíčků apt; stačí ve vašem terminálu provést následující instalační příkaz. Nejprve musíme vždy aktualizovat informace o balíčku před instalací balíčku pomocí apt.
$ sudo apt update
$ sudo apt install sshguard
Po úspěšné instalaci SSHGuard můžete zkontrolovat stav SSHGuard pomocí démona systemctl. Uvidíte výstup podobný následujícímu příkladu.
$ sudo systemctl status sshguard
Konfigurace SSHGuard na Ubuntu
Výchozí doba zákazu vzdáleného hostitele je 120 sekund a každý další neúspěšný pokus o přihlášení prodlouží dobu zákazu o faktor 1,5. Můžete nakonfigurovat soubor SSHGuard sshguard.conf, který najdete v následující cestě.
$ sudo vim /etc/sshguard/sshguard.conf
Jak můžete vidět ve výše uvedeném příkladu, existuje mnoho direktiv s výchozí hodnotou. Pojďme zvýraznit některé směrnice a k čemu to vlastně je.
- Direktiva s názvem BACKEND obsahuje cestu k backendu systémové brány firewall.
- Direktiva s názvem THRESHOLD udává počet pokusů, po kterých bude uživatel zablokován.
- Direktiva BLOCKE_TIME určuje dobu, po kterou bude útočník zakázán po následných nesprávných pokusech o přihlášení.
- Direktiva DETECTION_TIME určuje dobu, po kterou je útočník detekován/zaznamenáván.
- Direktiva WHITELIST_FILE obsahuje cestu k souboru, který obsahuje seznam známých hostitelů.
Pak pojďme pracovat se systémovým firewallem. Chcete-li zablokovat útok hrubou silou, musíte nakonfigurovat firewall následujícím způsobem.
$ sudo vim /etc/ufw/before.rules
Poté přidejte následující řádek kódu do otevřeného souboru stejně jako v příkladu uvedeném níže.
:sshguard - [0:0]
-A ufw-before-input -p tcp --dport 22 -j sshguard
Code language: CSS (css)
Nyní zapište a ukončete soubor a restartujte firewall.
$ sudo systemctl restart ufw
Jakmile je vše nastaveno, váš systém je připraven vydržet útoky hrubou silou.
Přidání blokovaných hostitelů na seznam povolených
Whitelist umožní blokovaným hostitelům znovu se přihlásit do systému bez jakéhokoli omezení. Pro seznam povolených pak konkrétní hostitel specifikuje IP hostitele v souboru umístěném v následujícím cíli.
$ sudo vim /etc/sshguard/whitelist
Nyní, jakmile přidáte IP do souboru whitelistu, restartujte démona SSHGuard a backend firewallu, aby se změny aplikovaly.
Závěr
V tomto tutoriálu jsem vám ukázal, jak nainstalovat SSHGuard a jak nakonfigurovat bezpečnostní software, aby byl systém schopen přežít útok hrubou silou a přidat další vrstvu zabezpečení.
Dalším zajímavým článkem může být:Jak nainstalovat a používat Ubuntu Linux Screenshot Tools