## Exim4

Exim4 è un MTA (Message Transfer Agent) sviluppato dalla "University of Cambridge" per essere usato sui sistemi Unix collegati a Internet. Exim può essere installato al posto di sendmail, anche se la configurazione di exim è diversa da quella di sendmail.

### Installazione

Per installare exim4, eseguire il seguente comando:

    sudo apt-get install exim4

### Configurazione

Per configurare exim4, eseguire il seguente comando:

    sudo dpkg-reconfigure exim4-config

Viene visualizzata l'interfaccia utente che consente di configurare diversi parametri. Per esempio, in exim4 i file di configurazione sono divisi in più file, ma per averli tutti in un unico file è possibile modificare questo comportamento dall'interfaccia utente.

Tutti i parametri che vengono configurati nell'interfaccia utente vengono archiviati nel file `/etc/exim4/update-exim4.conf.conf`. Per rieseguire la configurazione, è possibile eseguire nuovamente al configurazione guidata o modificare questo file usando l'editor di testo preferito. Una volta completata la configurazione, è possibile digitare il seguente comando per generare il file di configurazione principale:

    sudo update-exim4.conf

Il file di configurazione principale è generato e archiviato in `/var/lib/exim4/config.autogenerated`.

Per nessun motivo modificare il file `/var/lib/exim4/config.autogenerated`. È aggiornato automaticamente ogni volta che viene eseguito il comando update-exim4.conf

Per avviare il demone exim4, è possibile eseguire il seguente comando.

    sudo /etc/init.d/exim4 start

### Autenticazione SMTP

Questa sezione descrive come configurare Exim4 affinché usi SMTP-AUTH con TLS e SASL.

Il primo passo è quello di creare un certificato da usare con TLS. In un terminale, digitare quanto segue:

    sudo /usr/share/doc/exim4-base/examples/exim-gencert

Ora è necessario configurare Exim4 per l'utilizzo di TLS modificando il file `/etc/exim4/conf.d/main/03_exim4-config_tlsoptions` e aggiungendo quanto segue:

    MAIN_TLS_ENABLE = yes

È ora necessario configurare Exim4 affinché utilizzi saslauthd per l'autenticazione. Modificare il file `/etc/exim4/conf.d/auth/30_exim4-config_examples` e de-commentare le sezioni plain_saslauthd_server e login_saslauthd_server:

     plain_saslauthd_server:
       driver = plaintext
       public_name = PLAIN
       server_condition = ${if saslauthd{{$auth2}{$auth3}}{1}{0}}
       server_set_id = $auth2
       server_prompts = :
       .ifndef AUTH_SERVER_ALLOW_NOTLS_PASSWORDS
       server_advertise_condition = ${if eq{$tls_cipher}{}{}{*}}
       .endif
    #
     login_saslauthd_server:
       driver = plaintext
       public_name = LOGIN
       server_prompts = "Username:: : Password::"
       # don't send system passwords over unencrypted connections
       server_condition = ${if saslauthd{{$auth1}{$auth2}}{1}{0}}
       server_set_id = $auth1
       .ifndef AUTH_SERVER_ALLOW_NOTLS_PASSWORDS
       server_advertise_condition = ${if eq{$tls_cipher}{}{}{*}}
       .endif

Infine, aggiornare la configurazione di Exim4 e riavviare il servizio:

    sudo update-exim4.conf
    sudo /etc/init.d/exim4 restart

### Configurare SASL

Questa sezione descrive come configurare saslauthd per fornire l'autenticazione per Exim4.

Per prima cosa è necessario installare il pacchetto sasl2-bin. In un terminale, digitare quando segue:

    sudo apt-get install sasl2-bin

Per configurare saslauthd, modificare il file "/etc/default/saslauthd" e impostare START=no a:

    START=yes

Affinché Exim4 possa usare il servizio saslauth, l'utente Debian-exim deve far parte del gruppo sasl:

    sudo adduser Debian-exim sasl

Ora avviare il servizio saslauthd:

    sudo /etc/init.d/saslauthd start

Exim4 è ora configurato con il supporto a SMTP-AUTH con l'uso dell'autenticazione TLS e SASL.

Postfix |  | Server Dovecot