linux使用mail发送外部smtp邮件
第一章 说明
参考资料:
linux自带的mail可以实现外部smtp发邮件。不需要本地配置postfix,sendmail邮件服务器,配置整套下来确实需要点时间。
环境:
IP |
主机名 |
操作系统 |
备注 |
192.168.120.130 |
db130 |
CentOS release 6.10 (Final) |
第二章 实现
2.1 关闭本机的sendmail服务或者postfix
service sendmail stop chkconfig sendmail off service postfix stop chkconfig postfix off # 需要安装这个工具 yum -y install mail
2.2 修改/etc/mail.rc
服务器地址: POP3服务器: pop.163.com SMTP服务器: smtp.163.com IMAP服务器: imap.163.com
增加一下类似N行,指定外部的smtp服务器地址、帐号密码等。
cp /etc/mail.rc /etc/mail.rc.bak.`date +%Y%m%d%H` [root@db130 ~]# cat /etc/mail.rc # 新增如下内容 ################ # add new context: set from=13439017540@163.com set smtp=smtp.163.com set smtp-auth-user=13439017540@163.com set smtp-auth-password=xxxxx set smtp-auth=login # 保存后退出,测试发送邮件 echo "hello" | mail -s "Title" 13439017540@163.com 根据网速、运营商、SMTP的情况不同,邮件发送将有延迟现象。 # 没有附件的发送 [root@db130 yum.repos.d]# echo hello word | mailx -v -s " title" 13439017540@163.com Resolving host smtp.163.com . . . done. Connecting to 220.181.12.17 . . . connected. 220 *********************************************************** >>> EHLO db130 250-mail 250-PIPELINING 250-AUTH LOGIN PLAIN 250-AUTH=LOGIN PLAIN 250-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXA 250-XXXXXXXB 250 8BITMIME >>> AUTH LOGIN 334 dXNlcm5hbWU6 >>> MTM0MzkwMTc1NDBAMTYzLmNvbQ== 334 UGFzc3dvcmQ6 >>> TFdXMTM0NTQw 235 Authentication successful >>> MAIL FROM:<13439017540@163.com> 250 Mail OK >>> RCPT TO:<13439017540@163.com> 250 Mail OK >>> DATA 354 End data with <CR><LF>.<CR><LF> >>> . 250 Mail OK queued as smtp13,EcCowAD3rB23TI9bpLofDA--.36134S2 1536117944 >>> QUIT 221 Bye [root@db130 yum.repos.d]# #带有附件的发送方式 mailx -v -s "title3" 13439017540@163.com </root/INSTALL.mysql.sh