Как получить ssmtp для сопоставления локального пользователя с адресом электронной почты для поля To:
У меня простой ssmtp
настроить.
Команда echo test | mail -s "testing" username
всегда приводит к тому, что я пытаюсь отправить электронное письмо username@hostname
который всегда терпит неудачу.
Таким образом, я пытаюсь сопоставить локальное имя пользователя с конкретным адресом электронной почты.
Как мне это сделать?
Я старался /etc/aliases
, но
$ sudo newaliases
newaliases: Aliases are not used in sSMTP
Потом я попробовал
$ cat /etc/mail.rc
alias root root<xxx@yyy.com>
alias username username<xxx@yyy.com>
Но это все еще не работает. Есть идеи?
1 ответ
Я немного боролся с ssmtp
тоже. Первое, что я узнал, это то, что механизм псевдонимов не работает с простым mail
программа; Я должен использовать mailx
из пакета bsd-mailx
- никогда не знал почему. Поэтому, прежде чем начинать менять конфигурации, сверьтесь с этим.
Во всяком случае, для справки, у меня есть рабочий ssmtp
настроить как показано ниже:
файл
/etc/ssmtp/ssmtp.conf
:# # Config file for sSMTP sendmail # # The person who gets all mail for userids < 1000 # Make this empty to disable rewriting. root=romano@mymail.domain.com # 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
файл
/etc/ssmtp/revaliases/
# sSMTP aliases # # Format: local_account:outgoing_address:mailhub # # Example: root:your_login@your.domain:mailhub.your.domain[:port] # where [:port] is an optional port number that defaults to 25. # root:romano@mymail.domain.com romano:romano@mymail.domain.com postmaster:romano@mymail.domain.com
и теперь это работает:
[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:<romano@mymail.domain.com>
[<-] 250 2.1.0 Ok
[->] RCPT TO:<romano@mymail.domain.com>
[<-] 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" <romano@mymail.domain.com>
[->] 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
Обратите внимание, что домены, имена хостов и т. Д. Здесь шифруются для обеспечения конфиденциальности (поэтому могут быть опечатки).