Linux 邮件发送 sendmail mail mutt

sandmail 是Linux下自带的工具

1.sendmail mail的安装

centos 下使用查看是否已经安装

rpm -qa | grep sendmail

或者直接使用

sendmail -h

没有则使用命令安装(centos)

yum -y install sendmail

安装mailx

yum -y install mailx

启动sendmail速度过慢或者发送邮件速度慢
用 system -status sendmail 查看状态时发现下面的问题:

扫描二维码关注公众号,回复: 939324 查看本文章
Apr 11 22:39:13 controller systemd[1]: Starting Sendmail Mail Transport Agent...
Apr 11 22:39:13 controller sendmail[17405]: My unqualified host name (controller) unknown; sleeping for retry
Apr 11 22:40:13 controller sendmail[17405]: unable to qualify my own domain name (controller) -- using short name
Apr 11 22:40:13 controller sendmail[17442]: starting daemon (8.14.7): SMTP+queueing@01:00:00
Apr 11 22:40:13 controller systemd[1]: Started Sendmail Mail Transport Agent.

提示无法快速找到hostname
需要在/etc/hosts文件下添加hostname
运行hostname命令查看当前主机名
然后编辑/etc/hosts文件,在127.0.0.1这里添加主机名
再次重启sendmail发现速度快了很多,而且不在出现上面的问题。

2 发送邮件
1) 无邮件正文
mail -s “主题” 收件地址

mail -s “test” [email protected]

2) 有邮件正文
方式一:mail -s “主题” 收件地址< 文件(邮件正文.txt)

mail -s “邮件主题” [email protected] < /test.txt

方式二: echo “邮件正文” | mail -s 邮件主题 收件地址

echo “邮件正文内容” | mail -s “邮件主题” [email protected]

方式三: cat 邮件正文.txt | mail -s 邮件主题 收件地址

cat test.txt | mail -s “邮件主题” [email protected]

3) 带附件
mail -s “主题” 收件地址 -a 附件 < 文件(邮件正文.txt)

mail -s “邮件主题” [email protected] -a /test.tar.gz < test.txt

3 更改发件人别名
依赖工具

yum install -y m4 sendmail-cf

/etc/mail目录下
编辑submit.mc文件,在FEATURE(msp',[127.0.0.1]’)dnl 前添加下面的内容即可

MASQUERADE_AS(`xxx@xxxx.com')dnl
FEATURE(masquerade_envelope)dnl

问题:以上的方式发送邮件几乎都会被认为垃圾邮件,测试过新浪邮箱,163邮箱,qq邮箱
邮件发送多几次后会出现拒收情况,详情可以查看
/var/spool/mail/root文件,会有相应的返回提示

4 使用外部邮箱发送邮件
使用外部邮箱发送邮件就能解决上面垃圾邮件的问题
就是添加一个发件邮箱,需要用到mail
编辑mail.rc

vim /etc/mail.rc
set [email protected] 登陆邮箱的账号
set smtp=smtp.XXX.com 邮箱的smtp服务器,
set [email protected] 邮箱的用户名
set smtp-auth-password=Password 邮件的密码
set smtp-auth=login 认证方式:登陆

重启sendmail服务

5 使用mutt发送邮件

安装yum install -y mutt

配置全局mutt, 直接编辑 /etc/Muttrc 文件
配置用户级mutt, 复制/etc/Muttrc 到 /当前用户/.muttrc
//为root用户复制.muttrc

cp /etc/Muttrc /root/.muttrc
编辑/root/.muttrc
设备编码方式 ,防止中文乱码
set charset=”utf-8”

set envelope_from=yes #这条默认没有,请手动添加
set use_from=yes
set [email protected]
set realname=”name”

发送邮件方式与mail基本一致,只需要将mail替换成mutt即可

参考文件:

mutt: https://www.cnblogs.com/webph/p/6792207.html
mail https://www.linuxidc.com/Linux/2014-10/107946.htm

猜你喜欢

转载自blog.csdn.net/energysober/article/details/79910794
今日推荐