centos使用mail发送邮件

1.安装sendmail服务
yum install sendmail
2.配置
vim /etc/mail.rc
文件尾增加以下内容
set [email protected] smtp="smtp.qq.com"
set smtp-auth-user="[email protected]" smtp-auth-password="123456"
set smtp-auth=login

说明:
from: 对方收到邮件时显示的发件人
smtp: 指定第三方发送邮件的smtp服务器地址
smtp-auth: SMTP的认证方式。默认是LOGIN,也可改为CRAM-MD5或PLAIN方式
smtp-auth-user: 第三方发邮件的用户名
smtp-auth-password: 用户名对应密码

3.重启mail服务
service sendmail start

mail --h

mail: illegal option -- -
Usage: mail -eiIUdEFntBDNHRV~ -T FILE -u USER -h hops -r address -s SUBJECT -a FILE -q FILE -f FILE -A ACCOUNT -b USERS -c USERS -S OPTION users

  1. 无邮件正文
    mail -s "主题" 收件地址
    % mail -s "测试" [email protected]
  1. 有邮件正文

mail -s "主题" 收件地址< 文件(邮件正文.txt)
% mail -s "邮件主题" [email protected] < /data/findyou.txt
echo "邮件正文" | mail -s 邮件主题 收件地址
% echo "邮件正文内容" | mail -s "邮件主题" [email protected]
cat 邮件正文.txt | mail -s 邮件主题 收件地址
% cat /data/findyou.txt | mail -s "邮件主题" [email protected]

  1. 带附件
    mail -s "主题" 收件地址 -a 附件 < 文件(邮件正文.txt)
    % mail -s "邮件主题" [email protected] -a /data/findyou.tar.gz < /data/findyou.txt

  2. 获取证书文件(25端口不通时,改为smtps 446端口发送,需要证书文件)
    mkdir -p /root/.certs/

以126邮箱为例:
echo -n | openssl s_client -connect smtp.126.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/126.crt
certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/126.crt
certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/126.crt
certutil -L -d /root/.certs
certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ~/.certs/ -i ~/.certs/126.crt

你可能感兴趣的:(centos使用mail发送邮件)