Première installation de Postfix et de mailutils
apt-get install postfix mailutils
Générer des certificats à utiliser pour le cryptage TLS et/ou l'authentification par certificat :
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/
Lorsque vous obtenez ce résultat (la deuxième étape), vous entrez une phrase de passe de votre choix.
Enter PEM pass phrase:
Configurez Postfix pour qu'il utilise le cryptage TLS pour le courrier entrant et sortant :
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
Je vous recommande également de le faire, sinon vous risquez d'avoir des problèmes lors de l'envoi avec l'ipv6.
postconf -e 'inet_protocols = ipv4'
Le nouveau fichier de configuration de Postfix est situé ici
/etc/postfix/main.cf
Redémarrez Postfix avec cette commande
/etc/init.d/postfix restart
Vous pouvez maintenant tester votre installation avec cette commande depuis la ligne de commande
echo "Test mail from postfix" | mail -s "Test Postfix" you@example.com
Et vérifiez dans le journal que tout s'est bien passé
tail -50 /var/log/mail.log