Share&Joy

Ginger' Blog


  • 首页
  • 归档
  • 标签
  •   

© 2018 1-riverfish

Theme Typography by Makito

Proudly published with Hexo

通过命令行发送邮件

发布于 2018-10-13 mail 

通过命令行发送邮件

电子邮件原理

搭建步骤

  1. 关闭本机的sendmail/postfix服务(postfix是为了解决sendmail的一些缺点而推出的替代品)

发件人信息为我们指定的运行Postfix的主机名,这会导致一个非常严重的后果,就是QQ或者163邮箱会把这封邮件当做垃圾邮件放到垃圾箱,甚至我们发送的邮件会被当做垃圾邮件屏蔽掉

1
2
3
4
5
6
7
# sendmail (实际上sendmail已经没人用了)
# 卸载
sudo apt --purge remove sendmail

# postfix
# 卸载
sudo apt --purge remove postfix
  1. 安装替代postfix/sendmail的邮件客户端heirloom-mailx

    1
    2
    # 安装heirloom-mailx
    sudo apt install heirloom-mailx
  2. 修改邮件客户端对应的配置文件

    /etc/s-nail.rc

    1
    2
    3
    4
    5
    set from=xxx@163.com  
    set smtp=smtp.163.com
    set smtp-auth-user=xxx # 这里填不带@163.com的用户名
    set smtp-auth-password=123456 # 这里填 SMTP口令,非邮箱账户密码
    set smtp-auth=login
  3. 测试

    1
    2
    echo "你好" | mail -s "测试" 123456@qq.com
    # 注意邮件标题不要含有 test,这是因为126163邮箱的反垃圾机制

注意,邮件的主题不能是 IP 或 test 等词,最好用中文的”通知”等,不然会被当做垃圾邮件屏蔽掉.

分享到 

 上一篇: 《Linux命令行与Shell脚本编程大全》笔记Ch11 下一篇: Shell脚本入门 

© 2018 1-riverfish

Theme Typography by Makito

Proudly published with Hexo