合 Linux环境配置QQ邮箱发送邮件
Linux环境配置QQ邮箱发送邮件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | -- 安装 yum install -y mailx -- 配置 cat > /etc/mail.rc <<"EOF" set from=646634621@qq.com #发件人 set smtp=smtps://smtp.qq.com:465 #qq邮箱的smtp server和端口 set smtp-auth-user=646634621@qq.com #发件人的用户名 set smtp-auth-password=xxxxxxxx #授权码 具体可以登录自己的QQ邮箱开启smtp并且获取到授权码 set smtp-auth=login #默认,SMTP的认证方式,默认是login,也可以改成CRAM-MD5或PLAIN方式 set smtp-use=starttls set ssl-verify=ignore #存放QQ邮箱SSL证书的位置 set nss-config-dir=/root/.certs/ EOF |
获取证书:
1 2 3 4 5 6 7 | mkdir -p /root/.certs/ echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/qq.crt certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt certutil -L -d /root/.certs cd /root/.certs/ certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i qq.crt |
发送邮件:
1 2 3 | echo '内容' | mail -s '主题' lhrbest@qq.com echo '内容' | mail -s '主题' -a '附件路径' lhrbest@qq.com echo '内容' | mail -s '主题' -a '附件路径' lhrbest@qq.com,646634621@qq.com |
-b<地址>:指定密件副本的收信人地址;
-c<地址>:指定副本的收信人地址;
-f<邮件文件>:读取指定邮件文件中的邮件;
-i:不显示终端发出的信息;
-I:使用互动模式;
-n:程序使用时,不使用mail.rc文件中的设置;
-N:阅读邮件时,不显示邮件的标题;
-s<邮件主题>:指定邮件的主题;
-u<用户帐号>:读取指定用户的邮件;
-v:执行时,显示详细的信息。
带附件发送邮件
使用mail命令
mail
命令是mailutils(On Debian)或mailx(On RedHat)包中的一部分,我们可以使用他在命令行里面发送消息。
如果你的系统没有安装mail命令,可以使用下面的方式安装:
1 2 | $ sudo apt-get install mailutils (On Debian) # yum install mailx (On RedHat or CentOS) |
现在我们来使用mail命令来发送带附件的邮件,如下:
1 | echo "这里输入你邮件内容" | mail -s "邮件标题" -a file.txt 646634621@qq.com |