[PostFix] Utilizzare un relay host con SMTP AUTH

Come utilizzare un SMTP che richiede l'autenticazione per fare il relay? [ad esempio smtp.ngi.it]

Visto che ci ho messo 1293 anni a capire come si poteva fare, e finalmente son riuscito a trovare la soluzione, la posto in modo da renderla disponibile, chissà magari qualcuno ne avrà bisogno prima o poi..

Editare main.cf:


nano -w /etc/postfix/main.cf


Cercare la riga "relayhost=xxx.xxx.xxx" e lasciare solo


relayhost = fqdn.del.tuo.relayhost
smtp_sasl_auth_enable=yes
smtp_sasl_password_maps=hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options=


Editare [creare..]il fiel /etc/postfix/sasl_passwd


nano -w /etc/postfix/sasl_password


E scriverci


fqdn.del.tuo.relayhost utenteassword


Ovviamente per sicurezza


chown root:root /etc/postfix/sasl_password
chmod 600 /etc/postfix/sasl_password


dopodichè eseguire


postmap hash:/etc/postfix/sasl_passwd
/etc/init.d/postfix restart


Fatto!
Spero possa essere utile a qualcuno
Ciao!
Ciao, ho eseguito queste operazioni stamattina, mi sembra di aver fatto tutto correttamente ma sicuramente c'è qualcosa che non va.
Sembra che l'autenticazione non vada a buon fine, infatti la posta viene spedita solo ad account su ngi.

il log mostra questo:

Nov 7 13:40:01 localhost postfix/pickup[2324]: BC62B9E60: uid=0 from=
Nov 7 13:40:01 localhost postfix/cleanup[3280]: BC62B9E60: message-id=<[email protected]>
Nov 7 13:40:01 localhost postfix/qmgr[2325]: BC62B9E60: from=, size=309, nrcpt=1 (queue active)
Nov 7 13:40:02 localhost postfix/smtp[3282]: warning: smtp.ngi.it[213.92.5.57] offered AUTH option multiple times
Nov 7 13:40:02 localhost postfix/smtp[3282]: BC62B9E60: to=, relay=smtp.ngi.it[213.92.5.57], delay=1, sta
tus=bounced (host smtp.ngi.it[213.92.5.57] said: 550 Unable to relay for [email protected]. (in reply to RCPT TO command))
Nov 7 13:40:02 localhost postfix/cleanup[3280]: 9F3B79E5F: message-id=<[email protected]>
Nov 7 13:40:02 localhost postfix/qmgr[2325]: 9F3B79E5F: from=<>, size=2043, nrcpt=1 (queue active)
Nov 7 13:40:02 localhost postfix/qmgr[2325]: BC62B9E60: removed
Nov 7 13:40:02 localhost postfix/smtp[3282]: warning: smtp.ngi.it[213.92.5.57] offered AUTH option multiple times
Nov 7 13:40:03 localhost postfix/smtp[3282]: 9F3B79E5F: to=, relay=smtp.ngi.it[213.92.5.57], delay=1, status
=sent (250 ::ffff:81.174.39.29+iGkMo40JcXPR Mail accepted)
Nov 7 13:40:03 localhost postfix/qmgr[2325]: 9F3B79E5F: removed


qualcuno sa spiegarmi il perchè?

Grazie
Hai seguito passo-passo il tutto, incluso la creazione dell'hash del file delle psw?
Se provi ad autenticarti da un client di posta con quelle user/psw, ti lascia effettuare il relaying?
ma soprattutto, ti sei connesso con ngi?
Non è neccessario
L'autenticazione sull'SMTP serve proprio a permetterti di effettuare relaying tramite quel server anche non essendo su un range *trusted*
ops non avevo visto le risposte....

vabbè allora, sono connesso con ngi, infatti il relay su indirizzi ngi lo fa, penso proprio che il problema sia dovuto al fatto che non riesce a portare a termine l'autenticazione e quindi fuori dal dominio ngi non consegna.

se volete posto gli altri file, ho dato per scontato che fossero a posto, infatti con fastweb prima postfix andava, oggi non ho fatto altro che aggiungere le 2 righe e il file sasl_passwd.

ciao

p.s. ho fatto anche la prova sul client, funziona con quei dati.
Vediamo se dandovi tutti i dati ne veniamo a capo

file: main.cf

# See /usr/share/postfix/main.cf.dist for a commented, more complete version

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

myhostname = caladan

alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases

myorigin = /etc/mailname
mydestination = localhost.localdomain, localhost.localdomain, localhost

relayhost = smtp.ngi.it



smtp_sasl_auth_enable=yes
smtp_sasl_password_maps=hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options=

mynetworks = 127.0.0.0/8
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
sender_canonical_maps = hash:/etc/postfix/sender_canonical


file sasl_passwd

ngi.it [email protected]:smtp

(ovviamente al posto di [email protected] ho messo la mia mail [email protected] e la pass giusta (spedisco con thunderbird usando le stesse impostazioni, quindi sono giuste).

inoltre ho il file sender_canonical

root [email protected]


Ovviamente ogni volta che modifico i files rilancio
postmap /percorso/ai/file

e poi riavvio postfix.

Sono connesso con ngi, anche se come dice fusion non è necessario...

sono nelle vostre mani... grazie
Hai fatto

postmap hash:/etc/postfix/sasl_passwd

?
incluso hash: !
Dovrebbe crearti /etc/postfix/sasl_passwd.db
Controlla i permessi di tale file
e restarta postfix

Che distro usi?
ciao fusion, ti ringrazio, ero convinto di aver lanciato per tutti i files il comando corretto postmap hash:/etc/etc/...

mi hai fatto venire il dubbio e l'ho rilanciato per tutti i files modificati.

E magia... funziona... grazie mille!

p.s. per la cronaca uso debian
anche io ho un server di posta : postfix - clamav - spamassasin -> courier-imap -> squirrel mail.

Anche io uso la variabile relayhost.
Pero' non riesco a capire per quale motivo devo perforza appoggiarmi ad un ISP, non e' bypassabile e fare in modo che sia il server stesso a smistare la posta?
Perfetto gianiaz, son contento!

@ Matz
intanto ti direi di cestinare squirrel mail e di usare qualcosa di più buono come horde/imp o roundcube. Unico punto di quest'ultimo project è che lo stanno ancora sviluppando e quindi mancano ancora alcune feature e probabilmente c'è qualceh bug.. ma per il resto IMHO è stupendo, son passato da IMP a Roundcube e mi trovo N volte meglio.

Per quanto riguarda il secondo punto:
è chiaro che puoi lasciare che il tuo stesso server smisti la posta, ma..

Nel caso sia su una DSL/Dialup, potresti avere notevoli problemi con la consegna su certi server *puntigliosi*: alcune ADSL [tiscali ad esempio] sono addirittura listate nella RBL.. non come spam host ma appunto come Dialup/DSL, per quanto tu abbia un IP statico. Il server quindi non accetta la posta.
Altro problema il rDNS, nel mio caso [F5 in ufficio] l'ho fatto modificare e punta a un dominio tipo serverposta.dominio.it, ma nel 99% dei casi è qualcosa tipo

ip-1-2-4-5.provider.it o cose del genere

In questo caso potresti anche avere problemi

Ultimo ma non meno importante, utlizzando un relay host scarichi di molto il tuo server di posta e il tuo traffico, eviti di dover fargli fare il lookup dell'MX server per ogni dominio al quale deve mandare la posta, l'eventuale reinvio in caso di problemi di connessione, etc etc etc...

Personalmente come relay uso l'SMTP di i.net che da un servizio eccellente.

Ciao!


P.S.
Per la cronaca ho ottimi risultati con cyrus + postfix + amavis [spamassasin&clamav] + roundcube
grazie per il consiglio.
per quanto riguarda il relayhost effettivamente non avevo mai pensato alla BL da parte dei vari ISP.
Cmq fra 1-2 settimane dovrebbero finalmente abilitare la linea commerciale in ufficio faro' delle prove.

Grazie e Ciao!