Attiva Web - Realizzazione siti internet, ecommerce

Filtrare i login della webmail Roundcube con Fail2ban

    • In questo articolo vi mostrerò come sono riuscito ad ottimizzare la sicurezza della webmail Roundcube grazie a Fail2ban.

      Generalmente di base Fail2ban ha già una estensione per Roundcube però presenza qualche pecca, ecco quindi come sono riuscito a risolvere con poche ma giuste mosse.

      Passaggio 1:
      Aprite il file /var/lib/roundcube/program/lib/imap.inc e recatevi alla riga 460 (riga più riga meno), dovreste comunque trovarvi qualcosa tipo questo:

      $conn->error    .= 'Authentication for '.$user.' failed (LOGIN): "';

      che dovete andare a modificare in questo modo

      $conn->error    .= 'Authentication for '.$user.' ('.$_SERVER['REMOTE_ADDR'].') failed (LOGIN): "';

      di default la funzione che si occupa della scrittura dei log non registra l'indirizzo ip e di conseguenza non potete bloccarlo tramite iptables. Con la modifica sopra riportata invece catturiamo l'indirizzo ip del nostro simpatico craker di turno.

      Passaggio 2:
      Aprite il file /etc/fail2ban/filter.d/roundcube.conf , ripulitelo e incollateci dentro queste righe:

      [Definition]
      failregex = (?i): IMAP Error: Authentication for .* \(\) failed \((?:LOGIN|AUTH)\):.*$
      ignoreregex =

      è la nostra espressione regolare per catturare il log scritto sopra.

      Passaggio 3:
      Aprite il file /etc/fail2ban/jail.local e trovate la riga che inizia con [roundcube], per non sbagliare copiate e incollate esattamente quello che vi riporto sotto:

      [roundcube]
      enabled  = true
      port     = http,50443
      filter   = roundcube
      logpath  = /var/log/roundcube/errors
      maxretry = 5

      Fatto ciò riavviate Fail2ban e fate delle prove su Roundcube sbagliando di proposito email o password, dopo 5 tentativi il vostro ip sarà bannato per i minuti impostati su Fail2ban.
      Inutile dirvi che una volta che il vostro indirizzo viene bloccato non potrete neanche accedere a nessun sito presente sul server fino a quando l'ip non sarà messo nello stato "unban".

      Francesco // 23-08-2013 // Linux

    Lascia un commento

    Invia commento


    ATTENZIONE: il tuo commento verrà prima moderato e se ritenuto idoneo sarà pubblicato