I come Informatica - I como Informática - I for Information Technology
PORTALE
PORTAL
PORTAL
FORUM
FORO
FORUM
Informatica
Informática
Information Technology
Stefano Pederzani
Consulente informatico
ARTE
Homepages
Curricula
Curricula
Resumes
Pubblicità
Publicidad
Advertisement




IT EXIM server di posta

Tutto ciò che riguarda Linux sulle macchine server o i servizi Linux in generale.
Todo lo que interesa Linux sobre las máquinas servidoras o los servicios Linux en general.
All about Linux server machines or Linux services in general.

IT EXIM server di posta

Postby stefanopederzani » Sat Oct 06, 2012 10:40 am

Mi sono ritrovato questo server di posta installando il software per il forum con apt-get. Sapete che PhpBB manda una mail per l'attivazione del login, come per la maggior parte delle cose che si fanno sul web.
Dovendo usarlo anche con altre applicazioni web, mi ci sono scornato non poco. OK, mi sono armato di buona volontà, sapendo che in genere i mail server hano sempre qualche paturnia, ma non eccessivamente, visto che dovevo soltanto spedire delle mail di attivazione per le mie applicazioni.
Le mail partivano, ma non si riusciva a mettere un mittente ("from") diverso da quello reale, e quindi risultava impossibile mandare una mail decente a cui poter rispondere. Naturalmente la cosa non è indispensabile, perché i messaggi di attivazione possono contenere un link ad una applicazione web, ma mi sono impuntato, perché è mio preciso diritto indicare un mittente esistente, anche per correttezza. A maggior ragione visto che ho configurato il mail server per non accettare mail dall'esterno.
Amministratore di sistemi Unix e DBA dal 1995
http://pepe.mi.bo.it/SITO_Curricula/CV_ ... efano.html
User avatar
stefanopederzani
 
Posts: 178
Joined: Tue Sep 18, 2012 12:43 am
Location: Bologna

Re: EXIM server di posta

Postby stefanopederzani » Sat Oct 06, 2012 12:11 pm

Ho provato quindi le varie possibilità per impostare il "from" con questo Exim su Ubuntu, e nel contempo provavo a fare la stessa cosa con Mailx su Slackware. Slackware è sul mio PC, dove non ho attivato un mailserver, per cui lì bisogna anche impostare l'SMTP di uscita, per cui avevo appena provato tali parametri perché in certi casi l'impostazione è analoga.
Entrambi i software hanno un comando "mail" per spedire, quindi le linee di comando si assomigliano, ma NON sono uguali.
Vediamo la lista dei tentativi (non in ordine cronologico):
1) Mettere una linea "From: indirizzo@mail". Leggasi "from" con la F maiuscola duepunti uno spazio indirizzo email.
E' un metodo del classico sendmail, in uso sugli Unix, che accetta queste impostazioni all'inizio del message body. Con Exim non funziona viene la linea "From:..." dentro al body. Con il mailx di Slackware non ho provato perché funzionavano tutti gli altri.
2) Mettere il parametro -r indirizzo@mail. Funziona con mailx ma non con exim: non riconosce il parametro.
3) Scrivere un ~/.mailrc con la riga "set from=indirizzo@mail". Funziona con mailx, infatti lo utilizzo per metterci ance l'smtp: "set smtp=smtp.myprovider". Ma non con exim, che però lascia il dubbio sui tentativi successivi.
4) Dare a linea di comando il parametro -S (maiuscola) ogni volta che si fa un "set" come quello di ~/.mailrc, quindi diventa "-S from=indirizzo@mail". Come sopra, sono la stessa cosa per il parser. Exim non lo riconosce.
Last edited by stefanopederzani on Sat Oct 06, 2012 12:24 pm, edited 1 time in total.
Amministratore di sistemi Unix e DBA dal 1995
http://pepe.mi.bo.it/SITO_Curricula/CV_ ... efano.html
User avatar
stefanopederzani
 
Posts: 178
Joined: Tue Sep 18, 2012 12:43 am
Location: Bologna

Re: EXIM server di posta

Postby stefanopederzani » Sat Oct 06, 2012 12:22 pm

Il man di "mail" che manda ad "exim" è piuttosto criptico. Dice che dopo un paio di parametri tipo "-s subject" si deve mettere una doppia lineetta da sola e poi introdurre i parametri di sendmail. Più sotto rimanda alla sezione 8 del manuale per sendmail.
"Ah", mi dico, "perché c'è sendmail"? Ovviamente no. Quando si ha il vero sendmail installato, esiste proprio il comando "sendmail" che permette di fare cose un po' più avanzate che il comando "mail", e mi riferisco sempre alla spedizione (non al server).
Ad un certo punto ho letto su web che con Exim per poter cambiare il "from" bisogna essere "trusted users". Quindi sarebbe il mio stesso SMTP che riconosce il from impostato ma me lo rifiuta, negandomi un'azione chiamata "rewrite" degli headers? Riguarda solo il caso in cui ero riuscito a dirglielo in qualche modo?
Parliamo un attimo di quel folle che ha inventato questo sistema di configurazione del server Exim. In /etc/exim4/ abbiamo la configurazione di exim4:
Code: Select all
ll /etc/exim4/
total 100
drwxr-xr-x  3 root root         4096 2012-10-05 15:08 ./
drwxr-xr-x 89 root root         4096 2012-09-16 06:38 ../
drwxr-xr-x  9 root root         4096 2012-09-15 21:17 conf.d/
-rw-r--r--  1 root root        76575 2011-05-30 22:05 exim4.conf.template
-rw-r-----  1 root Debian-exim   204 2011-05-30 22:05 passwd.client
-rw-r--r--  1 root root         1053 2012-09-16 07:15 update-exim4.conf.conf

Ho copiato il templato su exim4.conf e aggiunto "root" tra i trusted users.
Ho eseguito /etc/init.d/exim4 reload e mi ha detto OK
Risultato non spediva più nulla. Inoltra i messaggi non tornavano indietro nella casella di root (impostato per non ricevere, ricordate?), così i messaggi vanno nel "buco nero". Wow.
Ovviamente rimuovo il .conf e restarto. Verifico che spedisca, ok.
Per configurare i trusted users occorre cercare con pazienza in una delle sottodirectories di conf.d un cavolo di file che le contenga, e con grep trovo:
main/02_exim4-config_options:trusted_users = MAIN_TRUSTED_USERS
allora greppo MAIN_TRUSTED_USERS:
main/02_exim4-config_options:MAIN_TRUSTED_USERS = uucp
e qui aggiungo root:
MAIN_TRUSTED_USERS = uucp:root
poi bisogna lanciare il comando:
update-exim4.conf
POI si può rilanciare il server o fargli fare la reload, ma a quel punto ho preferito restart.
Risultato: continua a non andare il from come prima.
Amministratore di sistemi Unix e DBA dal 1995
http://pepe.mi.bo.it/SITO_Curricula/CV_ ... efano.html
User avatar
stefanopederzani
 
Posts: 178
Joined: Tue Sep 18, 2012 12:43 am
Location: Bologna

Re: EXIM server di posta

Postby stefanopederzani » Sat Oct 06, 2012 12:41 pm

Bene, continuo a cercare su Google. Ovviamente mi càpitano in mezzo diverse pagine di forum dove le persone utilizzano altri bellissimi software di spedizione molto più semplici, mailx (come quello di Slackware" heirloom-mailx, nail, e altro. Sono quasi tentato, quando la mia attenzione è attirata da un post dove un utente asserisce che con exim il from funziona!
Sembra tutta gente preparata, per cui la prima cosa che ho pensato è che utilizzassero una versione non bacata. Invece sbagliavo... Sono risalito su alle domande e risposte.
C'è questo che risponde che "sgrida" quello che fa la domanda perché dice che non legge il man. Interessante: anch'io l'ho letto e non ho trovato niente. Ripete questa cosa della doppia lineetta che introduce dei parametri da mandare al sendmail (che sendmail non è) da usare DOPO i parametri da dare a "mail" come programma per inviare. In effetti, ripensandoci è una cosa un po' folle. Sarebbe come se io, invece che andare ad imbucare una semplice lettera con dietro scritto il mio mittente, mandassi la lettera dentro una seconda busta, indirizzata all'ufficio postale, con un messaggio del tipo: "potrebbe per favore scrivermi questo mittente sulla busta della lettera prima di inviarla? Sa, io non posso farlo." :o
Bene, è esattamente così. La linea di comando è:
mail -s "oggetto" destina@tario -- -f mitt@ente
Il rispondente si arrabbia perché dice che nel manuale c'è scritto.
OK, è vero, ma è nascosto così bene che ci vuole veramente una caccia al tesoro per trovarlo.
Facendo "man sendmail" infatti si ottengono pagine e pagine di quei parametri che servono al finto sendmail di girare come server. In mezzo a questi, verso la fine c'è questo maledetto "-f" la cui spiegazione NON CONTIENE LA PAROLA "from".
Io dico che è un matto quello che ha fatto 'sto software e un folle chi ha scritto la documentazione.
L'unico dubbio che mi rimane è sono la stessa persona?

Poi rimangono questioni insolute. E tutte le altre cose, tipo "Reply-to:" e tutti gli altri header che non vengono riconosciuti?
Mi sento di sconsigliare EXIM a chiunque. Se ve lo ritrovate, vedete cosa dovete fare. Se volete spedire come si deve, installatevi un altro client. Se volete gestire un server di posta per bene, installatevi un altro server.
Ciao ciao
Amministratore di sistemi Unix e DBA dal 1995
http://pepe.mi.bo.it/SITO_Curricula/CV_ ... efano.html
User avatar
stefanopederzani
 
Posts: 178
Joined: Tue Sep 18, 2012 12:43 am
Location: Bologna

Re: EXIM server di posta

Postby stefanopederzani » Sat Nov 23, 2013 6:14 am

E poi c'è da aggiungere questa bellissima cosa. Quando un messaggio mail non parte perché ci sono errori, magari da parte dell'SMTP che deve ricevere, EXIM tace.
Nessuna traccia dell'errore se non non nel mainlog, dove uno va a vedere quando SA che doveva arrivare un messaggio, e si chiede perché non sia arrivato. Ma se vi aspettate che sia Exim ad avvertirvi che qualcosa non va, potete aspettare tutta la vita.
:x
Amministratore di sistemi Unix e DBA dal 1995
http://pepe.mi.bo.it/SITO_Curricula/CV_ ... efano.html
User avatar
stefanopederzani
 
Posts: 178
Joined: Tue Sep 18, 2012 12:43 am
Location: Bologna


Return to Server Linux - Servidores Linux - Linux servers



Who is online

Users browsing this forum: No registered users and 9 guests





CV di Stefano Pederzani




I come Informatica - I como Informática - I for Information Technology
Vai al PORTALE - Ir a el PORTAL - Go to PORTAL
Stefano Pederzani
Consulenze informatiche Bologna
Automatic barriers and access control
Barriere stradali e controllo accessi
MMS IMPIANTI
Cablaggio strutturato - telefonia
Elettricità - climatizzazione