前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何在ubuntu上使用sendemail发送邮件

如何在ubuntu上使用sendemail发送邮件

作者头像
fanzhh
发布2019-08-20 11:21:17
3K0
发布2019-08-20 11:21:17
举报

如何在Ubuntu 16.04上安装配置邮件发送服务器一文中,我尝试了配置ubuntu作为电子邮件发送服务器。在使用中,发现这种发送方式很不稳定,我推测应该是发送服务器域名解析的问题。

可能的原因是,邮件发送至目标邮件服务器后,目标服务器判断发件人邮件地址与实际源邮件服务器ip地址不匹配,所以作为垃圾邮件丢弃了。今天我在ubuntu上试用sendemail在终端发送邮件,非常方便好用。

2017-12-26 update: 查看系统日志,配置ubuntu作为邮件发送服务器向126邮箱发送邮件的时候,发现以下错误信息:

代码语言:javascript
复制
host 126mx03.mxmail.netease.com[220.181.15.196] said:
  554 DT:SPM 126 mx16,xMmowABnAeR_ujtawL6qEg--.27616S2 1513863808,please see
  http://mail.163.com/help/help_spam_16.htm?
ip=222.175.171.52&hostid=mx16&time
=1513863808

经检查126邮箱退信的常见问题,出现554错误代码原因有以下几种情况:554 DT:SPM 发送的邮件内容包含了未被许可的信息,或被系统识别为垃圾邮件。请检查是否有用户发送病毒或者垃圾邮件; 554 DT:SUM 信封发件人和信头发件人不匹配; 554 IP is rejected, smtp auth error limit exceed 该IP验证失败次数过多,被临时禁止连接。请检查验证信息设置; 554 HL:IHU 发信IP因发送垃圾邮件或存在异常的连接行为,被暂时挂起。请检测发信IP在历史上的发信情况和发信程序是否存在异常; 554 HL:IPB 该IP不在网易允许的发送地址列表里; 554 MI:STC 发件人当天内累计邮件数量超过限制,当天不再接受该发件人的投信。请降低发信频率; 554 MI:SPB 此用户不在网易允许的发信用户列表里; 554 IP in blacklist 该IP不在网易允许的发送地址列表里。 证实了我的猜测。

前提

你应该有一个邮箱地址,这个邮箱可以使用smtp端口发信。因为在终端发邮件时的命令行中,要显式输入登陆smtp服务器的用户名和密码,安全性存在一定问题,所以建议你申请一个免费邮件系统。我使用的yahoo的邮件。

安装

代码语言:javascript
复制
apt-get install libio-socket-ssl-perl libnet-ssleay-perl sendemail

使用

使用方法:

代码语言:javascript
复制
sendemail -f ADDRESS [options]

参数详解:

代码语言:javascript
复制
       -f ADDRESS          # 发件人地址,注意此地址应该是你真实地址
       -t ADDRESS          # 收件人地址
       -u SUBJECT          # 主题
       -m MESSAGE          # 邮件正文
       -s SERVER[:PORT]    # SMTP服务器地址及端口
       -a FILE [FILE ...]  # 附件
       -cc ADDRESS [ADDR ...]  # 抄送地址
       -bcc ADDRESS [ADDR ...] # 暗抄送地址
       -xu USERNAME            # SMTP服务器用户名
       -xp PASSWORD            # SMTP服务器密码
       -o                      # 其它选项 

示例

如我使用yahoo邮箱作为邮件发送服务器,要把sendemail命令的使用方法作为附件发到我的信箱中:

代码语言:javascript
复制
man sendemail > sendemail.usage.txt
sendemail -f zhaohufan@yahoo.com.hk -t fanzhh@gmail.com -u "sendemail使用说明" -m "sendemail使用说明详解。" -s smtp.mail.yahoo.com -o tls=yes -xu zhaohufan@yahoo.com.hk -xp 密码 -a sendemail.usage.txt

注意:-o tls=yes选项意为服务器需要SSL验证。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017.12.25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前提
  • 安装
  • 使用
  • 示例
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档