web-dev-qa-db-fra.com

Comment obtenir que ssmtp mappe un utilisateur local sur l'adresse électronique du champ To:

J'ai une configuration ssmtp simple.

La commande echo test | mail -s "testing" username a toujours pour résultat que je tente d'envoyer un courrier électronique à username@hostname qui échoue toujours.

J'essaie donc de mapper le nom d'utilisateur local vers une adresse électronique spécifique.

Comment puis-je faire cela?

J'ai essayé /etc/aliases, mais

$ Sudo newaliases 
newaliases: Aliases are not used in sSMTP

Puis j'ai essayé

$ cat /etc/mail.rc 
alias root root<[email protected]>
alias username username<[email protected]>

Mais ça ne marche toujours pas. Des idées?

7
Cookie

J'ai eu un peu de mal avec ssmtp aussi. La première chose que j'ai apprise est que le mécanisme des alias ne fonctionne pas fonctionne avec le programme plain mail; Je dois utiliser mailx du paquet bsd-mailx - je ne savais jamais pourquoi. Donc, avant de commencer à modifier les configurations, vérifiez-le.

Quoi qu'il en soit, à titre de référence, j'ai une configuration ssmtp comme celle-ci:

  1. fichier /etc/ssmtp/ssmtp.conf:

    #
    # Config file for sSMTP sendmail
    #
    # The person who gets all mail for userids < 1000
    # Make this empty to disable rewriting.
    [email protected]
    
    # The place where the mail goes. The actual machine name is required no 
    # MX records are consulted. Commonly mailhosts are named mail.domain.com
    mailhub=mymailserver.mymail.domain.com:25
    
    # Where will the mail seem to come from?
    rewriteDomain=mymail.domain.com
    
    # The full hostname
    hostname=myhostname.mymail.domain.com
    # Use SSL/TLS before starting negotiation 
    UseTLS=No
    #UseSTARTTLS=Yes
    #
    # Are users allowed to set their own From: address?
    # YES - Allow the user to specify their own From: address
    # NO - Use the system generated From: address
    FromLineOverride=NO
    
  2. fichier /etc/ssmtp/revaliases/

    # sSMTP aliases
    # 
    # Format:   local_account:outgoing_address:mailhub
    #
    # Example: root:[email protected]:mailhub.your.domain[:port]
    # where [:port] is an optional port number that defaults to 25.
    #
    root:[email protected]
    romano:[email protected]
    postmaster:[email protected]
    

et maintenant ça marche:

[romano:~] % mailx -v root
Subject: test
test
.
Cc: 
[<-] 220 mymailserver.mymail.domain.com ESMTP my mail server
[->] HELO myhostname.mymail.domain.com
[<-] 250 mymailserver.mymail.domain.com
[->] MAIL FROM:<[email protected]>
[<-] 250 2.1.0 Ok
[->] RCPT TO:<[email protected]>
[<-] 250 2.1.5 Ok
[->] DATA
[<-] 354 End data with <CR><LF>.<CR><LF>
[->] Received: by myhostname.mymail.domain.com (sSMTP sendmail emulation); Fri, 03 Jul 2015 13:25:52 +0200
[->] From: "Romano Giannetti" <[email protected]>
[->] Date: Fri, 03 Jul 2015 13:25:52 +0200
[->] To: root
[->] Subject: test
[->] 
[->] test
[->] .
[<-] 250 2.0.0 Ok: queued as BF1CB3BC050
[->] QUIT
[<-] 221 2.0.0 Bye

Notez que les domaines, les noms d'hôte, etc. sont brouillés pour des raisons de confidentialité (il peut donc y avoir des typos) .

12
Rmano