概念解释邮件用户代理6.6,自带sendmail命令
概念解释
电邮用户代理(MUAlinux收发邮件命令大全linux公社,MailUserAgent)
电邮传送代理(MTA,MailTransportAgent)
电邮分发代理(MDA,MailDeliverAgent)
mail命令和mailx命令即为负责查看、编写短信和向MTA发送短信的MUA。mailx是mail的功能强化版。
sendmail即为负责电邮在网路上传输的MTA,将电邮从一个MTA传送至另一个MTA。
本人使用的是CentOS6.6,自带了mail、sendmail命令。经测试,邮箱可以收到电邮,可能会被拦截装入垃圾电邮,多尝试几次后,前面几次每次都可以收到了,恐怕是被防火墙辨识为可信。
163邮箱是直接被拦截,啥都不显示,垃圾电邮也没有。
mail命令
1.直接使用shell当编辑器
mail -s "Dreamhj Test Mail" xxxxxxxx@qq.com
hello i m xx
welcome to www.dreamhj.com
第一行是输入的命令,-s表示短信的主题,前面的则是短信的接收人,输入完这行命令后回车,会步入电邮正文的编撰,我们可以输入任何文字linux收发邮件命令大全,例如前面的两行。当电邮正文输入完成后,须要按CTRL+D结束输入,此时会提示你输入Cc地址,即电邮抄送地址,没有直接回车就完成了电邮的发送。
收到的电邮发信人格式为:root@hjcentos.localdomain
2.使用管线进行短信发送
echo“helloimxx”|mail-s“DreamhjTestMail”
3.使用文件进行短信发送
mail-s“Hellofrombyfile”<mail.txt
由于mail程序本身就是调用sendmail来进行短信发送的,sendmail会使用本地服务器的hostname进行发件人填写,通常为root@xxxx.localdomain格式,而且主流的短信服务提供协会拦截这些电邮。
解决办法:我们可以配置mail命令使用外部SMTP服务linux游戏,下边用163邮箱为例:
vim/etc/mail.rc
在末尾添加如下配置:
set from=邮箱用户名@163.com
set smtp=smtp.163.com
set smtp-auth-user=邮箱用户名
set smtp-auth-password=密码
set smtp-auth=login
mail-s“Dreamhj”
去收件箱查看,发觉短信发件人变为:
发送附件,直接加-a参数即可
mail-s“Dreamhj”-a/root/test.txt<test.txt
短信过滤
短信服务提供商可能会通过SPF、DKIM、DMARC、逆向地址解析等技术来过滤垃圾电邮。