ssmtp change“来自:” root“ <xy @ com>”根名


13

我的root用户使用ssmtp发送电子邮件。但是,我无法更改“发件人: ...”的根名称。有什么方法可以在不使用其他用户的情况下发送带有其他名称的电子邮件?

尝试过:

回显“来自:“新名称”” | | ssmtp to@gmail.com -v


@cornernote的答案应该是这里的解决方案。还要检查:stackoverflow.com/questions/26202791/…–
6

Answers:


15

您可以在以下位置设置反向别名 /etc/ssmtp/revaliases

root:someone@yourdomain.tld

它隐藏在手册页的底部。


8

在/etc/ssmtp/ssmtp.conf文件中添加以下内容,您将能够在运行时设置任何名称和电子邮件:

FromLineOverride=YES

6

我建议您从ssmtp切换到msmtp,因为ssmtp不再积极开发。msmtp提供与ssmtp相同的所有功能,并提供更多功能。特别是,使用msmtp可以设置from设置,以控制邮件的发送人。


2
事实并非如此-即使在2018年,sSMTP似乎也被广泛用于最简单的任务。例如,所有Ubuntu LTS版本均随附最新的sSMTP软件包。它做到了。
斯塔姆斯特,


1

看起来FromLineOverride = YES不再起作用。

我猜GMAIL现在不允许这样做。但我不确定。


1

我也在使用ssmtp,即使我尝试了其他解决方案,也没有一个对我有用

但是,通过将“发件人”字段定义为:

...
From: Your Name Here <your_email_here@gmail.com>
...

我希望这有帮助!


1

通过编辑更改“发件人”文本,/etc/passwd以接收来自“您的此处的姓名”的邮件,而不仅仅是“ root”。

chfn -f 'YOUR NAME HERE' root

使用检查 grep root /etc/passwd

root:x:0:0:YOUR NAME HERE,,,:/root:/bin/bash

在这里找到它,它起到了治疗作用!


0

-F如果您在ssmtp命令行上指定电子邮件参数,则该选项有效,例如

echo "Test email" | ssmtp -F"New name" -v to@gmail.com

如果您希望从root @发送的所有电子邮件都使用某个特定名称,则可以按以下StackOverflow答案中所述更改Linux用户信息:

chfn -f "New name" root

“这是在手指信息(存储在/ etc / passwd文件中,请参阅chfn手册页)中设置/更改该用户的真实姓名。”

更新 即使更新了手指信息,cron仍从“ root”发送电子邮件,而不使用我的“ New name”。某些版本的cron支持MAILFROM=行,但不支持我的行(请参阅本文)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.