Vous souhaitez configurer votre serveur sendmail pour masquer l'adresse de l'expéditeur en no-reply@target-domain.net lors de l'envoi d'e-mails depuis celui-ci.
La solution
Normalement, pour masquer un domaine, le "MASQUERADE_AS " et " MASQUERADE_DOMAIN ” est utilisé dans /etc/mail/sendmail.mc . Mais cela laissera l'utilisateur inchangé. Avec sendmail, vous pouvez modifier à la fois le domaine et le nom d'utilisateur au cas par cas à l'aide de la fonction genericstable.
1. assurez-vous que tous les "MASQUERADE " les éléments sont commentés dans /etc/mail/sendmail.mc . Notez les lignes commençant par "dnl ” sont destinés à être commentés.
# grep 'MASQUERADE' /etc/mail/sendmail.mc dnl # MASQUERADE_AS(`target-domain.net')dnl dnl MASQUERADE_DOMAIN(localhost)dnl dnl MASQUERADE_DOMAIN(localhost.localdomain)dnl dnl MASQUERADE_DOMAIN(domain-to-masquerade.net)dnl
2. Activez la fonctionnalité de table de domaine :
# grep domaintable sendmail.mc FEATURE(domaintable)
# cat domaintable domain-to-masquerade.net target-domain.net
3. Configurez "genericstable ” dans /etc/mail/sendmail.mc en y ajoutant les lignes suivantes.
FEATURE(`genericstable',`hash -o /etc/mail/genericstable.db')dnl GENERICS_DOMAIN_FILE(`/etc/mail/generics-domains')dnl
4. Remplissez /etc/mail/generics-domains .
target-domain.net
5. Remplissez /etc/mail/genericstable .
root no-reply@target-domain.net other-user1 no-reply@target-domain.net other-user2 no-reply@target-domain.net
6. Recompilez /etc/sendmail.mc :
# cd /etc/mail # make
Vous pouvez obtenir l'erreur suivante lors de cette opération :
# make WARNING: 'sendmail.mc' is modified. Please install package sendmail-cf to update your configuration.
Cela est dû à l'absence du package sendmail-cf et veuillez l'installer pour continuer.
# yum install sendmail-cf
# cd /etc/mail # make
7. Redémarrez le service sendmail.
# service sendmail restart Shutting down sm-client: [ OK ] Shutting down sendmail: [ OK ] Starting sendmail: [ OK ] Starting sm-client: [ OK ]
8. Testez et vérifiez.
# hostname domain-to-masquerade.net
# echo "This is a test mail to verify the sendmail sender masquerade." | mailx -s "Test Sender Masquerade" your-name@your-email.com
Assurez-vous que "target-domain.net" est un nom de domaine complet (FQDN). Cela signifie que le nom de domaine doit pouvoir être résolu par le serveur de messagerie cible à partir des serveurs DNS faisant autorité. Sinon, le courrier sera probablement rejeté.