linux user group brescia

immagine del castello

Archivio della mailing list

[LugBS] Maledetto postfix!

marco ghidinelli marcogh a linux.it
Lun 7 Dic 2009 16:48:15 UTC
On sab, dic 05, 2009 at 07:28:26 +0100, Davide Ronchi wrote:
> Dunque.
> 
> Torniamo alla nostra storia dell'MTA leggero. Ho configurato il server di posta in maniera tale da inviare tutta la posta attraverso il server di gmail. Se la posta ha come from l'indirizzo forum a host.com allora la posta viene routata attraverso gmail autenticandosi con un utente particolare x, altrimenti sempre verso gmail ma autenticando un utente y.
> 
> main.cf
> > myhostname = ILMIOFQDN
> > alias_maps = hash:/etc/aliases
> > alias_database = hash:/etc/aliases
> > myorigin = /etc/mailname
> > mydestination = 
> > relayhost = [smtp.gmail.com]:587
> > mynetworks = 127.0.0.0/8
> > mailbox_command = procmail -a "$EXTENSION"
> > mailbox_size_limit = 0
> > recipient_delimiter = +
> > inet_interfaces = all
> > 
> > smtp_use_tls = yes
> > smtp_sender_dependent_authentication = yes
> > sender_dependent_relayhost_maps = hash:/etc/postfix/sender_relay
> > smtp_sasl_auth_enable = yes
> > smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
> > smtp_sasl_security_options = noanonymous
> > smtp_sasl_tls_security_options = noanonymous
> > 
> > tls_random_source = dev:/dev/urandom
> > smtp_tls_scert_verifydepth = 5
> > smtp_tls_CApath=/certs
> > smtp_tls_enforce_peername = no
> > smtp_tls_per_site = hash:/etc/postfix/usar_tls
> 
> sasl_passwd
> > forum a host.com            utentex:passworddellutentex
> > [smtp.gmail.com]:587		utentey:passworddellutentey
> 
> sender_relay
> > forum a host.com	[smtp.gmail.com]:587
> 
> Sullo stesso server ho un'installazione vBulletin che invia mail con l'indirizzo forum a host.com. Questa configurazione, quindi, dovrebbe fare in modo che le mail provenienti da vBulletin venissero routate via gmail con l'utentex, mentre tutte le altre mail che escono dal server vengano routate con l'utente y.
> 
> Il problema è che il tutto non funziona. Ogni volta che io mando una mail usando vBulletin, ecco cosa succede nei log della posta:
> Dec  5 19:16:12 voyager postfix/pickup[1546]: B5B7128F82CC: uid=110 from=<httpd>
> Dec  5 19:16:12 voyager postfix/cleanup[2201]: B5B7128F82CC: message-id=<20091205181612.8c95517da9b4 a forum.host.com>
> Dec  5 19:16:12 voyager postfix/qmgr[1547]: B5B7128F82CC: from=<httpd a ILMIOFQDN>, size=537, nrcpt=1 (queue active)
> Dec  5 19:16:14 voyager postfix/smtp[2203]: B5B7128F82CC: to=<INDIRIZZODIDESTINAZIONE>, relay=smtp.gmail.com[74.125.79.111]:587, delay=1.8, delays=0.04/0.01/0.67/1.1, dsn=2.0.0, status=sent (250 2.0.0 OK 1260036975 10sm6941343eyz.23)
> Dec  5 19:16:14 voyager postfix/qmgr[1547]: B5B7128F82CC: removed
> 
> Cioè, avete capito cosa succede? Postfix rileva come indirizzo from: httpd a ILMIOFQDN, ovvero l'utente locale sotto cui gira il server http, e NON forum a host.com. E infatti, se in sasl_passwd e sender_relay io metto httpd a ILMIOFQDN come indirizzo email, IL ROUTING FUNZIONA CORRETTAMENTE!!!
> 
> Nel mio php.ini ho la seguente linea:
> > sendmail_path = sendmail -t -i
> 
> Ora, l'opzione -t non doveva fare in modo che il comando sendmail prendesse l'indirizzo mittente dal TESTO del messaggio anziché usare l'utente locale come mittente? Perché postfix ignora questa opzione e invece utilizza come mittente l'utente locale del server http???

hai settato il From nella mail() di php, vero?

se scazza sul 'from' (senza : ) allora puoi lavorare con il 'canonical'
map:

---- from main.cf ----
sender_canonical_maps = hash:/etc/postfix/canonical
----------------------

-----  from canonical.maps -----
marcogh a ehlo.cyberdyne.local    marcogh a linux.it
------------------------------

p.s. man 5 canonical




Maggiori informazioni sulla lista Lug