Configurazione di Postfix con autenticazione Sasl su Debian: Difference between revisions

From RVM Wiki
Jump to navigation Jump to search
mNo edit summary
 
(15 intermediate revisions by the same user not shown)
Line 1: Line 1:
==Installazione Postfix==
  sudo apt-get install --purge postfix
  sudo apt-get install --purge postfix
-
 
 
<pre>
  Package configuration                                                           
  Package configuration                                                           
                                                                                  
                                                                                  
Line 9: Line 13:
                       │ General type of configuration?  │                       
                       │ General type of configuration?  │                       
                       │                                  │                       
                       │                                  │                       
                       │    No configuration             │                       
                       │    *No configuration           │                       
                       │    Internet Site                │                       
                       │    Internet Site                │                       
                       │    Internet with smarthost      │                       
                       │    Internet with smarthost      │                       
Line 25: Line 29:
                                                                                  
                                                                                  


-


  sudo apt-get install rcconf sasl2-bin libsasl2-modules
</pre>
 
== Debian Squeeze==
===Installazione Sasl===
 
  sudo apt-get install sasl2-bin libsasl2-modules
 
===Configurazione Sasl===
* Abilitarne l'esecuzione, e configurarlo per Postfix:
 
sudo sed -i 's@^START=no@START=yes@;s@^OPTIONS="-c -m /var/run/saslauthd"@OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"@' /etc/default/saslauthd
 
echo "38d757b83e8fd554386a9aac6a236077  /etc/default/saslauthd" | md5sum --check
 
O a mano:


  sudoedit /etc/default/saslauthd
  sudoedit /etc/default/saslauthd


  START=yes  
  START=yes  
...
  OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"
  OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"


 
* Sistemare per Postfix:


  sudo dpkg-statoverride --add root sasl 710 /var/spool/postfix/var/run/saslauthd
  sudo dpkg-statoverride --add root sasl 710 /var/spool/postfix/var/run/saslauthd
  sudo adduser postfix sasl
  sudo adduser postfix sasl


cat | sudo tee /etc/postfix/sasl/smtpd.conf > /dev/null <<EOFile
* Creare il file per smtpd:
pwcheck_method: saslauthd  
 
mech_list: PLAIN LOGIN
<pre>
EOFile
cat | sudo tee /etc/postfix/sasl/smtpd.conf > /dev/null <<EOFile
pwcheck_method: saslauthd  
mech_list: PLAIN LOGIN
EOFile
</pre>


  sudo /etc/init.d/saslauthd start
* Avviare Sasl
  sudo invoke-rc.d saslauthd start


  sudo rcconf
* Impostarne l'esecuzione al boot:
  sudo update-rc.d -f saslauthd remove
sudo update-rc.d saslauthd defaults




===Configurazione Postfix===
* Copiare la configurazione base:
sudo cp /etc/postfix/main.cf /etc/postfix/main.cf.dpkg-old
  sudo cp /usr/share/postfix/main.cf.debian /etc/postfix/main.cf
  sudo cp /usr/share/postfix/main.cf.debian /etc/postfix/main.cf


sudo apt-get install courier-base
* Impostare l'uso del formato Maildir:
  sudo postconf -e home_mailbox=Maildir/
  sudo postconf -e home_mailbox=Maildir/
* Se è installato courier
  sudo maildirmake /etc/skel/Maildir
  sudo maildirmake /etc/skel/Maildir


sudo postconf -e myhostname=matras.it
* Se è installato dovecot
  sudo postconf -e myorigin=matras.it
  sudo maildirmake.dovecot /etc/skel/Maildir
sudo postconf -e proxy_interfaces=85.18.73.109


* Configurare il dominio
export DOMAIN=domain.dom
export PUBIP=1.2.3.4
sudo postconf -e myhostname=$DOMAIN
sudo postconf -e myorigin=$DOMAIN
sudo postconf -e mynetworks=127.0.0.0/8
sudo postconf -e mydestination=$DOMAIN,$(hostname -f),$(hostname),localhost,localhost.localdomain
sudo postconf -e relay_domains=$DOMAIN
sudo postconf -e proxy_interfaces=$PUBIP
* Impostare gli alias di sistema:
  sudoedit /etc/aliases
  sudoedit /etc/aliases


  postmaster:    root
  postmaster:    root
  root:  mat-alert@rvmgroup.it
  root:  forward_address@domain.dom


  sudo newaliases
  sudo newaliases
sudo postconf -e mynetworks=127.0.0.0/8
sudo postconf -e mydestination=matras.it,$(hostname -f),$(hostname),localhost


* Impostare le configurazioni per Sasl
  sudo postconf -e smtpd_recipient_restrictions=permit_sasl_authenticated,check_relay_domains
  sudo postconf -e smtpd_recipient_restrictions=permit_sasl_authenticated,check_relay_domains
  sudo postconf -e smtpd_sasl_security_options=noanonymous
  sudo postconf -e smtpd_sasl_security_options=noanonymous
Line 76: Line 118:
  sudo postconf -e broken_sasl_auth_clients=yes
  sudo postconf -e broken_sasl_auth_clients=yes


  sudo /etc/init.d/postfix stop; sudo /etc/init.d/postfix start
  sudo invoke-rc.d postfix stop; sudo invoke-rc.d postfix start
 
 
sudo apt-get install telnet libmime-perl


sudoedit /etc/postfix/main.cf
* Impostare le regole antispam
  smtpd_recipient_restrictions = permit_mynetworks
  sudo postconf -e "smtpd_recipient_restrictions=permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination,check_sender_access hash:/etc/postfix/whitelist,reject_rbl_client sbl.spamhaus.org,reject_rbl_client cbl.abuseat.org"
                                permit_sasl_authenticated
                                reject_unauth_destyination
                                check_relay_domains
                                check_sender_access hash:/etc/postfix/whitelist
                                reject_rbl_client sbl.spamhaus.org
                                reject_rbl_client cbl.abuseat.org


* Impostare la whitelist per le regole antispam
  sudo touch /etc/postfix/whitelist
  sudo touch /etc/postfix/whitelist
  cd /etc/postfix
  cd /etc/postfix
  sudo postmap whitelist
  sudo postmap whitelist
  sudo /etc/init.d/postfix stop; sudo /etc/init.d/postfix start
  sudo invoke-rc.d postfix stop; sudo invoke-rc.d postfix start
sudo postconf -e relay_domains=matras.it


== Test autenticazione Sasl==


amavis
* Creare un utente locale di prova:
 
==Installazione veloce per Etch==
 
 
== Installazione postfix ==
 
* Innanzitutto definire le varialibili:
 
<pre>
export POST_HOSTNAME=fire.mendrisio.croalliance.com
export POST_DOMAIN=croalliance.com
</pre>
 
* Poi procedere all'installazione:
 
<pre>
apt-get install --purge postfix-tls postfix
</pre>
 
NB: Scegliere NO CONFIGURATION
 
* Fermare immediatamente postfix:
 
<pre>
/etc/init.d/postfix stop
</pre>
 
 
== Installazione SASL per autenticazione SMTP ==
 
* Installazione:
 
<pre>
apt-get install libsasl2-modules sasl2-bin
</pre>
 
* Togliere il commento da "START=YES" ed aggiungere la righe con PARAMS e PWDIR in /etc/defaults/saslauthd:
 
<pre>
cat > /etc/default/saslauthd <<EOFile
# This needs to be uncommented before saslauthd will be run automatically
START=yes
 
# You must specify the authentication mechanisms you wish to use.
# This defaults to "pam" for PAM support, but may also include
# "shadow" or "sasldb", like this:
# MECHANISMS="pam shadow"
 
MECHANISMS="pam"
PWDIR="/var/spool/postfix/var/run/saslauthd"
PARAMS="-m /var/spool/postfix/var/run/saslauthd"
EOFile
</pre>
 
* Creare la cartella per il chroot di postfix e settarne i diritti in dpkg-statoverride:
 
<pre>
mkdir -p /var/spool/postfix/var/run/saslauthd
dpkg-statoverride --add root sasl 710 /var/spool/postfix/var/run/saslauthd
</pre>
 
* Creare il file di configurazione per postfix:
 
<pre>
cat > /etc/postfix/sasl/smtpd.conf <<EOFile
pwcheck_method: saslauthd
mech_list: PLAIN LOGIN
EOFile
</pre>
 
* Avviare saslauthd:
 
<pre>
/etc/init.d/saslauthd start
</pre>
 
Si viene informati del fixing dei permessi:
 
<pre>
Starting SASL Authentication Daemon: changed ownership of `/var/spool/postfix/var/run/saslauthd' to root:sasl
mode of `/var/spool/postfix/var/run/saslauthd' changed to 0710 (rwx--x---)
saslauthd.
</pre>
 
* Verificare che funzioni:
 
<pre>
ps waux | grep saslauthd
</pre>
 
Il risultato deve essere simile a:
 
<pre>
root      3018  0.0  0.7  6500 1536 ?        Ss  21:24  0:00 /usr/sbin/saslauthd -a pam
.....
</pre>
 
* lanciare rcconf ed assicurarsi che saslauthd parta all'avvio:
 
rcconf
 
'''ATTENZIONE: ricordarsi di aggiungere postfix al gruppo sasl prima di testare il tutto !!!! (Vedi di seguito)'''
 
== Configurazione postfix ==
 
* Copiare il file di partenza:
 
<pre>
cp /usr/share/postfix/main.cf.debian /etc/postfix/main.cf
</pre>


* Abilitare il delivery locale in formato Maildir e creare la cartella Maildir in /etc/skel.
sudo adduser --force-badname --gecos "Utente di prova" nome.cognome


'''NB: maildirmake fa parte dei pacchetti Maildrop e Courier-IMAP. Non fa parte di Postfix.
=== Test con swaks===
* Da un client linux
sudo apt-get install swaks


Quindi occorre installare prima il pacchetto courier-base per poter usere il comando maildirmake'''
* Questo deve andare:
swaks -f nome.cognome@domain.dom -s smtpserver.domain.dom -t recipient@domain.dom -au nome.cognome


<pre>
* Questo non deve andare:
apt-get install courier-base
swaks -f nome.cognome@rdomain.dom --s smtpserver.domain.dom -t recipient@domain.dom
postconf -e home_mailbox=Maildir/
maildirmake /etc/skel/Maildir
</pre>


* Settare il nome che apparirà nel greeting e che possibilmente corrisponderà al cname del record mx del mailserver e il nome presentato negli header:
* Rimuovere l'account di prova:
 
sudo userdel -r nome.cognome
<pre>
postconf -e myhostname=$POST_HOSTNAME
postconf -e myorigin=$POST_DOMAIN
</pre>
 
* In caso il server sia dietro una NAT box, occorre specificare l'ip pubblico a.b.c.d.della nat box, soprattutto se il server è anche mx secondario per un dominio, al fine di evitare loop:
 
<pre>
postconf -e proxy_interfaces=a.b.c.d
</pre>
 
* Abilitare il supporto della alias map 'a la sendmail':
 
<pre>
postconf -e alias_maps=hash:/etc/aliases
postconf -e alias_database=hash:/etc/aliases
</pre>
 
 
* Settare in /etc/aliases l'eventuale alias locale per root, e poi compilare la tabella:
 
<pre>
newaliases
</pre>
 
* Impostare le reti di fiducia (che potranno fare relay senza autenticazione); Nel caso ci siano dei mail server interni che usano il mail server senza autenticazione, aggiungerli come a.b.c.d/32. Normalmente aggiungere solo localnet, da usare con l'antivirus:
 
<pre>
postconf -e mynetworks=127.0.0.0/8
</pre>
 
* Definire i domini per cui il mail server è la destinazione finale:
 
<pre>
postconf -e mydestination=$POST_DOMAIN,$POST_HOSTNAME,$(hostname -f),$(hostname),localhost
</pre>
 
=== Abilitazione dell'autenticazione obbligatoria per i client smtp basata su sasl 2===
 
<pre>
postconf -e smtpd_recipient_restrictions=permit_sasl_authenticated,check_relay_domains
postconf -e smtpd_sasl_security_options=noanonymous
postconf -e smtpd_sasl_auth_enable=yes
postconf -e smtpd_sasl_security_options=noanonymous
postconf -e smtpd_sasl_application_name=smtpd
postconf -e smtpd_sasl_local_domain=''
postconf -e broken_sasl_auth_clients=yes
</pre>
 
* Aggiungere l'utente postfix al gruppo sasl:
 
<pre>
usermod -G sasl postfix
</pre>
 
* Riavviare postfix:
 
<pre>
/etc/init.d/postfix stop;/etc/init.d/postfix start
</pre>


===Test con Telnet===
* Per testare l'SMTP-AUTH, assicurarsi di aver installato libmime-per:
* Per testare l'SMTP-AUTH, assicurarsi di aver installato libmime-per:


<pre>
sudo apt-get install libmime-perl
apt-get install libmime-perl
</pre>
 
 
* Creare un utente locale di prova:


adduser nome.cognome


* Generare la stringa di autenticazione, sostituendo username e password coi valori di un account valido:
* Generare la stringa di autenticazione, sostituendo username e password coi valori di un account valido:
Line 308: Line 167:


<pre>
<pre>
# telnet localhost 25                                                Trying 127.0.0.1...
# telnet localhost 25                                                 
Trying 127.0.0.1...
Connected to localhost.localdomain.
Connected to localhost.localdomain.
Escape character is '^]'.
Escape character is '^]'.
Line 328: Line 188:
</pre>
</pre>


Se sio verificasse un errore in ''' /var/log/mail.log''' tipo:
* Rimuovere l'account di prova:
 
  sudo userdel -r nome.cognome
Jan  4 11:01:20 fire postfix/smtpd[1511]: warning: SASL authentication failure:
cannot connect to saslauthd server: No such file or directory
 
Probabilmente c'è un errore ni parametri in ''/etc/default/saslauthd'' oppure non è attivo il chroot in ''/etc/postfix/master.cf'' in cui la seguente linea deve essere:
 
<pre>
...
# ==========================================================================
# service type private unpriv  chroot  wakeup  maxproc command + args
#              (yes)  (yes)  (yes)  (never) (100)
# ==========================================================================
smtp      inet  n      -       y      -      -      smtpd
...
</pre>
 
=== Abilitazione dell' ANTIRELAY ed RBL ===


o manualmente tramite "vi"
=== Test invio smtp della posta con telnet===
 
<pre>
--- /etc/postfix/main.cf
# Relay control:
# Allow all mail from localhost, autenticated sessions
smtpd_recipient_restrictions = permit_mynetworks
permit_sasl_authenticated
reject_rbl_client relays.ordb.org
reject_rbl_client dnsbl.njabl.org
reject_rbl_client sbl.spamhaus.org
reject_rbl_client cbl.abuseat.org
reject_unauth_destination
---
</pre>
 
o con il comando:
 
<pre>
postconf -e smtpd_recipient_restrictions=permit_mynetworks,\ permit_sasl_authenticated,\ reject_rbl_client\ relays.ordb.org,\ reject_rbl_client\ nsbl.njabl.org,\ reject_rbl_client\ sbl.spamhaus.org\ reject_rbl_client\ cbl.abuseat.org,\ reject_unauth_destination
</pre>
 
Si possono aggiungere anche:
 
- reject_rbl_client proxies.relays.monkeys.com
 
- reject_rbl_client opm.blitzed.org
 
- reject_rbl_client blackholes.wirehub.net
 
- reject_rbl_client list.dsbl.org
 
 
* Abilitare il RELAY solo per posta To: dominio.com
 
o manualmente tramite "vi"
 
<pre>
--- /etc/postfix/main.cf
relay_domains = dominio.com
---
</pre>
 
o con il comando:
 
<pre>
postconf -e relay_domains=$POST_DOMAIN
</pre>
 
=== Test invio della posta ===


A. Da dominio a dominio
A. Da dominio a dominio
Line 405: Line 200:
helo vittorio
helo vittorio
...
...
mail from: mittente@dominio.dom
mail from: <mittente@dominio.dom>
...
...
rcpt to: destinatario@dominio.dom
rcpt to: <destinatario@dominio.dom>
....
....
data
data
Line 456: Line 251:
#
#
</pre>
</pre>
* Rimuovere l'account di prova:
sudo userdel -r nome.cognome
==Verifica in caso di errori Sasl==
Se si verificasse un errore in ''' /var/log/mail.log''' tipo:
Jan  4 11:01:20 fire postfix/smtpd[1511]: warning: SASL authentication failure:
cannot connect to saslauthd server: No such file or directory
Probabilmente c'è un errore ni parametri in ''/etc/default/saslauthd'' oppure non è attivo il chroot in ''/etc/postfix/master.cf'' in cui la seguente linea deve essere:
<pre>
...
# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#              (yes)  (yes)  (yes)  (never) (100)
# ==========================================================================
smtp      inet  n      -      -      -      -      smtpd
...
</pre>


== Configurazione account locali e remoti ==
== Configurazione account locali e remoti ==
Nel caso ci siano caselle da tenere in locale, ed altre da inoltrare ad un'altra macchina.


* Definire la mappa:
* Definire la mappa:
Line 489: Line 307:
== Configurare Postfix per Amavis ==
== Configurare Postfix per Amavis ==


* Innanzitutto configurare Amavis:
* Seguire
 
http://rvmserver/mediawiki/index.php?title=Installazione_Amavis
 
* Poi eseguire:


<pre>
[[Installazione Amavisd-new in Debian]]
postconf -e content_filter=amavis:[127.0.0.1]:10024
</pre>


* Mettere queste cose alla fine di master.cf:
==Attivazione greylisting==
NON ATTIVARE


<pre>
* Vedi [[Greylisting con postfix come tecnica antispam]]
cat | sudo tee -a /etc/postfix/master.cf > /dev/null <<EOFile
amavis unix - - n - 2 smtp
-o smtp_data_done_timeout=1200
-o disable_dns_lookups=yes
 
127.0.0.1:10025 inet n - n - - smtpd
-o content_filter=
-o local_recipient_maps=
-o relay_recipient_maps=
-o smtpd_restriction_classes=
-o smtpd_client_restrictions=
-o smtpd_helo_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks=127.0.0.0/8
-o strict_rfc821_envelopes=yes
EOFile
</pre>
 
ed il cui risultato sarà:
 
<pre>
amavis unix - - n - 2 smtp
-o smtp_data_done_timeout=1200
-o disable_dns_lookups=yes
 
127.0.0.1:10025 inet n - n - - smtpd
-o content_filter=
-o local_recipient_maps=
-o relay_recipient_maps=
-o smtpd_restriction_classes=
-o smtpd_client_restrictions=
-o smtpd_helo_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks=127.0.0.0/8
-o strict_rfc821_envelopes=yes
</pre>
 
* Restartare Postfix e Clamav e Clamav-daemon:
 
<pre>
sudo /etc/init.d/postfix stop; sudo /etc/init.d/postfix start
sudo /etc/init.d/amavis stop ; sudo /etc/init.d/amavis start
sudo /etc/init.d/clamav-daemon stop; sudo /etc/init.d/clamav-daemon start
</pre>

Latest revision as of 15:35, 19 November 2021

Installazione Postfix

sudo apt-get install --purge postfix


 Package configuration                                                           
                                                                                
                                                                                
                                                                                
                                                                                
                      ┌────┤ Postfix Configuration ├─────┐                      
                      │ General type of configuration?   │                      
                      │                                  │                      
                      │     *No configuration            │                      
                      │     Internet Site                │                      
                      │     Internet with smarthost      │                      
                      │     Satellite system             │                      
                      │     Local only                   │                      
                      │                                  │                      
                      │                                  │                      
                      │      <Ok>          <Cancel>      │                      
                      │                                  │                      
                      └──────────────────────────────────┘                      
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                


Debian Squeeze

Installazione Sasl

sudo apt-get install sasl2-bin libsasl2-modules

Configurazione Sasl

  • Abilitarne l'esecuzione, e configurarlo per Postfix:
sudo sed -i 's@^START=no@START=yes@;s@^OPTIONS="-c -m /var/run/saslauthd"@OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"@' /etc/default/saslauthd
echo "38d757b83e8fd554386a9aac6a236077  /etc/default/saslauthd" | md5sum --check 

O a mano:

sudoedit /etc/default/saslauthd
START=yes 
...
OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"


  • Sistemare per Postfix:
sudo dpkg-statoverride --add root sasl 710 /var/spool/postfix/var/run/saslauthd
sudo adduser postfix sasl
  • Creare il file per smtpd:
cat | sudo tee /etc/postfix/sasl/smtpd.conf > /dev/null <<EOFile
pwcheck_method: saslauthd 
mech_list: PLAIN LOGIN
EOFile
  • Avviare Sasl
sudo invoke-rc.d saslauthd start
  • Impostarne l'esecuzione al boot:
sudo update-rc.d -f saslauthd remove
sudo update-rc.d saslauthd defaults


Configurazione Postfix

  • Copiare la configurazione base:
sudo cp /etc/postfix/main.cf /etc/postfix/main.cf.dpkg-old
sudo cp /usr/share/postfix/main.cf.debian /etc/postfix/main.cf
  • Impostare l'uso del formato Maildir:
sudo postconf -e home_mailbox=Maildir/
  • Se è installato courier
sudo maildirmake /etc/skel/Maildir
  • Se è installato dovecot
sudo maildirmake.dovecot /etc/skel/Maildir
  • Configurare il dominio
export DOMAIN=domain.dom
export PUBIP=1.2.3.4
sudo postconf -e myhostname=$DOMAIN
sudo postconf -e myorigin=$DOMAIN
sudo postconf -e mynetworks=127.0.0.0/8
sudo postconf -e mydestination=$DOMAIN,$(hostname -f),$(hostname),localhost,localhost.localdomain
sudo postconf -e relay_domains=$DOMAIN
sudo postconf -e proxy_interfaces=$PUBIP
  • Impostare gli alias di sistema:
sudoedit /etc/aliases
postmaster:    root
root:   forward_address@domain.dom
sudo newaliases
  • Impostare le configurazioni per Sasl
sudo postconf -e smtpd_recipient_restrictions=permit_sasl_authenticated,check_relay_domains
sudo postconf -e smtpd_sasl_security_options=noanonymous
sudo postconf -e smtpd_sasl_auth_enable=yes
sudo postconf -e smtpd_sasl_security_options=noanonymous
sudo postconf -e smtpd_sasl_application_name=smtpd
sudo postconf -e smtpd_sasl_local_domain=
sudo postconf -e broken_sasl_auth_clients=yes
sudo invoke-rc.d postfix stop; sudo invoke-rc.d postfix start
  • Impostare le regole antispam
sudo postconf -e "smtpd_recipient_restrictions=permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination,check_sender_access hash:/etc/postfix/whitelist,reject_rbl_client sbl.spamhaus.org,reject_rbl_client cbl.abuseat.org"
  • Impostare la whitelist per le regole antispam
sudo touch /etc/postfix/whitelist
cd /etc/postfix
sudo postmap whitelist
sudo invoke-rc.d postfix stop; sudo invoke-rc.d postfix start

Test autenticazione Sasl

  • Creare un utente locale di prova:
sudo adduser --force-badname --gecos "Utente di prova" nome.cognome

Test con swaks

  • Da un client linux
sudo apt-get install swaks
  • Questo deve andare:
swaks -f nome.cognome@domain.dom -s smtpserver.domain.dom -t recipient@domain.dom -au nome.cognome
  • Questo non deve andare:

swaks -f nome.cognome@rdomain.dom --s smtpserver.domain.dom -t recipient@domain.dom

  • Rimuovere l'account di prova:
sudo userdel -r nome.cognome

Test con Telnet

  • Per testare l'SMTP-AUTH, assicurarsi di aver installato libmime-per:
sudo apt-get install libmime-perl


  • Generare la stringa di autenticazione, sostituendo username e password coi valori di un account valido:
perl -MMIME::Base64 -e 'print encode_base64("nome.cognome\0nome.cognome\0password");'

Il cui risultato è una stringa similare a:

dXNlcm5hbWUAdXNlcm5hbWUAcGFzc3dvcmQ=

  • Testare ora la corretta autenticazione uasndo la stringa generata:
# telnet localhost 25                                                
Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.
220 fire.all-logistics.com ESMTP Postfix (Debian/GNU)
ehlo p
250-fire.all-logistics.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH LOGIN PLAIN
250-AUTH=LOGIN PLAIN
250 8BITMIME
auth plain dGVzdHVzZXIAdGVzdHVzZXIAbGFwYXNzYQ==
235 Authentication successful
quit
221 Bye
Connection closed by foreign host.
  • Rimuovere l'account di prova:
sudo userdel -r nome.cognome

Test invio smtp della posta con telnet

A. Da dominio a dominio

#telnet mailserver 25
...
helo vittorio
...
mail from: <mittente@dominio.dom>
...
rcpt to: <destinatario@dominio.dom>
....
data
...
subject: soggetto email

testo messaggio
testo messaggio
testo messaggio
.
quit
#

B. Da esterno a dominio (usare account libero.it o simili)

C. Da dominio a esterno (con autenticazione)

#telnet mailserver 25
Connected to localhost.localdomain.
Escape character is '^]'.
220 fire.all-logistics.com ESMTP Postfix (Debian/GNU)
ehlo miamacchina
250-fire.all-logistics.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH LOGIN PLAIN
250-AUTH=LOGIN PLAIN
250 8BITMIME
auth plain dGVzdHVzZXIAdGVzdHVzZXIAbGFwYXNzYQ==
235 Authentication successful
mail from: mittente@dominio.dom
...
rcpt to: destinatario@dominioesterno.dom
....
data
...
subject: soggetto email

testo messaggio
testo messaggio
testo messaggio
.
quit
#
  • Rimuovere l'account di prova:
sudo userdel -r nome.cognome

Verifica in caso di errori Sasl

Se si verificasse un errore in /var/log/mail.log tipo:

Jan  4 11:01:20 fire postfix/smtpd[1511]: warning: SASL authentication failure:
cannot connect to saslauthd server: No such file or directory

Probabilmente c'è un errore ni parametri in /etc/default/saslauthd oppure non è attivo il chroot in /etc/postfix/master.cf in cui la seguente linea deve essere:

...
# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp      inet  n       -       -       -       -       smtpd
...


Configurazione account locali e remoti

Nel caso ci siano caselle da tenere in locale, ed altre da inoltrare ad un'altra macchina.

  • Definire la mappa:
postconf -e transport_maps=hash:/etc/postfix/transport
  • Creare la mappa:
vi /etc/postfix/transport
user1.local@domain.com	local:
user2.local@domain.com	local:
domain.com	        smtp:[ip-nome.gateway.destinazione]
*	                smtp:

user1 e user2 vengono deliverati in locale, tutti gli altri utenti vengono inviati al mailserver ip-nome.gateway.destinazione, mentre tutti gli altri vengono inviati via MX ai relativi mailserver di destinazione.

  • Compilare la tabella con:
postmap  /etc/postfix/transport < transport


Configurare Postfix per Amavis

  • Seguire

Installazione Amavisd-new in Debian

Attivazione greylisting

NON ATTIVARE