Primero intall Postfix y mailutils
apt-get install postfix mailutils
Generar certificados que se utilizarán para el cifrado TLS y/o la autenticación de certificados:
touch smtpd.key
chmod 600 smtpd.key
openssl genrsa 1024 > smtpd.key
openssl req -new -key smtpd.key -x509 -days 3650 -out smtpd.crt # has prompts
openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out cacert.pem -days 3650 # has prompts
mv smtpd.key /etc/ssl/private/
mv smtpd.crt /etc/ssl/certs/
mv cakey.pem /etc/ssl/private/
mv cacert.pem /etc/ssl/certs/
Cuando obtenga esto (el segundo paso promt), introduzca una frase de paso de su elección
Enter PEM pass phrase:
Configure Postfix para que realice el cifrado TLS tanto para el correo entrante como para el saliente:
postconf -e 'smtp_tls_security_level = may'
postconf -e 'smtpd_tls_security_level = may'
postconf -e 'smtpd_tls_auth_only = no'
postconf -e 'smtp_tls_note_starttls_offer = yes'
postconf -e 'smtpd_tls_key_file = /etc/ssl/private/smtpd.key'
postconf -e 'smtpd_tls_cert_file = /etc/ssl/certs/smtpd.crt'
postconf -e 'smtpd_tls_CAfile = /etc/ssl/certs/cacert.pem'
postconf -e 'smtpd_tls_loglevel = 1'
postconf -e 'smtpd_tls_received_header = yes'
postconf -e 'smtpd_tls_session_cache_timeout = 3600s'
postconf -e 'tls_random_source = dev:/dev/urandom'
postconf -e 'myhostname = server1.example.com' # remember to change this to yours
También te recomiendo que hagas esto, o podrías tener algunos problemas al enviar con ipv6
postconf -e 'inet_protocols = ipv4'
El nuevo archivo de configuración de Postfix se encuentra aquí
/etc/postfix/main.cf
Reinicie ahora Postfix con este comando
/etc/init.d/postfix restart
Ahora puede probar su configuración con este comando desde la línea de comandos
echo "Test mail from postfix" | mail -s "Test Postfix" you@example.com
Y comprueba en el registro que todo ha ido bien
tail -50 /var/log/mail.log