美文网首页
Linux服务器发送邮件

Linux服务器发送邮件

作者: willeyao | 来源:发表于2017-05-20 15:39 被阅读0次

    一 使用mail命令发送邮件

    有以下几种发送方式:

    1. mail -s "mail subject" user@xxx.com
    2. echo "mail content" |mail -s "mail subject" user@xxx.com
    3. mail -s "mail subject" user@xxx.com<content.txt
    

    FAQ:
    阿里云服务器禁止与外网25端口通信。可通过SSL的外部SMTP服务器发送邮件。

    二 通过外部SMTP服务器发送邮件

    1 不使用SSL

    编辑 /etc/mail.rc,加入以下内容:

    set from="user@xxx.com(username)"    #发信电子邮件地址(括号内为邮件显示名称)
    set smtp=smtp.xxx.com      #发信服务器地址
    set smtp-auth=login   #认证方式
    set smtp-auth-user=user@xxx.com    #发信认证账户(一般同发信电子邮件地址)
    set smtp-auth-password=password #发信认证账户密码
    

    这个设置只适合支持非ssl链接的SMTP服务器。对于像Google这样,强制使用SSL加密连接的,可通过配置SSL来实现发送邮件。
    同时,使用SSL的SMTP端口一般为465或994,可解决阿里云屏蔽25端口不能发送邮件问题。

    2使用SSL

    1. 在装有Firefox的电脑, 将
      (Windows:%USERPROFILE%\AppData\Roaming\Mozilla\Firefox\Profiles\xxxxxxxx.default/) (Linux:~/.mozilla/firefox/xxxxxxxx.default/)目录下的*.db文件复制到/etc/mail.rc_ssl.crt/目录下。

    或下载mail.rc_ssl.crt.zip,解压到/etc目录下。链接如下:
    链接:http://pan.baidu.com/s/1jIHW6Y6 密码:9brj

    1. 编辑/etc/mail.rc,加入以下内容
    set from="user@xxx.com(username)"    #发信电子邮件地址(括号内为邮件显示名称)
    set smtp=smtps://smtp.xxx.com:465    #发信服务器地址
    set nss-config-dir=/etc/mail.rc_ssl.crt    #SSL证书保存位置
    set smtp-use-starttls    #客户端验证SSL方式 如报454异常,可注释掉该行
    set ssl-verify=ignore    #忽略SSL错误的认证
    set smtp-auth=login    #认证方式
    set smtp-auth-user=user #发信认证账户(一般同发信电子邮件地址)
    set smtp-auth-password=password #发信认证账户密码
    

    再用mail命令发送邮件即可。

    参考:
    http://www.mzone.cc/article/317.html
    https://www.yeboyzq.com/linux/xitongweihu/748.html

    相关文章

      网友评论

          本文标题:Linux服务器发送邮件

          本文链接:https://www.haomeiwen.com/subject/dyefbttx.html