Dovecot per ISP con debian wheezy: differenze tra le versioni

Vai alla navigazione Vai alla ricerca
da cancellare
Nessun oggetto della modifica
(da cancellare)
 
(11 versioni intermedie di un altro utente non mostrate)
Riga 1: Riga 1:
{{Template:Internet Service Provider con Wheezy}}
{{Da cancellare|Abbandonata, non completa, e la parte trattata è duplicato di [[Internet_Service_Provider_con_Debian]]}}{{Template:Internet Service Provider con Wheezy}}


=Creazione utente dovecot=
=Creazione utente dovecot=
Riga 49: Riga 49:
</pre>
</pre>


===== auth-sql.conf.ext =====
== auth-sql.conf.ext ==
Modifichiamo ora il file di configurazione SQL.
Modifichiamo ora il file di configurazione SQL.
<br/>
<br/>
Commentiamo la sezione standard "userdb" e aggiungiamo:
Commentiamo la prima sezione standard "userdb" e decommentiuamo e modifichiamo quella subito successiva. I parametri finali devono essere:
<pre>
<pre>
passdb {
  driver = sql
  args = /etc/dovecot/dovecot-sql.conf.ext
}
userdb {
userdb {
   driver = static
   driver = static
Riga 59: Riga 64:
}
}
</pre>
</pre>
Attenzione: deve esserci attiva una sola sezione "userdb".
Attenzione: deve esserci attiva una sola sezione "userdb" (il file d'esempio ne contiene invece due, di cui una decommantata).
<br/>
<br/>
Attenzione: c'è un'altra sezione molto simile, ma utilizza "%u" al posto di "%d/%n". Occorre stare attenti a non confonderle, perchè la differenza di variabili influenza il percorso di memorizzazione delle maildir.
Attenzione: c'è un'altra sezione molto simile a quella che vogliamo, ma utilizza "%u" al posto di '''"%d/%n"'''. Occorre stare attenti a non confonderle, perchè la differenza di variabili influenza il percorso di memorizzazione delle maildir.


===== 10-mail.conf =====
== 10-mail.conf ==
Cambiamo la direttiva ''mail_location'' in
Cambiamo la direttiva ''mail_location'' in
<pre>
<pre>
Riga 80: Riga 85:
per mantenere la retrocompatibilità della configurazione.
per mantenere la retrocompatibilità della configurazione.


===== 10-master.conf =====
== 10-master.conf ==
Nella sezione ''service auth'' dobbiamo inserire:
Nella sezione ''service auth'' dobbiamo inserire:
<pre>
<pre>
Riga 88: Riga 93:
     user = postfix
     user = postfix
     group = postfix
     group = postfix
  }
  unix_listener auth-master {
    mode = 0660
    user = vmail
    group = vmail
   }
   }
</pre>
</pre>
Gli altri servizi possono essere lasciati come sono.
Gli altri servizi possono essere lasciati come sono.


===== 10-ssl.conf =====
== 10-ssl.conf ==
In precedenza abbiamo creato un certificato SSL per i servizi Pop3 3 Imaps. Questo è il momento di dire a Dovecot dove si trovano questi certificati, inserendo:
Creiamo un certificato SSL per i servizi Pop3 e Imaps:
<pre># openssl req -new -x509 -days 3650 -nodes -newkey rsa:4096 -out /etc/ssl/certs/mailserver.pem -keyout /etc/ssl/private/mailserver.pem</pre>
 
e proteggiamolo:
 
<pre># chmod 600 /etc/ssl/private/mailserver.pem</pre>
 
Quindi indichiamo a Dovecot dove si trovano questi certificati, inserendo:
<pre>
<pre>
ssl_cert = </etc/ssl/certs/mailserver.pem
ssl_cert = </etc/ssl/certs/mailserver.pem
Riga 99: Riga 117:
</pre>
</pre>


===== 15-lda.conf =====
== 15-lda.conf ==
In questo file dobbiamo abilitare il plugin ''sieve'', che, in parole povere, è un sistema per gestire le regole email a livello server. Cerchiamo la sezione ''protocol lda'' verso la fine del gile e aggiungiamo ''sieve'' alla lista dei plugin:
In questo file dobbiamo abilitare il plugin ''sieve'', che, in parole povere, è un sistema per gestire le regole email a livello server. Cerchiamo la sezione ''protocol lda'' verso la fine del gile e aggiungiamo ''sieve'' alla lista dei plugin:
<pre>
<pre>
Riga 108: Riga 126:
</pre>
</pre>


===== /etc/dovecot/dovecot-sql.conf.ext =====
== /etc/dovecot/dovecot-sql.conf.ext ==
Questo file è richiamato dal file <tt> /etc/dovecot/conf.d/auth-sql.conf.ext</tt> e dice a Dovecot come accedere al database MySQL e dove trovare le informazioni sugli account. Accertiamoci che contenga le linee:
Questo file è richiamato dal file <tt> /etc/dovecot/conf.d/auth-sql.conf.ext</tt> e dice a Dovecot come accedere al database MySQL e dove trovare le informazioni sugli account. Accertiamoci che contenga le linee:
<pre>
<pre>
Riga 118: Riga 136:
ponendo attenzione a inserire le credenziali MySQL create in precedenza.
ponendo attenzione a inserire le credenziali MySQL create in precedenza.


===== Protezione dei file =====
== Protezione dei file ==
Impostiamo le giuste credenziali per il file di configurazione principale:
<pre>
# chgrp vmail /etc/dovecot/dovecot.conf
# chmod g+r /etc/dovecot/dovecot.conf
</pre>
e proteggiamo il file di configurazione SQL in modo che nessuno possa scoprire la password del database:
<pre>
# chown root:root /etc/dovecot/dovecot-sql.conf.ext
# chmod go= /etc/dovecot/dovecot-sql.conf.ext
</pre>
Infine riavviamo Dovecot:
<pre>
# service dovecot restart
</pre>
e verifichiamo dai log che non ci siano errori:
<pre>
# tail -f /var/log/mail.log
... dovecot: master: Dovecot v2.1.7 starting up (core dumps disabled)
</pre>
 
=Collegamento da Postfix a Dovecot=
OK, fin qui è stato tutto bello, però adesso che dovecot è stato istruito a dovere è necessario indicare a postfix come collegarsi a dovecot.<br />
Procediamo con ordine.
 
Ma come vanno trattate queste mail?
Il nostro obiettivo è archiviare le mail sull'hard disk del server; normalmente questo compito è svolto dallo stesso Postfix, che al suo interno ha un piccolo ''mail delivery agent'' (MDA) chiamato ''virtual''. Poichè però abbiamo deciso di utilizzare Dovecot per fornire accesso POP3 e IMAP agli utenti, utilizzeremo anche il suo ''local delivery agent'' (chiamato Dovecot LDA), che è a mio avviso più ricco e funzionale di ''virtual''.
<br/>
Per fare in modo che Postfix utilizzi questo agent dobbiamo aggiungere un servizio in coda al file <code>/etc/postfix/master.cf</code>:
<pre>
dovecot  unix  -      n      n      -      -      pipe
  flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/dovecot-lda -f ${sender} -d ${recipient}
</pre>
'''Nota''': la seconda riga deve essere indentata con degli spazi e non con il TAB.
<br/>
A questo punto non resta che riavviare Postfix:
<pre>
# service postfix restart
</pre>
e fare in modo che utilizzi il servizio appena creato per lo smistamento delle email, modificando il file <code>/etc/postfix/main.cf</code> nella maniera vista in precedenza:
<pre>
# postconf -e virtual_transport=dovecot
# postconf -e dovecot_destination_recipient_limit=1
</pre>
Da adesso in poi Postfix smisterà le email in arrivo al programma di Dovecot <code>/usr/lib/dovecot/deliver</code>.
=Sistemiamo i permessi di Dovecot=
{{Warningbox|Permessi sbagliati sui file di funzionamento di dovecot comportano l'irrimediabile perdita della posta in arrivo}}
''da controllare'': i permessi in ''/var/run/dovecot/'', non mi è ancora chiaro quali debbano essere.
 
Impostiamo le giuste credenziali per il file di configurazione principale:
Impostiamo le giuste credenziali per il file di configurazione principale:
<pre>
<pre>
Riga 144: Riga 210:
</pre>
</pre>


= Test della configurazione ===
= Test della configurazione =
Apriamo un altro terminale e controlliamo i log della posta in tempo reale:
Apriamo un altro terminale e controlliamo i log della posta in tempo reale:
<pre>
<pre>
3 581

contributi

Menu di navigazione