http://www.centoscn.com/CentosServer/lighttpd/2013/0726/650.html

sendmail是Linux下优秀的邮件系统。在不做任何设定的情况下,sendmail发出邮件的邮箱源地址形如userid@localhost.localdo,这种地址几乎会被所有的邮箱认定为SPAM(垃圾邮件)或直接拒收。

1、 Sendmail安装

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

view plain   copy
  1. # yum install -y sendmail

  2. # yum install -y sendmail-cf

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

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

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

启动saslauthd服务:# service saslauthd start

(1) 配置Senmail的SMTP认证

# vi /etc/mail/sendmail.mc

view plain   copy
  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字符串可以开启相应的设置行。

(2) 设置Sendmail服务的网络访问权限

# vi /etc/mail/sendmail.mc

view plain   copy
  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的一个特定网段地址。

3、 生成Sendmail配置文件

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

生成Sendmail的配置文件:

view plain   copy
  1. m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

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

4、 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,添加

view plain   copy
  1. sunchis.com

(2) 修改submit.cf文件

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

view plain   copy
  1. Djsunchis.com

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

第二步:添加域名MX记录

找到修改域名信息的页面(不同的域名注册商页面不相同),修改结果因域名商的不同最迟会在24小时内生效。

(1) 添加域名A记录mail,直接指向你的邮件服务器的静态IP地址:

(2) 添加(或是修改)域名的MX记录,形如:

(3) 使用nslookup检测MX记录是否能正确解析到邮件服务器

view plain   copy
  1. # nslookup

  2. > set q=mx

  3. > sunchis.com

  4. Server:         8.8.8.8

  5. Address:        8.8.8.8#53

  6. Non-authoritative answer:

  7. sunchis.com  mail exchanger = 10 mail.sunchis.com.

  8. Authoritative answers can be found from:

  9. >

OK,已经正确解析到邮件服务器所对应的域名。

5、 Relaying denied(拒绝投递)的解决

出现 550 5.7.1 <xxx@163.com>... Relaying denied. IP name lookup failed [192.168.1.133] 异常时,原因是把sendmail当做邮件中转站,需要将客户端的IP地址加入到access配置文件中。

# vi /etc/mail/access,添加

view plain   copy
  1. Connect:192.168.1.133                   RELAY

重新生成访问权限的数据库:

view plain   copy
  1. # cd /etc/mail/

  2. # makemap hash access.db < access

这样,问题就会得到解决.

sendmail是Linux下优秀的邮件系统。在不做任何设定的情况下,sendmail发出邮件的邮箱源地址形如userid@localhost.localdo,这种地址几乎会被所有的邮箱认定为SPAM(垃圾邮件)或直接拒收。

、 Sendmail安装

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

view plain   copy
# yum install -y sendmail
# yum install -y sendmail-cf
、 Senmail的SMTP认证配置(不需要认证的可忽略此步) 首先确认saslauthd服务是否安装或启动。 安装saslauthd服务:# yum install -y saslauthd 启动saslauthd服务:# service saslauthd start () 配置Senmail的SMTP认证 # vi /etc/mail/sendmail.mc view plain copy
dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
将上面两行的dnl去掉。在sendmail文件中,dnl表示该行为注释行,是无效的,因此通过去除行首的dnl字符串可以开启相应的设置行。 () 设置Sendmail服务的网络访问权限 # vi /etc/mail/sendmail.mc view plain copy
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
将127.0.0.1改为0.0.0.,意思是任何主机都可以访问Sendmail服务。如果仅让某一个网段能够访问到Sendmail服务,将127.0.0.1改为形如192.168.1./24的一个特定网段地址。 、 生成Sendmail配置文件 Sendmail的配置文件由m4来生成,m4工具在sendmail-cf包中。如果系统无法识别m4命令,说明sendmail-cf软件包没有安装。 生成Sendmail的配置文件: view plain copy
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记录进行比较,作为垃圾邮件的判断标准之一。 第一步:添加域名 () 将域名加入到local-host-names文件 # vi /etc/mail/local-host-names,添加 view plain copy
sunchis.com
() 修改submit.cf文件 # vi /etc/mail/submit.cf,找到行 #Dj$w.Foo.COM,修改为 view plain copy
Djsunchis.com
至此,sendmail邮件命名配置完毕,重启sendmail使配置生效。 转自:http://www.sunchis.com/html/os/linux/2012/0503/407.html

CentOS sendmail安装及邮件域名配置的更多相关文章

  1. Nginx-------Nginx的安装和多域名配置

    Nginx安装 centos6.x yum默认没有nginx的软件包 安装方式: 到nginx下载页面http://nginx.org/en/linux_packages.html#stable,复制 ...

  2. 基于 CentOS Mysql 安装与主从同步配置详解

    CentOS Mysql 安装 Mysql (Master/Slave) 主从同步 1.为什么要使用主从同步 1.如果主服务器出现问题,可以快速切换到从服务器提供的服务 2.可以在从服务器上执行查询操 ...

  3. Centos下安装Docker,并配置国内docker源

    Centos下安装Docker 替换为国内的yum源(可选): mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.re ...

  4. 【DevOps】在CentOS中安装Rancher2,并配置kubernetes集群

    准备 一台CentOS主机,安装DockerCE,用于安装Rancher2 一台CentOS主机,安装DockerCE,用于安装kubernetes集群管理主机 多台CentOS主机,安装Docker ...

  5. CentOS 6 安装 Python3.5以及配置Django

    http://www.jianshu.com/p/6199b5c26725 文/FiveStrong(简书作者)原文链接:http://www.jianshu.com/p/6199b5c26725著作 ...

  6. virtualbox下centos虚拟机安装,并网卡配置桥接方式上网,使得和host可以互Ping通。

    见:http://www.cnblogs.com/taoshiqian/p/7615993.html 注意: 1.host 主机什么都不要处理 2.将virtualbox 的对应虚拟机网络设置桥接 3 ...

  7. CentOS上安装分布式文件系统FastDFS & 配置和问题解决

    原文:https://my.oschina.net/wangmengjun/blog/1142982 什么是FastDFS? FastDFS是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件 ...

  8. CentOS 7安装/卸载Redis,配置service服务管理

    Redis简介 Redis功能简介 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 相比于传统的关系型数据库,Redis的存储方式是key-va ...

  9. centos 7 安装solr7.3.0 配置mysql

    1.下载solr :wget http://archive.apache.org/dist/lucene/solr/7.3.0/solr-7.3.0.tgz   或者去官网自己下:http://arc ...

随机推荐

  1. python3开发进阶-Django视图(View)的常见用法

    阅读目录 简述Django的View(视图) CBV和FBV Request对象和Response对象 Django组件(render,redirect)详解 一.简述Django的View(视图) ...

  2. 找出分数最高的前两个学生 Exercise05_09

    import java.util.Scanner; /** * @author 冰樱梦 * 时间:2018年下半年 * 题目:找出分数最高的前两个学生 * */ public class Exerci ...

  3. Scala实战高手****第15课:Scala类型参数编程实战及Spark源码鉴赏

    1.Scala的类和方法.函数都可以是泛型 2.上界:表示泛型的类型必须是某种类型或者其类型的子类,语法:<: ,对类型进行限定 3.下界:表示泛型的类型必须是某种类型或者其类型的父类,语法:& ...

  4. IO 流(InputStream,OutputStream)

    1. InputStream,OutputStream都是抽象类,所以不能创建对象. 1个中文占两个字节 package com.ic.demo01; import java.io.File; imp ...

  5. React Native之iOS App打包

    iOS打包步骤(一.二.三可不按照顺序) 步骤一: 选择iOS Device(以下两者选其中一个即可) 选择 Generic iOS Device (个人建议使用这个) 选择Generic iOS D ...

  6. Swift中TableViewCell便利构造器写法

    目前为止比较方便的一种方法,如果有更好的写法请通知我,谢谢!

  7. JAVA call graphs JAVA调用图

    https://github.com/gousiosg/java-callgraph Programs for producing static and dynamic (runtime) call ...

  8. 通俗解释遗传算法及其Matlab实现

    早上再看一个APP推荐的文章,发现的. (1)初识遗传算法 遗传算法,模拟达尔文进化论的自然选择和遗传学机理的生物进化过程的计算模型,一种选择不断选择优良个体的算法.谈到遗传,想想自然界动物遗传是怎么 ...

  9. mac上虚拟机:VMWare Fusion, VirtualBox, Parallels Desktop, CrossOver, Veertu

    作者:Louis Tong链接:https://www.zhihu.com/question/35731328/answer/66127970来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非 ...

  10. Windows 2008 R2

    1简介 Windows 2008 R2是微软针对windows 7所推出的Windows server操作系统.为了使企业减少操作成本和提高效率,Windows Server 2008 R2对企业资源 ...