• mailx配置TSL发送邮件


    mailx配置TSL发送邮件

    如果是云服务器则需申请解封25端口

    进入正题:

    一、配置mailx使用SMTP发送邮件:
    1、安装mailx;这里直接使用yum install mailx -y 进行安装即可;
    2、在/etc/mail.rc配置文件中,在最后面输入以下内容:

    1 set from="xxx@qq.com"
    2 set smtp=smtp.qq.com
    3 set smtp-auth-user=xxx
    4 set smtp-auth-password=邮箱授权码    #qq邮箱->设置 -> 账户
    5 set smtp-auth=login

    配置都很简单,这里就不多说了,有两点需要注意的:

    邮箱需要开启SMTP功能,每个邮箱的开启方法都大同小异;
    现在大部分邮箱使用SMTP会让你启动一个授权码来代替邮箱密码
    具体各个邮箱开启授权码的方式可以直接百度;
    二、获取证书

    1 mkdir -p /root/.certs/
    2 echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/qq.crt
    3 certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
    4 certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
    5 certutil -L -d /root/.certs

    返回如下提示即可:

    1. **Notice: Trust flag u is set automatically if the private key is present.**

    按照上面操作,只要不报错,就是正常的,我们会在/root/.certs下面看到几个证书文件,说明操作成功了;至于为什么

    要这么做,不要问我,我也是COPY大神的办法;

    证书配置好了,下面我们就要来配置mail.rc配置文件了,和最开始的不同,这里我们就需要配置和TSL相关的东西了

    set from=xxxooo@qq.com
    set smtp=smtps://smtp.qq.com:465
    set smtp-auth-user=xxxooo@qq.com
    set smtp-auth-password=你的授权码
    set smtp-auth=login
    set smtp-use-starttls 
    set ssl-verify=ignore
    set nss-config-dir=/root/.certs

    至此,已经完成了 mailx 结合 QQ 邮箱发送系统邮件的部署了,通过命令行发送测试邮件试试吧:

    1 echo "测试邮件" | mail -s "测试"  xxxx@qq.com

     三 发送邮件

    1 echo "这里输入你邮件内容" | mailx -s "邮件标题" -a file.txt  xxx@qq.com
    2 mail -s "邮件标题" -a file.txt xxxx@qq.com  <  message.txt
    3 -s  标题
    4 -a  附件

     

  • 相关阅读:
    nginx文件类型错误解析漏洞
    js 获取URL中的参数并转换为对象
    postman
    php curl参数详解
    php 两变量值互换 方法
    PHP 命名空间与spl_autoload_register() 自动加载机制
    php命名大小问题
    PHP实现冒泡排序
    使用 PHPStorm + Xdebug 实现断点调试(二)
    TSPL学习笔记(2):过程和变量绑定
  • 原文地址:https://www.cnblogs.com/doufy/p/11014778.html
Copyright © 2020-2023  润新知