Installazione SshGuard

SSHGuard è abbastanza simile a Fail2ban solo per il fatto che è scritto in C (Fail2ban è scritto in Python), è più leggero e fornisce meno funzionalità. SSHGuard può leggere i messaggi di registro dall’input standard o monitorare uno o più file di registro per rilevare un attacco. I messaggi di registro vengono analizzati riga per riga per i modelli riconosciuti. Se si verifica un attacco in cui vengono rilevati diversi errori di accesso entro pochi secondi, l’IP incriminato verrà bloccato. Per installare SSH Guard è necessario avere almeno un firewall( ufwfirewalldIptables) installato nel tuo sistema.

Installazione SSHGuard su Rocky Linux

Per le distribuzioni basate su RHEL come CentOS, inizia installando il repository EPEL come fornito nel comando seguente.

sudo yum install epel-release

Aggiorna e installa SSHGUARD con i comandi;

dnf apt update
dnf install sshguard

Una volta installato, avvia e imposta SSHGuard per l’avvio del sistema.

sudo systemctl start sshguard
sudo systemctl enable sshguard

Assicurati di verificare che SSHGuard sia in esecuzione come previsto.

sudo systemctl status sshguard

Configurazione SSHGuard

È necessario configurare SSHGuard per proteggere il sistema dagli attacchi di forza bruta SSH. Questo può essere fatto modificando /etc/sshguard/sshguard.conf. Di seguito sono riportate la configurazione:

  • BACKEND: Specifica il percorso completo dell’eseguibile di back-end. Qui per impostazione predefinita è impostato su iptables firewall.
  • LOGREADER: comando della shell che fornisce i log sull’output standard.
  • THRESHOLD: E’ il valore dopo il quale gli attaccanti verranno bloccati.
  • BLOCK_TIME: È il tempo fino al quale gli aggressori verranno bloccati dopo aver superato la soglia.
  • DETECTION_TIME: È il tempo in secondi fino al quale il sistema ricorderà l’attaccante prima che il punteggio venga azzerato.
  • WHITELIST_FILE: È il percorso completo del file che contiene l’indirizzo host che non dovrebbe essere bloccato.

Apriamo il file fi configurazione con il comando,

vi /etc/sshguard.conf
#### REQUIRED CONFIGURATION ####
# Full path to backend executable (required, no default)
BACKEND="/usr/lib/x86_64-linux-gnu/sshg-fw-iptables"

# Shell command that provides logs on standard output. (optional, no default)
# Example 1: ssh and sendmail from systemd journal:
LOGREADER="LANG=C /bin/journalctl -afb -p info -n1 -o cat SYSLOG_FACILITY=4 SYSLOG_FACILITY=10"

#### OPTIONS ####
# Block attackers when their cumulative attack score exceeds THRESHOLD.
# Most attacks have a score of 10. (optional, default 30)
THRESHOLD=30

# Block attackers for initially BLOCK_TIME seconds after exceeding THRESHOLD.
# Subsequent blocks increase by a factor of 1.5. (optional, default 120)
BLOCK_TIME=120

# Remember potential attackers for up to DETECTION_TIME seconds before
# resetting their score. (optional, default 1800)
DETECTION_TIME=1800

# IP addresses listed in the WHITELIST_FILE are considered to be
# friendlies and will never be blocked.
WHITELIST_FILE=/etc/sshguard/whitelist

Possibile personalizzare i parametri sopra elencati a piacimento, per verificare i log utilizza il comando;

tail -f /var/log/secure

Un saluto.

Autore

Classe Novanta3, Fondatore di TrgtKLS. Appassionato in Sec IT & Tech. Expert per l'amministrazione web server e supporto in Back-&, ottimizzazione e manutenzione di esso. • Metà Free e Metà Freelancer • [email protected]

Articoli correlati

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *