Istruzioni per integrare Sophos Antivirus ad un Message Transfer Agent (MTA)

Cortesia di Enrico Russo

Di seguito sono riportate le instruzioni per integrare l'antivirus ai più comuni Message Transfer Agent per Linux/Unix; in questo modo è possibile controllare tutta la posta in arrivo e bloccare i messaggi che contengono allegati con virus.

Per svolgere questo compito, il MTA deve essere coadiuvato da un apposito programma; le istruzioni che seguono si riferiscono all'integrazione di Amavis con Sendmail.

Un altro software integrabile in Sendmail è Inflex.

Per procedere alla configurazione degli MTA è necessario:


  1. Installare e configurare Sophos seguendo le istruzioni riportate nella pagina Installazione rapida di Sophos su sistemi Linux/Intel;
  2. Scaricare i sorgenti o il pacchetto specifico del mail delivery agent maildrop all'indirizzo http://www.flounder.net/~mrsam/maildrop/.

    Per compilare ed installare i sorgenti:
    • Scompattare il file scaricato (ad es. maildrop-1.3.6.tar.gz) nella directory /usr/src (cd /usr/src) con il comando tar xvfz maildrop-1.3.6.tar.gz
    • Entrare nella directory di maildrop appena creata dal comando tar (cd /usr/src/maildrop-1.3.6) e prepare l'installazione con il comando ./configure
    • Attendere la fine della configurazione, compilare i sorgenti con il comando make ed installare i compilati con il comando make install.

  3. Se si vuole includere la scansione di allegati compressi (zip,arj,lha ecc.) si devono installare le utility in grado di gestire i diversi formati. Alcuni sorgenti di queste utility si possono trovare all'indirizzo ftp://sunsite.unc.edu/pub/Linux/utils/compress/ (i più noti sono comunque disponibili in pacchetti per le varie distribuzioni di Linux/Unix)
  4. Scaricare i sorgenti o il pacchetto specifico di AMaViS (A Mail Virus Scanner) all'indirizzo http:///www.amavis.org



    Per compilare ed installare i sorgenti:


    • Scompattare il file scaricato (ad es. amavis-0.2.1.tar.gz) nella directory /usr/src/ (cd /usr/src) con il comando tar xvfz amavis-0.2.1.tar.gz
    • Entrare nella directory di amavis appena creata dal comando tar (cd /usr/src/amavis-0.2.1) e prepare l'installazione con il comando ./configure. Controllare che durante la configurazione dei sorgenti amavis riconosca l'installazione dell'antivirus Sophos:
    • [...]
      checking *** Sophos Sweep ***
      checking for sweep... /usr/local/bin/sweep
      checking if /usr/local/bin/sweep really is Sophos Sweep... yes
      [...]
      
      
    • Attendere la fine della configurazione, compilare i sorgenti con il comando make ed installare i compilati con il comando make install.




Integrazione di Sophos a Sendmail per Linux/Unix

Per configurare sendmail è possibile utilizzare una delle seguenti alternative:

  • Modificare il file di configurazione sendmail.cf (la posizione di questo file all'interno del filesystem varia in base al tipo di distribuzione utilizzata ma generalmente si trova in /etc/mail/): in questo caso si deve editare il file sendmail.cf e sostiture le righe
    Mlocal, P=/usr/bin/procmail, F=lsDFMAw5:/|@SPfhn, S=10/30, R=20/40,
    T=DNS/RFC822/X-Unix,
    A=procmail -Y -a $h -d $u
    
    

    con

    #Mlocal, P=/usr/bin/procmail, F=lsDFMAw5:/|@SPfhn, S=10/30,R=20/40,
    # T=DNS/RFC822/X-Unix,
    # A=procmail -Y -a $h -d $u
    Mlocal, P=/usr/sbin/scanmails, F=lsDFMAw5:/|@SPfhn, S=10/30,R=20/40,
    T=DNS/RFC822/X-Unix,
    A=scanmails -Y -a $h -d $u
    
    

    Una volta completata la modifica è necessario far ripartire il server di posta (utilizzando, ad esempio, lo script di startup nella directory init.d).

  • (Per i più esperti) Modificare il file di configurazione sendmail.cf attraverso le macro M4: in questo caso si devono aggiungere al file .m4 da cui è stato generato il file di configurazione sendmail.cf le seguenti direttive:
    dnl change Mlocal to use AMaViS
    define(`LOCAL_MAILER_PATH', `/usr/sbin/scanmails')dnl
    define(`LOCAL_MAILER_ARGS', `scanmails -Y -a $h -d $u')dnl
    
    

    Una volta completata la modifica è necessario far ripartire il server di posta (utilizzando, ad esempio, lo script di startup nella directory init.d).

Per completare l'installazione si deve aggiungere un alias (nel file /etc/aliases o /etc/mail/aliases) virusalert per indicare a quale indirizzo spedire gli alert sui virus trovati:

#
# Mail aliases for sendmail
#
# You must run newaliases(1) after making changes to this file.
#

# Required aliases
root:           superuser
postmaster:     root
MAILER-DAEMON:  postmaster
virusalert: virusmaster

...

Ricordarsi di digitare il comando newaliases al termine della modifica.

Personalizzazione di AMaViS

È possibile personalizzare AMaViS editando il file /usr/sbin/scanmails. In particolare segnaliamo che è possibile specificare se spedire le notifiche dei virus all'amministratore, al mittente e al destinatario

[...]

################################################
# send virus report to admin (see mailto)?     #
# send notification message to sender?         #
# send notification message to receiver?       #
################################################
notifyadmin=yes
notifysender=yes
notifyreceiver=yes

[...]

e modificare il contenuto di tale messaggi (vedere le sezioni # send a mail back to sender # e # send a mail to the addressee #).



La copia locale di scanmails contiene un esempio di personalizzazione.

Test di AMaViS

Per testare l'installazione è possibile utilizzare i pattern presenti sul sito http://www.eicar.org/ (NON sono pericolosi) oppure le copie locali eicar.com, eicar.com.txt, eicar_com.zip, eicarcom2.zip.



Se AMaViS è stato installato correttamente e si spedisce eicar in attachment compare un messaggio di questo tipo in /var/log/mail.log

[...]
Nov 30 17:24:33 server scanmails[8149]: execution started
Nov 30 17:24:35 server scanmails[8149]: FOUND VIRUS IN MAIL from [mittente]
to [destinatario]
[...]
Nov 30 17:24:35 server scanmails[8149]: terminating