Mantenere la propria LinuxBox aggiornata è un buon sistema per evitare problemi, ma bisogna ricordare che ci sono molte persone, o bot, che tentano continuamente di accedere con “attacchi a dizionario”, provando le combinazioni più diffuse di username/password.
Un buon sistema per bloccare i tentativi di accesso indesiderati è installare l’accoppiata Apf e Bfd. Si tratta di un Firewall molto versatile ed un “Brute Force Detection”. Quelle che seguono sono le istruzioni per l’installazione su Debian; vanno infatti effettuare delle piccole modifiche per far funzionare i due software su Debian. Non mi dilungherò invece in questo articolo su come configurare al meglio i due software… Sicuramente farò poi un altro post.
Innanzitutto scarichiamo i pacchetti:
1 2 3 | cd/usr/src wget http://www.r-fx.ca/downloads/apf-current.tar.gz wget http://www.r-fx.ca/downloads/bfd-current.tar.gz |
Decomprimiamo il tutto e procediamo all’installazione
1 2 | tar zxvf apf-current.tar.gz tar zxvf bfd-current.tar.gz |
I nomi delle cartelle che verranno create, dipendono dalla versione al momento dei software e quindi possono variare.
1 2 | cd apf-* ./install.sh |
1 2 | cd../bfd-* ./install.sh |
Le precedenti istruzioni provvedono all’installazione dei due software, rispettivamente in /etc/apf e /usr/local/bfd.
Passiamo ora alle modifiche da effettuare, per il corretto funzionamento con Debian. Iniziamo con apf, sistemando lo script di init ed attivandone l’esecuzione ad ogni riavvio:
Commentare, come segue, la riga 8 del file /etc/init.d/apf:
1 | #. /etc/rc.d/init.d/functions |
ed aggiungere subito sotto:
1 | ./lib/lsb/init-functions |
modifichiamo inoltre l’intestazione del files di init per renderlo conforme a quella debian like, sostituendo:
1 2 3 4 5 | #!/bin/bash ## # chkconfig: 345 55 25 # description: Advanced Policy Firewall # |
con:
1 2 3 4 5 6 7 8 9 10 | #!/bin/sh ### BEGIN INIT INFO # Provides: apf # Required-Start: $local_fs $remote_fs $network $syslog # Required-Stop: $local_fs $remote_fs $network $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # X-Interactive: true # Short-Description: Start/stop Advanced Policy Firewall ### END INIT INFO |
modificare infine le righe 28 e 34 da
1 | echo_success |
a
1 | echo-n" OK" |
Ora salvare il files ed attivare l’esecuzione dello script ad ogni riavvio:
1 | update-rc.dapf defaults |
Dopo aver verificato il funzionamento del firewall e sistemato la configurazione, ricordarsi di modificare nel file di configurazione /etc/apf/conf.apf la riga
1 | DEVEL_MODE="1" |
con
1 | DEVEL_MODE="0" |
altrimenti il firewall si “spegnerà” automaticamente dopo 5 minuti.
Passiamo ora a bfd. Modificare il file di configurazione /usr/local/bfd/conf.bfd, sostituendo la riga:
1 | AUTH_LOG_PATH="/var/log/secure" |
con
1 | AUTH_LOG_PATH="/var/log/auth.log" |
e magari abilitando l’invio di email, sostituendo:
1 | EMAIL_ALERTS="0" |
con
1 | EMAIL_ALERTS="1" |
ed inserendo un indirizzo email in EMAIL_ADDRESS
Ora bisognerà modificare il file /usr/local/bfd/rules/sshd inserendo una corretta riga per il check del log file auth.log di Debian. Commentare la riga:
1 2 3 | # ARG_VAL=`$TLOG_PATH $LP $TLOG_TF | sed -e 's/::ffff://' |grep-E'[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+' |sed-n-e'/sshd/s/.*user \(.*\) from \([^]*\).*/\2:\1/p'` |
ed aggiungere le seguenti due righe subito sotto:
1 2 3 | ARG_VAL1=`$TLOG_PATH$LP$TLOG_TF|grep sshd|grep-viw"error: BIND" |sed's/::ffff://'|grep-iw"Failed password for invalid user" |awk'{print$13":"$11}'|grep-E'[0-9]+'>$TMP/.sshd` |
1 | ARG_VAL=`cat$TMP/.sshd` |
Fatto questo, bisognerà ancora modificare il file /etc/cron.d/bfd e scegliere se inserire un indirizzo email dopo “MAILTO=”, oppure commentare la riga, ovvero:
#MAILTO=
Bene, ora ogni tre minuti verrà effettuata la lettura del file /var/log/auth.log e se ci saranno più di 20 (il numero si può configurare in /usr/local/bfd/conf.bfd) tentativi di connessione falliti, bfd aggiungerà l’IP da cui si originano le richieste nella lista degli IP bannati da afp, ovvero nel file /etc/apf/deny_hosts.rules
Ora possiamo dormire un po’ più tranquilli.
Ti interessa acquistare un dominio a prezzi ultraconvenienti? clicca qui
Se hai trovato utili le informazioni su questo blog,
Fai una donazione!
Clicca sul bottone qui sotto o almeno clicca sul banner pubblicitario 🙂
Commenta