Internet Service Provider con Debian: differenze tra le versioni

m
modificati tag <tt> con <code> (Revisione Wiki task #47)
mNessun oggetto della modifica
m (modificati tag <tt> con <code> (Revisione Wiki task #47))
Riga 516: Riga 516:
Siamo pronti per iniziare. I files di configurazione di Dovecot si trovano in <code>/etc/dovecot</code>.
Siamo pronti per iniziare. I files di configurazione di Dovecot si trovano in <code>/etc/dovecot</code>.
<br/>
<br/>
Fino a Debian Squeeze la configurazione di Dovecot era tutta contenuta in due file; da Debian Wheezy la configurazione è stata spezzata in una trentina di file, contenuti tutti nella directory <tt>/etc/dovecot/conf.d</tt>. Il file di configurazione principale <tt>/etc/dovecot/dovecot.conf</tt> non richiede alcuna modifica e attraverso la direttiva
Fino a Debian Squeeze la configurazione di Dovecot era tutta contenuta in due file; da Debian Wheezy la configurazione è stata spezzata in una trentina di file, contenuti tutti nella directory <code>/etc/dovecot/conf.d</code>. Il file di configurazione principale <code>/etc/dovecot/dovecot.conf</code> non richiede alcuna modifica e attraverso la direttiva
<pre>
<pre>
!include conf.d/*.conf
!include conf.d/*.conf
</pre>
</pre>
carica tutti i file presenti in <tt>/etc/dovecot/conf.d/</tt> che terminano in ".conf" in sequenza. Quindi "10-auth.conf" sarà caricato per primo e "90-quota.conf" per ultimo. Il grosso vantaggio di questa situazione è che potremo modificare o rimpiazzare parti della configurazione senza sovrascriverla interamente; lo svantaggio è che la migrazione da una versione precedente di Dovecot può diventare un'operazione difficoltosa.
carica tutti i file presenti in <code>/etc/dovecot/conf.d/</code> che terminano in ".conf" in sequenza. Quindi "10-auth.conf" sarà caricato per primo e "90-quota.conf" per ultimo. Il grosso vantaggio di questa situazione è che potremo modificare o rimpiazzare parti della configurazione senza sovrascriverla interamente; lo svantaggio è che la migrazione da una versione precedente di Dovecot può diventare un'operazione difficoltosa.


==== Fino a Debian Squeeze ====
==== Fino a Debian Squeeze ====
Riga 704: Riga 704:
mail_location = maildir:/var/vmail/%d/%n/Maildir
mail_location = maildir:/var/vmail/%d/%n/Maildir
</pre>
</pre>
Questa sarà la directory dove Dovecot cercherà le email di ogni specifico utente. Ad esempio l'utente <tt> john@example.org</tt> avrà le sue email archiviate in <tt>/var/vmail/example.org/john/Maildir</tt>.
Questa sarà la directory dove Dovecot cercherà le email di ogni specifico utente. Ad esempio l'utente <code> john@example.org</code> avrà le sue email archiviate in <code>/var/vmail/example.org/john/Maildir</code>.
<br/>
<br/>
Cambiamo la direttiva ''auth_socket_path'' in
Cambiamo la direttiva ''auth_socket_path'' in
Riga 745: Riga 745:


===== /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 <code> /etc/dovecot/conf.d/auth-sql.conf.ext</code> e dice a Dovecot come accedere al database MySQL e dove trovare le informazioni sugli account. Accertiamoci che contenga le linee:
<pre>
<pre>
driver = mysql
driver = mysql
Riga 1 066: Riga 1 066:
** <code>permit_sasl_authenticated</code>: l'utente si è autenticato, oppure
** <code>permit_sasl_authenticated</code>: l'utente si è autenticato, oppure
** <code>reject_unauth_destination</code>: la mail è destinata a un utente di un nostro dominio virtuale
** <code>reject_unauth_destination</code>: la mail è destinata a un utente di un nostro dominio virtuale
NOTA: la direttiva <tt>postconf -e smtpd_tls_auth_only=yes</tt> è da utilizzarsi '''solo''' se vogliamo che i nostri utenti siano costretti a utilizzare SSL per scaricare e inviare la loro posta.
NOTA: la direttiva <code>postconf -e smtpd_tls_auth_only=yes</code> è da utilizzarsi '''solo''' se vogliamo che i nostri utenti siano costretti a utilizzare SSL per scaricare e inviare la loro posta.
<br/>
<br/>
<br/>
<br/>
Riga 1 179: Riga 1 179:
# sa-update && service spamassassin restart
# sa-update && service spamassassin restart
</pre>
</pre>
Controlliamo che il servizio di aggiornamento automatico si sia abilitato, verificando che in <tt>/etc/default/spamassassin</tt> ci sia la riga:
Controlliamo che il servizio di aggiornamento automatico si sia abilitato, verificando che in <code>/etc/default/spamassassin</code> ci sia la riga:
<pre>
<pre>
CRON=1
CRON=1
Riga 1 400: Riga 1 400:
</pre>
</pre>


Tra le altre righe in <tt>/var/log/mail.log</tt> dovremmo trovare una cosa del genere:
Tra le altre righe in <code>/var/log/mail.log</code> dovremmo trovare una cosa del genere:
<pre>
<pre>
29 23:16:23 sirius amavis[4558]: (04558-02) Blocked INFECTED (ClamAV-Test-File) {DiscardedOutbound,Quarantined}, LOCAL [::1]:44226 [::1] <root@mailserver.example.org> -> <john@example.org>, quarantine: C/virus-ClS0k87Qzm4Q, Queue-ID: 6608ED6B, Message-ID: <20131029221623.6608ED6B@sirius.localdomain>, mail_id: ClS0k87Qzm4Q, Hits: -, size: 1547, 128 ms
29 23:16:23 sirius amavis[4558]: (04558-02) Blocked INFECTED (ClamAV-Test-File) {DiscardedOutbound,Quarantined}, LOCAL [::1]:44226 [::1] <root@mailserver.example.org> -> <john@example.org>, quarantine: C/virus-ClS0k87Qzm4Q, Queue-ID: 6608ED6B, Message-ID: <20131029221623.6608ED6B@sirius.localdomain>, mail_id: ClS0k87Qzm4Q, Hits: -, size: 1547, 128 ms
Riga 1 406: Riga 1 406:
segno che ClamAV è intervenuto correttamente, bloccando l'email infetta.
segno che ClamAV è intervenuto correttamente, bloccando l'email infetta.
<br/>
<br/>
La mail infetta è stata spostata in <tt>/var/lib/amavis/virusmails/C/virus-ClS0k87Qzm4Q</tt> per essere eventualmente analizzata.
La mail infetta è stata spostata in <code>/var/lib/amavis/virusmails/C/virus-ClS0k87Qzm4Q</code> per essere eventualmente analizzata.


<br/>
<br/>
Riga 2 389: Riga 2 389:


== Gestire una Mailing List ==
== Gestire una Mailing List ==
Nel caso volessimo installare anche un servizio per la gestione di mailing list, possiamo appoggiarci a <tt>Mailman</tt>, probabilmente il più diffuso mailing list manager open-source.
Nel caso volessimo installare anche un servizio per la gestione di mailing list, possiamo appoggiarci a <code>Mailman</code>, probabilmente il più diffuso mailing list manager open-source.
<br/>
<br/>
Configureremo un virtual host con hostname <tt>lists.example.com</tt> in cui installeremo Mailman. <tt>lists.example.com</tt> sarà anche la parte destra dell'indirizzo delle mailing list che creeremo in Mailman, quindi ogni mailing list avrà un indirizzo del tipo <tt><nome_lista>@lists.example.com</tt>.
Configureremo un virtual host con hostname <code>lists.example.com</code> in cui installeremo Mailman. <code>lists.example.com</code> sarà anche la parte destra dell'indirizzo delle mailing list che creeremo in Mailman, quindi ogni mailing list avrà un indirizzo del tipo <code><nome_lista>@lists.example.com</code>.


=== Installazione di Mailman ===
=== Installazione di Mailman ===
Riga 2 452: Riga 2 452:
</VirtualHost>
</VirtualHost>
</pre>
</pre>
L'ultima direttiva <tt>ScriptAlias / /usr/lib/cgi-bin/mailman/listinfo</tt> è opzionale; ha senso se non abbiamo nessun file index nella root del virtual host e vogliamo che digitando <tt>http://lists.example.com/</tt> si venga diretti automaticamente verso <tt>http://lists.example.com/listinfo</tt>.
L'ultima direttiva <code>ScriptAlias / /usr/lib/cgi-bin/mailman/listinfo</code> è opzionale; ha senso se non abbiamo nessun file index nella root del virtual host e vogliamo che digitando <code>http://lists.example.com/</code> si venga diretti automaticamente verso <code>http://lists.example.com/listinfo</code>.
<br/>
<br/>
Quindi creiamo la document root <tt>/var/www/lists</tt>, abilitiamo il nuovo Virtual Host e riavviamo Apache:
Quindi creiamo la document root <code>/var/www/lists</code>, abilitiamo il nuovo Virtual Host e riavviamo Apache:
<pre>
<pre>
# mkdir /var/www/lists
# mkdir /var/www/lists
Riga 2 460: Riga 2 460:
# /etc/init.d/apache2 restart
# /etc/init.d/apache2 restart
</pre>
</pre>
Dato che stiamo usando un Virtual Host, dobbiamo sistemare alcune variabili nella configurazione di Mailman in <tt>/etc/mailman/mm_cfg.py</tt>:
Dato che stiamo usando un Virtual Host, dobbiamo sistemare alcune variabili nella configurazione di Mailman in <code>/etc/mailman/mm_cfg.py</code>:
<pre>
<pre>
# nano /etc/mailman/mm_cfg.py
# nano /etc/mailman/mm_cfg.py
Riga 2 492: Riga 2 492:
[...]
[...]
</pre>
</pre>
Ora dobbiamo associare il dominio <tt>lists.example.com</tt> al corretto ''transport'' <tt>mailman:</tt>. Questa operazione è possibile in diversi modi: nel nostro setup non abbiamo configurato i transport di Postfix all'interno del database MySQL degli utenti virtuali, quindi procederemo con la configurazione attraverso un file di testo.
Ora dobbiamo associare il dominio <code>lists.example.com</code> al corretto ''transport'' <code>mailman:</code>. Questa operazione è possibile in diversi modi: nel nostro setup non abbiamo configurato i transport di Postfix all'interno del database MySQL degli utenti virtuali, quindi procederemo con la configurazione attraverso un file di testo.
<br/>
<br/>
Iniziamo con introdurre la direttiva seguente nella configurazione di Postfix:
Iniziamo con introdurre la direttiva seguente nella configurazione di Postfix:
Riga 2 516: Riga 2 516:


=== Creazione della prima lista ===
=== Creazione della prima lista ===
Prima di avviare Mailman, è necessario creare una lista chiamata <tt>mailman</tt>; è obbligatoria, senza di questa Mailman non partirà:
Prima di avviare Mailman, è necessario creare una lista chiamata <code>mailman</code>; è obbligatoria, senza di questa Mailman non partirà:
<pre>
<pre>
# newlist --urlhost=lists.example.com --emailhost=lists.example.com mailman
# newlist --urlhost=lists.example.com --emailhost=lists.example.com mailman
</pre>
</pre>
Solitamente gli switch <tt>--urlhost</tt> e <tt>--emailhost</tt> non sono necessari, dal momento che abbiamo già configurato il file <tt>/etc/mailman/mm_cfg.py</tt>, ma per sicurezza sono solito indicarli esplicitamente.
Solitamente gli switch <code>--urlhost</code> e <code>--emailhost</code> non sono necessari, dal momento che abbiamo già configurato il file <code>/etc/mailman/mm_cfg.py</code>, ma per sicurezza sono solito indicarli esplicitamente.
<br/>
<br/>
Dovremo rispondere ad alcune domande:
Dovremo rispondere ad alcune domande:
Riga 2 527: Riga 2 527:
Initial mailman password: <-- La password per amministrare la lista
Initial mailman password: <-- La password per amministrare la lista
</pre>
</pre>
Prima di poter utilizzare la lista dovremo modificare il file <tt>/etc/aliases</tt> come indicato da Mailman, cioè aggiungendo le seguenti linee:
Prima di poter utilizzare la lista dovremo modificare il file <code>/etc/aliases</code> come indicato da Mailman, cioè aggiungendo le seguenti linee:
<pre>
<pre>
## mailman mailing list
## mailman mailing list
Riga 2 545: Riga 2 545:
Hit enter to notify mailman owner... <-- ENTER
Hit enter to notify mailman owner... <-- ENTER
</pre>
</pre>
Apriamo quindi <tt>/etc/aliases</tt> e modifichiamolo come suggerito:
Apriamo quindi <code>/etc/aliases</code> e modifichiamolo come suggerito:
<pre>
<pre>
# nano /etc/aliases
# nano /etc/aliases
3 581

contributi