通过配置,在服务器本身发送邮件的时候,通过外部的邮箱服务器发送,如163,QQ邮箱等。
1.查看是否安装mailx,未安装则安装mailx
使用rpm命令查看
root@host1 script]# rpm -qa mailx
mailx-12.4-8.el6_6.x86_64
#显示已经安装,未安装使用下边命令
yum install mailx -y
2.配置mailx的smtp服务器
163邮箱,QQ邮箱都可以的,PS:记得要进邮箱打开SMTP
vi /etc/mail.rc //如果不存在,则编辑/etc/nail.rc
在文件的末尾加入下面代码,相应帐号密码填写自己的帐号密码
set from="xxx@163.com"
set smtp=smtp.163.com
set smtp-auth-user=xxx
set smtp-auth-password=邮箱密码
set smtp-auth=login
example:
cat >>/etc/mail.rc
set from="用户名@163.com"
set smtp=smtp.163.com
set smtp-auth-user=用户名@163.com #注意后边要有@163.com的后缀
set smtp-auth-password=邮箱密码
set smtp-auth=login
EOF
3.使用mailx发送邮件测试是否可以
发件人名称可不添加,第二步已配置过
假设邮件内容存储于mesg文件中,那么可以用如下2个方法:
mailx -s "发件人名称 邮件标题" xxx@163.com < mesg
cat mesg | mailx -s "发件人名称 邮件标题" xxx@163.com
多个收件人之间用逗号分隔:
cat mesg | mailx -s "发件人名称 邮件标题" xxx@163.com,xxx2@163.com,xxx3@163.com
也可以直接从命令行输入邮件内容:
mailx -s "发件人名称 邮件标题" xxx@163.com ##输入完后回车按Ctrl+D提交发送
echo hello word | mailx -v -s " title" xxx3@163.com
注意点:
记得要进邮箱打开SMTP,通过telnet25测试端口是否通。