Relay SMTP avec Sendmail -> gmail + certificat ssl

Logo gmail
Gmail

Dans cet article, nous allons voir comment envoyer un mail de son serveur en utilisant un relai SMTP qui utilisera les serveurs de GOOGLE, et nous allons voir comment insérer un certificat pour que l’envoie du mail se fasse de manière sécurisé.


Pour cela nous avons besoin de :
– Cyrus SASL
– Sendmail
– Sendmail-cf
– m4
– openssl

# yum install m4 cyrus-sasl* sendmail sendmail-cf openssl

Nous allons créer notre certificat :

# cd /etc/mail
# mkdir certs
# cd certs
# openssl req -new -x509 -keyout cakey.pem -out cacert.pem -days 3650
# openssl req -nodes -new -x509 -keyout sendmail.pem -out sendmail.pem -days 3650

Une fois les certificats créés, nous allons créer notre fichier auth

# cd ..
# mkdir auth
# cd auth
# vim client-info
// Mettre ses informations
AuthInfo:smtp.gmail.com “U:root” “I:username@gmail.com” “P:password” “M:PLAIN”
AuthInfo:smtp.gmail.com:587 “U:root” “I:username@gmail.com” “P:password” “M:PLAIN”

# chmod 600 /etc/mail/auth/*

On crée la base à partir de notre fichier

# makemap -r hash client-info.db < client-info

nous passons maintenant à la configuration de sendmail :

# cd ..
# cp /etc/pki/tls/certs/ca-bundle.crt /etc/mail/certs/ca-bundle.crt
# vim sendmail.mc
// Ajouter les lignes suivantes :

define(`SMART_HOST’, `smtp.gmail.com’)
FEATURE(`authinfo’,`hash /etc/mail/auth/client-info.db’)dnl
define(`RELAY_MAILER_ARGS’, `TCP $h 587′)
define(`ESMTP_MAILER_ARGS’, `TCP $h 587′)
define(`CERT_DIR’, `/etc/mail/certs’)
define(`confCACERT_PATH’, `CERT_DIR’)
define(`confCACERT’, `CERT_DIR/ca-bundle.crt’)
define(`confCRL’, `CERT_DIR/ca-bundle.crt’)
define(`confSERVER_CERT’, `CERT_DIR/sendmail.pem’)
define(`confSERVER_KEY’, `CERT_DIR/cakey.pem’)
define(`confCLIENT_CERT’, `CERT_DIR/sendmail.pem’)
define(`confCLIENT_KEY’, `CERT_DIR/cakey.pem’)
define(`confAUTH_MECHANISMS’, `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)

/!\ATTENTION : A chaque fin de paramètres nous avons des singles quotes (vous pouvez rencontrer des erreurs dans votre C/C à cause de WordPress :p/!\

Une fois que c’est fait, on recrée notre fichier sendmail.cf et on démarre sendmail:

# cd /etc/mail
# make
# service sendmail start

On fini par un test d’envoi de mail :

# mail -s “Ceci est un test” adresse@mail.com

Si vous avez des remarques concernant cet article ou un problème, n’hésitez surtout pas à commenter !

About Alexandre Nogard

Check Also

Bash Scripting : Creation de vhosts automatisés avec Certificat Lets Encrypt

Bonjour à tous, Il y a quelques temps, j’avais posté un script bash permettant de …

Owncloud 9.X : Sécurisez votre serveur avec Fail2Ban sur Centos 7.X – Part3

Dans ce tuto, nous allons voir comment protéger Owncloud 9.X des brutes-forces sur les tentatives …

OpenVAS : Configuration & Utilisation sur CentOs 7 – Part 2

OpenVAS est installé sur notre CentOs 7, nous allons maintenant aborder la partie configuration et …

3 comments

  1. Stupid, stupid me. RPMForge is for CentOS, RPMFusion is for Fedora.

  2. J’espérais que tu ais déjà fait l’article et paf 2ème position “configurer sendmail relay smtp”
    Bien joué ;)

Leave a Reply

Your email address will not be published. Required fields are marked *