Visualizzazione post con etichetta postfix. Mostra tutti i post
Visualizzazione post con etichetta postfix. Mostra tutti i post

giovedì 9 ottobre 2014

ispconfig3: disabilitare filtri antivirus e antispam

vi /etc/postfix/main.cf

Commentare le due linee:

content_filter = amavis:[127.0.0.1]:10024
receive_override_options = no_address_mappings

che diventano quindi:

# content_filter = amavis:[127.0.0.1]:10024
# receive_override_options = no_address_mappings

Far ripartire postfix:

/etc/init.d/postfix restart

Rimettere in coda le eventuali mail in sospeso:

postsuper -r ALL

(questo ultimo comando serve ad evitare l'errore "postfix/qmgr[xxxx]: warning: connect to transport private/amavis: Connection refused"

Disabilitare servizi antispam e antivirus:

 /etc/init.d/clamav-daemon stop
/etc/init.d/clamav-freshclam stop
/etc/init.d/amavis stop

Dopo aver verificato che tutto funzioni corretamente, disabilitare l'avvio automatico al boot dei servizi antispam e antivirus:

update-rc.d -f clamav-daemon remove
update-rc.d -f clamav-freshclam remove
update-rc.d -f amavis remove

mercoledì 30 aprile 2014

Postfix: warning: hostname localhost does not resolve to address ::1: No address associated with hostname

Per eliminare il warning, nel file /etc/hosts sostituire la riga:
::1     localhost ip6-localhost ip6-loopback
con la riga:
::1     localhost6 ip6-localhost ip6-loopback

mercoledì 30 ottobre 2013

postfix: attivare debug connessione con un mail server

Se vogliamo verificare come mai il mail server del dominio dominio.ext rifiuta le email dal nostro server possiamo attivare il debug specifico per quel dominio:
postconf -e debug_peer_list=dominio.ext
postconf -e debug_peer_level=3
postfix reload

lunedì 26 aprile 2010

Postfix e relay: varie ed eventuali

Vediamo qualche trucco per risolvere alcune situazioni di relay con postfix:

1. Come configurare postfix per usare un relay host (smarthost) remoto
2. Consentire a postfix di accettare posta in relay da ip address specifici.
3. Come ritrasmettere (relay) mail per domini specifici (ad esempio quelli locali)
4. Come configurare i domini virtuali in postfix

 
1. Come configurare postfix per usare un relay host (smarthost) remoto

Ipotizziamo che usiate Linux e il vostro provider sta filtrando il traffico sulla porta 25, impedendoti di fatto di spedire la posta direttamente dalla vostra macchina.
L'unica possibilita' in questi casi e' configurare il vostro mailserver per girare tutta la vostra posta in uscita attraverso il server del provider.
Con postfix questo e' molto semplice.

in /etc/postfix/main.cf, settate la variabile:
relayhost = smtp.yourisp.com
poi rilanciate postfix:
/etc/init.d/postfix restart
2. Consentire a postfix di accettare posta in relay da ip address specifici.

Per default, postfix consente il relay (ricezione e reinvio verso un destinatario remoto) anonimo solo ai computer della proria rete. Potete aggiungerer uno o piu' IP address che dopo il riavvio di postfix verranno considerati come IP "virtuosi" da cui puo' essere accettata posta in relay.

In /etc/postfix/main.cf cambiare:
mynetworks = 127.0.0.0/8
in
mynetworks = 127.0.0.0/8, 192.168.0.1/24, 62.35.x.x/30, x.x.x.x
 Ovvero una lista di ip address (sia sottoreti che singoli host) separati da virgole. 


3. Come ritrasmettere (relay) mail per domini specifici (ad esempio quelli locali)
 
Potete utilizzare il file /etc/postfix/transport con il seguente formato

somedomain.com     smtp:[10.0.0.1]:25
otherdomain.com    smtp:10.0.0.2:25 







ovvero:
dominio_per_cui_fare_relay    smtp:ip_server_remoto:porta








La versione con l'IP address racchiuso tra [] disabilita la verifica del record MX relativa al dominio in questione.

N.B. Verificare che in /etc/postfix/main.cf ci sia la riga seguente:
transport_maps = hash:/etc/postfix/transport
N.B. dopo ogni modifica al file /etc/postfix/transport lanciare il comando seguente:
postmap hash:/etc/postfix/transport


4. Come configurare i domini virtuali in postfix

/etc/postfix/virtual e' un file di testo dove specificare i domini e gli utenti per cui accettare le email. Ogni dominio virtuale dovrebbe cominciare con una singola linea contenente il nome del dominio.
Le righe seguenti definiscono gli indirizzi del dominio da gestire.
Le mail saranno consegnate agli utenti locali indicati sulla destra (come nell'esempio seguente). La clausola @nomedominio consente di recapitare tutte le altre mail all'utente indicato (catchall).
Potete gestire piu' di un dominio in questo file, basta ripeterne la struttura mostrata qui sotto:
dominio.com        this-text-is-ignored
postmaster@dominio.com     postmaster
address1@dominio.com     utentelocale1
address2@dominio.com     utentelocale2
@dominio.com        utentelocale1
This e-mail address is being protected from spambots. You need JavaScript enabled to view it This e-mail address is being protected from spambots. You need JavaScript enabled to view it This e-mail address is being protected from spambots. You need JavaScript enabled to view it Dovete dire a postfix dove cercare queste mappature per gli alias virtuali. La direttiva corretta si trova nel file /etc/postfix/main.cf e dice a postfix di usare la versione hash del file appena creato. Il file hash non viene creato  finche' non lanciate il comando "postmap virtual" come vedremo piu' avanti.

Il /etc/postfix/main.cf deve contenere la seguente riga
virtual_alias_maps = hash:/etc/postfix/virtual
Avendo modificato il file main.cf, dovete riavviare il demone postfix. Il secondo comando aggiorna la mappatura degli alias virtuali. Dovete rilanciare il comando postmap ogni volta che modificate il file /etc/postfix/virtual.
postfix reload
postmap /etc/postfix/virtual
Ora provate a recapitare una mail agli indirizzi del dominio virtuale. Se ci fossero problemi, verificate i log relativi al server di posta. e controllate che i due comandi precedenti siano stati eseguiti.

domenica 7 febbraio 2010

Coerenza

Cosa ti puoi aspettare da una societa' (telecom) che demanda ad una sua consociata (tin.it=telecom italia net) la gestione delle sue reti, poi cede tin.it a Seat pagine gialle e utilizza Alice come nuova gestione delle proprie reti. Poi si ricompra tin.it, rompe le scatole ai poveretti che usavano l'adsl di tin.it (mai avuto un problema per anni) per fargli mettere una linea adsl Alice. Dopo aver loro disabilitata la vecchia adsl, comunica bellamente di non poter installare una adsl alice perche' in quella zona non esiste l'adsl (ma se me l'avete staccata due giorni fa...era l'unica di tutto il centro di Rimini????)

Ebbene oggi scopro che il mio server in ufficio non puo' piu' spedirmi le mail di segnalazione dei backup in quanto il router e' finito su un IP address filtrato in qualche blacklist.

Poco male, basta settare l'autenticazione sasl su postfix (trovate il come in QUESTO POST). Ma la cosa non funziona ancora.

Dopo mezz'ora persa a scoprire le magagne con il 191 ("Lei deve impostare il server SMTP di alice business, mail.191.biz") ho scoperto che questo server non ne vuole sapere di autenticarmi...mentre invece tutto funziona a meraviglia con il server SMTP di alice (casa?): out.alice.it

Vabbeh....

lunedì 9 novembre 2009

Postfix: ipv4? ipv6? entrambi?

Le seguenti righe devono essere presenti nel file /etc/postfix/main.cf

ipv4

inet_interfaces = 127.0.0.1
smtp_bind_address = 0.0.0.0


ipv4 + ipv6

inet_interfaces = 127.0.0.1, [::1]
smtp_bind_address = 0.0.0.0
smtp_bind_address6 = ::
inet_protocols = all

Se modificate il file main.cf ricordatevi di attivare le modifiche lanciando il comando:
/etc/init.d/postfix restart

lunedì 12 ottobre 2009

fetchmail: connection to localhost:smtp [::1/25] failed: Connection refused.

Aggiungere queste linee al file /etc/postfix/main.cf
#
inet_interfaces = 127.0.0.1, [::1]
smtp_bind_address = 0.0.0.0
smtp_bind_address6 = ::
inet_protocols = all
#

Se la macchina ha un IP address statico puo' essere aggiunto alla linea inet_interfaces:
inet_interfaces = 192.168.1.6, 127.0.0.1, [::1]


mercoledì 9 settembre 2009

Postfix: come svuotare le code

Potete usare il comando pfqueue per gestire interattivamente tutte le code di postfix oppure ricorrere (come da esempi seguenti) al comando postsuper fornito con postfix.


Comando per svuotare tutte le code di postfix (incoming, hold, active, deferred):
postsuper -d ALL
Comando per svuotare una coda di postfix:
postsuper -d ALL incoming
o
postsuper -d ALL hold
o
postsuper -d ALL active
o
postsuper -d ALL deferred

venerdì 21 agosto 2009

Postfix: mascherare l'indirizzo di un mittente

Spesso i messaggi di alert di un server vengono inviati dall'utente root@host.dominio.local
Se i messaggi escono all'esterno della nostra rete, possono incontrare qualche server smtp "cativo" che li getta sentenziando che non esiste nessun dominio, pubblicamente conosciuto, con quel nome.
Essendo titolari del dominio (ad esempio): dominio.com, sarebbe carino che il mittente dei messaggi risultasse qualcosa di simile a root.host@dominio.com
In questo caso nessun smtp server avra' nulla da ridire e noi sapremo vedere anche solo dando una veloce occhiata che la segnalazione si riferisce a quel particolare host della nostra reta/dominio.

Vediamo come gestire la cosa con Postfix:
Editate il file /etc/postfix/main.cf e aggiungete la direttiva
smtp_generic_maps = hash:/etc/postfix/generic

Salvate e uscite dal file.
Create/aprite il file
/etc/postfix/generic e inserite la riga:
root@host.dominio.local root.host@dominio.com

o piu' in generale:

INDIRIZZO_UTENTE_MACCHINA_LOCALE INDIRIZZO_UTENTE_DOMINIO_PUBBLICO

Salvate, uscite dal file e compilatelo con il comando:
postmap /etc/postfix/generic

eseguite un restart di postfix per attivare la modifica:

/etc/init.d/postfix restart

Quando la mail e' invata a un host remoto tramite SMTP il server postfix si occupera' di sostituire l'indirizzo INDIRIZZO_UTENTE_MACCHINA_LOCALE con l'indirizzo INDIRIZZO_UTENTE_DOMINIO_PUBBLICO.


Postfix send error: queue file write error

Spedendo messaggi "corposi" e' possibile trovare nei log queste segnalazioni:
postdrop: warning: uid=1000: Illegal seek
sendmail: fatal: amit(1000): queue file write error

Cio' puo' essere causato dalle dimensioni del messaggio che superano il limite di default (dovrebbe essere impostato a 10MB)
Per consentire l'invio di messaggi piu' grossi, e' sufficiente inserire nel file /etc/postfix/main.cf la direttiva:
message_size_limit = 15000000

che imposta (ad esempio) il limite a circa 15MB, oppure:
message_size_limit = 0

che disabilita il limite di dimensioni sul singolo messaggio.

venerdì 13 giugno 2008

Postfix: attivare SMTP AUTH

Se i log dal vostro server preferito smettono di arrivare nella vostra casella di posta.

Se nei log (/var/log/mail.log) del server trovate qualcosa del genere:

Jun 13 17:27:01 localhost postfix/smtp[26456]: 0DD1085CB: to=, relay=smtp.tin.it[62.211.72.32]:25
, delay=0.66, delays=0.03/0.01/0.41/0.21, dsn=5.0.0, status=bounced (host smtp.tin.it[62.211.72.32] said: 550 RCPT T
O: Relaying not allowed - please use SMTP AUTH (in reply to RCPT TO command))
Allora dovete attivare l'autenticazione sull'SMTP con il vostro relayhost (di solito e' smtp.vostroprovider.it)

Su /etc/postfix/main.cf:

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

Su /etc/postfix/sasl_passwd (dovete crearlo voi):

RELAY_HOST utente@mydomain.com:PASSWORD

n.b.:
RELAY_HOST deve essere sostituito dall'SMTP server del vostro provider
utente@mydomain.com deve essere sostituito dallo username completo assegnatovi dal provider
PASSWORD deve essere sostituito dalla password assegnatavi dal provider

Eseguire i seguenti comandi:

chown root:root /etc/postfix/sasl_passwd
chmod 600 /etc/postfix/sasl_passwd
postmap /etc/postfix/sasl_passwd
/etc/init.d/postfix restart
Attenzione: sul mio sistema c'erano gia' installati i seguenti pacchetti legati all'autenticazione sasl, non so quali/quanti siano necessari per consentire l'autenticazione. Se da voi non ci sono e avete problemi in fase di invio della posta provate a installarli:

libauthen-sasl-perl
libsasl2
libsasl2-2
libsasl2-modules
sasl2-bin

In caso i log visualizzino un errore del genere:
 Mar 31 11:25:14 my_server postfix/smtp[24449]: E70B51ADC: to=, relay=smtp.myisp.com[xxx.xxx.xxx.xxx]:25, delay=349882, delays=349879/0.06/3.1/0, dsn=4.7.0, status=deferred (SASL authentication failed; cannot authenticate to server smtp.myisp.com[xxx.xxx.xxx.xxx]: no mechanism available)
molto probabilmente occorre installare il pacchetto
libsasl2-modules

mercoledì 23 aprile 2008

Postfix: Client host rejected: Greylisted for 5 minutes (in reply to RCPT TO command)

Sistemato il problema precedente ,gli utenti del dominio email.it (ma anche di altri domini) continuavano a non ricevere la mail di attivazione account.

Il log /var/log/mail.log rivelava questo inquietant messaggio:

Client host rejected: Greylisted for 5 minutes (in reply to RCPT TO command)

Questo significa che il server di questi utenti utilizza il cosiddetto greylisting.

Il greylisting e' un sistema per cui, a meno che non abbiate ricevuto negli ultimi 30 giorni una mail dalla stessa combinazione di "indirizzo email" / "indirizzo IP del mittente", il mail server risponde con un messaggio che grosso modo significa: "Non mollare, errore temporaneo, prova ancora tra 300 secondi (5 minuti)"

Le mail successive dallo stesso mittente non dovrebbero subire ulteriori ritardi.

Molti spammer sparano fuori milioni di email all'ora e non possono stare li' a riprovare ogni 5 minuti, cosi' la connessione viene perduta.

I veri mail server dovrebbero riconoscere questo messaggio come un reale errore temporaneo (codice 4xx, a differenza dei veri errori che hanno codici 5xx) e riprovare fino a 7 giorni (di solito) fino a che la mail non venga consegnata.

Il lato negativo del greylistng e' che potete dover aspettare 300 secondi (o quanti sono stati configurati sul tuo server) prima di ricevere la prima email da un nuovo mittente. In realta' potresti dover aspettare piu' a lungo: postfix, ad esempio, prova a riconsegnare i messaggi in coda ogni 1000 secondi.

Postfix: 554 5.7.1 : Helo command rejected: Illegal impersonation in HELO

Gestendo le iscrizioni ad un sito si verificava quanto segue:

Alcuni utenti si registravano e subito ricevevano la mail per l'attivazione del nuovo account.
Altri utenti (tra cui quelli del dominio email.it) non ricevevano la mail per l'attivazione.

In corrispondenza dell'invio delle mail a questi ultimi, il log /var/log/mail.log riportava il seguente messaggio:

554 5.7.1 : Helo command rejected: Illegal impersonation in HELO


Per risolvere il problema occorre editare il file /etc/postfix/main.cf e modificare la linea myhostname da

myhostname localhost.localdomain

a

myhostname FQDN.dominio.qualcosa

Dove FQDN.dominio.qualcosa corrisponde al nome completo associato dal DNS alla nostra macchina (o al nostro router se stiamo lavorando in NAT)
Completare il tutto riavviando il server postfix:

/stc/init.d/postfix restart