zoukankan      html  css  js  c++  java
  • linux》centos6.1.环境下发送邮件设置

     

    转自 https://blog.csdn.net/bodybo/article/details/80817968

    一、 Sendmail安装

    在CentOS下,sendmail一般默认是随操作系统一起安装的。如果安装系统时没有安装sendmail服务,手动安装sendmail也很简单:

    # yum install -y sendmail
    # yum install -y sendmail-cf

    二、 Senmail的SMTP认证配置(不需要认证的可忽略此步)

    首先确认saslauthd服务是否安装或启动。

    安装saslauthd服务:# yum install -y saslauthd

    启动saslauthd服务:# service saslauthd start

    三、 使用带附件的功能,则还需要安装sharutils
    #yum install sharutils

    四、 配置Senmail的SMTP认证

    # vi /etc/mail/sendmail.mc

       1. dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
       2. dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

    将上面两行的dnl去掉。在sendmail文件中,dnl表示该行为注释行,是无效的,因此通过去除行首的dnl字符串可以开启相应的设置行。

    五、设置Sendmail服务的网络访问权限

    # vi /etc/mail/sendmail.mc

       1. DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl

    将127.0.0.1改为0.0.0.0,意思是任何主机都可以访问Sendmail服务。如果仅让某一个网段能够访问到Sendmail服务,将127.0.0.1改为形如192.168.1.0/24的一个特定网段地址。

    六、 生成Sendmail配置文件

    Sendmail的配置文件由m4来生成,m4工具在sendmail-cf包中。如果系统无法识别m4命令,说明sendmail-cf软件包没有安装。

    生成Sendmail的配置文件:

       1. m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf   

    需要重启Sendmail才能使配置文件生效。

    七、 Sendmail邮件域名配置

    配置sendmail使用合法的域名分两步,修改sendmail的配置文件和添加域名MX记录。

    sendmail可以直接使用 “-r account@domain.com” 参数来以任意源地址发送邮件,但目前主流的邮箱都会将源地址和反向解析IP进行比较,如果解析不到或是解析的IP不匹配,轻则将邮件直接归为SPAM,严重的就直接拒绝接收。

    MX记录(Mail Exchanger Record)主要是接收邮件时使用,即当投递一封新邮件时,会查询收件人域名的MX记录,然后通过MX记录得到的IP地址进行投递。同时邮件厂商在接收邮件的时候也会将源地址和MX记录进行比较,作为垃圾邮件的判断标准之一。

    第一步:添加域名

    (1) 将域名加入到local-host-names文件

    # vi /etc/mail/local-host-names,添加

       1. yaokj.com

    (2) 修改submit.cf文件

    # vi /etc/mail/submit.cf,找到行 #Dj$w.Foo.COM,修改为

       Djyaokj.com

    至此,sendmail邮件命名配置完毕,重启sendmail使配置生效。
    # service sendmail restart

    八、测试:
        1.如何写一般的邮件: mail test@126.com  Cc 编辑抄送对象,Subject:邮件主题,输入回车,邮件正文后,按Ctrl-D结束

        2.快速发送方式: echo “邮件正文” | mail -s 邮件主题 test@126.com

        3.以文件内容作为邮件正文来发送: mail -s test test@126.com < test.txt
        4.发送带附件的邮件:# mail -s Test -a test.txt yaokangjun@foxmail.com 输入回车,邮件正文后 按Ctrl-D结束

     

    补充如下:一定不要忘了发件人开启第三方的密码认证,我这里用的是qq使用stmp协议

     

    [root@mysql-master local]# vim /etc/mail.rc
    set from=XXXXXX@qq.com  # 发送邮箱的地址,可以是你的邮箱账号
    
    set smtp=smtp.qq.com  #发件邮箱服务器地址 set smtp-auth-user=XXXXX@qq.com  #邮箱账号
    set smtp-auth-password=xxxxxxxxxxxxxxx  #注意:这里填的是邮箱授权码,不是qq密码; set smtp-auth=login set smtp-use-starttls set ssl-verify=ignore set nss-config-dir=/etc/pki/nssdb/

    ---------------------------------------------------------------------
    网易客户端配置
    set from=xxxxxxxxx@163.com set smtp=smtp.163.com set smtp-auth-user=xxxxxxxxxxx@163.com set smtp-auth-password=xxxxxxxxx set smtp-auth=login set smtp-use-starttls set ssl-verify=ignore set nss-config-dir=/etc/pki/nssdb/

    9

    发送多人空格隔开

     echo "this is my test mail" | mail -s 'mail test'  XXX@qq.com XXXX@qq.com XXXXXX@qq.com

    一点点学习,一丝丝进步。不懈怠,才不会被时代淘汰
  • 相关阅读:
    转:git上传本地项目到github
    转:git常用操作
    idea常用快捷键
    转:spring中InitailizingBean接口的简单理解
    resulting in duplicate entry '1' for key 'primary'
    Uncaught SyntaxError: Unexpected identifier
    This application has no explicit mapping for /error, so you are seeing this as a fallback.
    启动web项目报错:The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone.
    解决 "Could not autowire. No beans of 'SationMapper' type found" 的问题
    javascript 判断系统设备
  • 原文地址:https://www.cnblogs.com/wangbiaohistory/p/10850959.html
Copyright © 2011-2022 走看看