如何使用 sSMTP 更改邮件命令的默认发件人地址?

如何使用 sSMTP 更改邮件命令的默认发件人地址?

我已经安装了:

  • sudo apt-get 安装 ssmtp
  • sudo apt-get 安装 mailutils

当我使用命令时:

echo "something" | mail -s "testing email" [email protected]

生成的电子邮件的“发件人”字段设置为如下内容:

From: "Username" <[email protected]>

是否有一个配置文件或者类似的东西,我可以在何处更改默认地址?

请注意,更改 TO 字段很容易,如下所述:如何让 ssmtp 将本地用户映射到收件人:字段的电子邮件地址,但我需要更改默认的 FROM 字段。

编辑:我还需要更改 sendmail 模拟的发件人地址。在我的例子中,Cron 设置发件人:root 和收件人:root,我想将其更改为普通电子邮件地址。

答案1

ssmtp 中有几个设置可以进行操作,以允许更改电子邮件的“发件人”字段:

  1. 内有一个设置/etc/ssmtp/ssmtp.conf。默认情况下,系统选择“发件人”地址,但可以通过取消选中 FromLineOverride 行来更改:

    # 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=YES
    

    我所说的“取消选中”是指删除该特定行开头的井号。

  2. 可以进行设置/etc/ssmtp/revaliases以允许每个用户使用特定的“发件人”行。给出的示例revaliases相当无用:

    # Example: root:[email protected]:mailhub.your.domain[:port]
    # where [:port] is an optional port number that defaults to 25.
    

    但是手册页给出了更明确的例子:

    A reverse  alias  gives  the From: address placed on a user's outgoing
    messages and (optionally) the  mailhub  these  messages  will  be  sent
    through. Example:
    
     root:[email protected]:mail.isp.com
    
    Messages  root  sends  will be identified as from [email protected] and sent
    through mail.isp.com.
    

我个人不使用 ssmtp,而是使用 msmtp,其中更改“发件人”字段的语法要简单得多,并且可以包含在文件中$HOME/.msmtprc

from [email protected]

这容易多了……

参考:

相关内容