sSMTPconfiguration问题

我已经通过Ubuntu 10.04安装了sSMTP:

sudo apt-get install ssmtp

我的configuration文件是:

 #
 #sSMTP sendmail的configuration文件
 #
 #所有邮件的用户名<1000
 #将其设置为空以禁用重写。
 [email protected]

 #邮件去的地方。 实际的机器名称是必需的
 #MXlogging被咨询。 通常mailhosts被命名为mail.domain.com
 mailhub = smtp.gmail.com:587

 #邮件似乎从哪里来?
 #rewriteDomain =

 #完整的主机名
主机名= somedomain.com

 #用户是否允许设置他们自己的From:地址?
 #YES  - 允许用户指定他们自己的From:地址
 #NO  - 使用系统生成的From:地址
 #FromLineOverride = YES

 [email protected]
 authpass = ****
 usestarttls = YES

我是否以明文传送我的凭证? 是调用ssmtp一个安全的操作?

谢谢。

邮件提交到smtp.gmail.com:587将失败,如果没有发出STARTTLS

 [palantir]-[/var/tmp]-[528] % nc smtp.gmail.com 587 [2:16] 220 mx.google.com ESMTP b3sm14232728ibf.7 EHLO domain.com 250-mx.google.com at your service, [67.167.112.165] 250-SIZE 35651584 250-8BITMIME 250-STARTTLS 250 ENHANCEDSTATUSCODES MAIL 530 5.7.0 Must issue a STARTTLS command first. b3sm14232728ibf.7 STARTTLS 220 2.0.0 Ready to start TLS 

对于这个用例,你的凭证必须通过TLS传输才能被发送,所以它们不会被清晰地发送出去。 但请注意,虽然这是常见的行为,但这不是必需的行为 – 服务器很可能在提交端口上不需要 TLS,也可能类似地错误地configuration客户端。

正如joschi提到的,​​你可以确定它是用任何可以捕获数据包的工具encryption的,我也想添加tcpflow作为一个build议。

除了设置UseStartTLS还应该将UseTLS设置为yes 。 见ssmtp.conf(5) 。

您还可以通过使用wiresharktcpdump嗅探stream量来检查ssmtp是否使用encryption连接。