User Tools

Site Tools


doc:appunti:linux:sa:exim

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
doc:appunti:linux:sa:exim [2013/05/29 15:29] – [Cifratura SSL su porta TCP/465] niccolodoc:appunti:linux:sa:exim [2019/01/21 12:08] (current) – [Smarthost] niccolo
Line 90: Line 90:
 Per le versioni più vecchie di Exim (es. la 3?) sostituire le variabili consigliate **$auth1**, **$auth2** e **$auth3** con le obsolete **$1**, **$2** e **$3**. Vedere anche questa pagina per un [[authdaemon_problem|problema del Courier authdaemon]]. Per le versioni più vecchie di Exim (es. la 3?) sostituire le variabili consigliate **$auth1**, **$auth2** e **$auth3** con le obsolete **$1**, **$2** e **$3**. Vedere anche questa pagina per un [[authdaemon_problem|problema del Courier authdaemon]].
  
-Attenzione che in questo caso Exim deve accedere al socket ''**/var/run/courier/authdaemon/socket**'', rispetto ad una installazione Debian standard ci sono i seguenti permessi che non bastano:+Attenzione che in questo caso Exim deve accedere al socket ''**/var/run/courier/authdaemon/socket**'', rispetto ad una installazione Debian 8 (Jessie) standard ci sono i seguenti permessi che impediscono ad Exim di accedere al socket:
  
 <code> <code>
-drwxrwx--- 3 daemon daemon 1024 May  9 14:40 /var/run/courier/ +drwxr-x--- 2 daemon daemon 100 Mar  8 15:38 /var/run/courier/authdaemon/
-drwxrwx--- 2 daemon daemon 1024 May  9 14:40 /var/run/courier/authdaemon/+
 </code> </code>
  
-Sistemati in questo modo, speriamo che non sia troppo permissivo: +La soluzione suggerita è aggiungere l'utente **Debian-exim** al gruppo **daemon**. Verificare che la directory ''/var/run/courier/'' abbia mode 0755, nelle precedenti release era 0750, non sufficiente.
- +
-<code> +
-chmod 755 /var/run/courier +
-chgrp Debian-exim /var/run/courier/authdaemon +
-</code> +
- +
-Anche in una installazione Debian più recente (Lenny) **non funziona** tutto alla prima, perché i permessi sono: +
- +
-<code> +
-drwxr-xr-x 3 daemon daemon 4096 2006-07-06 16:40 /var/run/courier/ +
-drwxr-x--- 2 daemon daemon 4096 2006-07-06 16:40 /var/run/courier/authdaemon/ +
-</code> +
- +
-Si può cambiare il mode della directory ''authdaemon'' a **0755** (forse la via migliore) oppure aggiungere l'utente **Debian-exim** al gruppo **daemon**.+
  
 Per abilitare l'autenticazione in chiaro (senza TLS) basta definire la macro in ''**conf.d/main/00_local**'': Per abilitare l'autenticazione in chiaro (senza TLS) basta definire la macro in ''**conf.d/main/00_local**'':
Line 151: Line 136:
  
 Questo metodo sarebbe obsoleto rispetto al TLS su porta TCP/25 (con uso del comando STARTTLS), tuttavia la pessima abitudine di alcuni provider di filtrare la porta 25 in uscita, lo rende ancora interessante. Questo metodo sarebbe obsoleto rispetto al TLS su porta TCP/25 (con uso del comando STARTTLS), tuttavia la pessima abitudine di alcuni provider di filtrare la porta 25 in uscita, lo rende ancora interessante.
 +
 +Anzitutto si deve dire al demone di stare in ascolto sulle due porte: 25 e 465, in **''/etc/default/exim4''** si mette (l'opzione **''-oP''** è necessaria quando si specifica l'opzione **''-oX''**):
 +
 +<file>
 +SMTPLISTENEROPTIONS='-oX 465:25 -oP /var/run/exim4/exim.pid'
 +</file>
 +
 +Quindi si deve indicare che sulla porta 465 si vuole usare la cifratura SSL (non il comando STARTTLS come si fa sulla tradizionale porta 25), in **''/etc/exim4/conf.d/main/03_exim4-config_tlsoptions''** si mette:
 +
 +<file>
 +tls_on_connect_ports=465
 +</file>
 ===== Utilizzo dei system filter ===== ===== Utilizzo dei system filter =====
  
Line 315: Line 312:
 dc_smarthost='10.0.1.205' dc_smarthost='10.0.1.205'
 </file> </file>
 +
 +Se non è necessario gestire posta localmente, è più indicata la configurazione //satellite//. È ovviamente possibile indicare uno hostname e una porta TCP (ad esempio la //submission// invece che la //smtp//):
 +
 +<file>
 +dc_eximconfig_configtype='satellite'
 +dc_smarthost='mail.rigacci.org::587'
 +</file>
 +
  
 Dopo la modifica fare un reload di Exim e controllare che il file **''/var/lib/exim4/config.autogenerated''** contenga: Dopo la modifica fare un reload di Exim e controllare che il file **''/var/lib/exim4/config.autogenerated''** contenga:
Line 341: Line 346:
   host mail.rigacci.org [78.47.114.234] MX=10   host mail.rigacci.org [78.47.114.234] MX=10
 </code> </code>
 +
 +Se lo **smarthost richiede autenticazione**, è possibile aggiungere le credenziali nel file **/etc/exim4/passwd.client**:
 +
 +<file>
 +smarthost.domain.org:login:password
 +</file>
 +
 +È necessario proteggere il file con permessi **root:Debian-exim** e mode **0640**.
 +
 +Se un messaggio non è partito (è rimasto in coda, il suo ID è visibile con **mailq**), è possibile chiedere un nuovo invio e tracciare la sessione con:
 +
 +<code>
 +exim -v -M 1glXAU-0000Ig-1n
 +</code>
 +
 +In questo modo è possibile verificare che lo smarthost annunci correttamente l'**AUTH PLAIN LOGIN**, magari solo dopo lo **STARTTLS**, e che Exim effettui tutta la sessione correttamente.
 ===== Smarthost per domini privati ===== ===== Smarthost per domini privati =====
  
Line 385: Line 406:
 Fare attenzione alle informazioni **[[wp>Sender_Policy_Framework|SPF]]**: il messaggio potrebbe essere rifiutato se il dominio email dichiara che gli host di origine dei messaggi sono altri. Fare attenzione alle informazioni **[[wp>Sender_Policy_Framework|SPF]]**: il messaggio potrebbe essere rifiutato se il dominio email dichiara che gli host di origine dei messaggi sono altri.
  
 +Il metodo visto sopra consente di riscrivere solo gli **indirizzi locali** (cioè senza la parte **''@dominio''**). Per riscrivere anche gli indirizzi in messaggi ricevuti via SMTP si può aggiungere un pezzetto di configurazione, in Debian basta creare un file **''/etc/exim4/conf.d/rewrite/32_local-rewriting''** con qualcosa del genere:
 +
 +<file>
 +### rewrite/32_local-rewriting
 +#################################
 +
 +# Rewrite the headers: From, Sender, Reply-To and the envelope From
 +# Test it with:
 +#     exim -brw NAS@192.168.1.254
 +
 +NAS@192.168.1.254  info@domain.org  fsrF
 +</file>
doc/appunti/linux/sa/exim.1369834162.txt.gz · Last modified: 2013/05/29 15:29 by niccolo