CentOS sendmail安装及邮件域名配置
http://www.centoscn.com/CentosServer/lighttpd/2013/0726/650.html
sendmail是Linux下优秀的邮件系统。在不做任何设定的情况下,sendmail发出邮件的邮箱源地址形如userid@localhost.localdo,这种地址几乎会被所有的邮箱认定为SPAM(垃圾邮件)或直接拒收。
1、 Sendmail安装
在CentOS下,sendmail一般默认是随操作系统一起安装的。如果安装系统时没有安装sendmail服务,手动安装sendmail也很简单:
# yum install -y sendmail
# 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
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字符串可以开启相应的设置行。
(2) 设置Sendmail服务的网络访问权限
# vi /etc/mail/sendmail.mc
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的配置文件:
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,添加
sunchis.com
(2) 修改submit.cf文件
# vi /etc/mail/submit.cf,找到行 #Dj$w.Foo.COM,修改为
Djsunchis.com
至此,sendmail邮件命名配置完毕,重启sendmail使配置生效。
第二步:添加域名MX记录
找到修改域名信息的页面(不同的域名注册商页面不相同),修改结果因域名商的不同最迟会在24小时内生效。
(1) 添加域名A记录mail,直接指向你的邮件服务器的静态IP地址:

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

(3) 使用nslookup检测MX记录是否能正确解析到邮件服务器
# nslookup
> set q=mx
> sunchis.com
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
sunchis.com mail exchanger = 10 mail.sunchis.com.
Authoritative answers can be found from:
>
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,添加
Connect:192.168.1.133 RELAY
重新生成访问权限的数据库:
# cd /etc/mail/
# 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安装及邮件域名配置的更多相关文章
- Nginx-------Nginx的安装和多域名配置
Nginx安装 centos6.x yum默认没有nginx的软件包 安装方式: 到nginx下载页面http://nginx.org/en/linux_packages.html#stable,复制 ...
- 基于 CentOS Mysql 安装与主从同步配置详解
CentOS Mysql 安装 Mysql (Master/Slave) 主从同步 1.为什么要使用主从同步 1.如果主服务器出现问题,可以快速切换到从服务器提供的服务 2.可以在从服务器上执行查询操 ...
- Centos下安装Docker,并配置国内docker源
Centos下安装Docker 替换为国内的yum源(可选): mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.re ...
- 【DevOps】在CentOS中安装Rancher2,并配置kubernetes集群
准备 一台CentOS主机,安装DockerCE,用于安装Rancher2 一台CentOS主机,安装DockerCE,用于安装kubernetes集群管理主机 多台CentOS主机,安装Docker ...
- CentOS 6 安装 Python3.5以及配置Django
http://www.jianshu.com/p/6199b5c26725 文/FiveStrong(简书作者)原文链接:http://www.jianshu.com/p/6199b5c26725著作 ...
- virtualbox下centos虚拟机安装,并网卡配置桥接方式上网,使得和host可以互Ping通。
见:http://www.cnblogs.com/taoshiqian/p/7615993.html 注意: 1.host 主机什么都不要处理 2.将virtualbox 的对应虚拟机网络设置桥接 3 ...
- CentOS上安装分布式文件系统FastDFS & 配置和问题解决
原文:https://my.oschina.net/wangmengjun/blog/1142982 什么是FastDFS? FastDFS是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件 ...
- CentOS 7安装/卸载Redis,配置service服务管理
Redis简介 Redis功能简介 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 相比于传统的关系型数据库,Redis的存储方式是key-va ...
- 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 ...
随机推荐
- POJ 3168 Barn Expansion (几何基础)
[题目链接] http://poj.org/problem?id=3168 [题目大意] 给出一些矩形,没有相交和包含的情况,只有相切的情况 问有多少个矩形没有相切或者边角重叠 [题解] 我们将所有的 ...
- 微服务之SpringCloud实战(一):SpringCloud简介
什么是微服务架构 微服务架构就是系统架构设计的一种风格,它主旨将一个独立的系统,拆分成各个微服务,各个微服务独立运行,他们之间通过Http的Restful API进行通信,拆分出来的微服务是根据原系统 ...
- Java概述--Java开发实战经典
1)Java有三个发展方向,分别是Java SE,Java EE,Java ME.以下简要介绍. a.Java SE,Java Standard Edition(java标准版),包含了构成java语 ...
- 集群Cluster介绍
来源:http://www.ibm.com/developerworks/cn/linux/cluster/lw-clustering.html简单的说,集群(cluster)就是一组计算机,它们作为 ...
- SpringBoot下文件上传与下载的实现
原文:http://blog.csdn.net/colton_null/article/details/76696674 SpringBoot后台如何实现文件上传下载? 最近做的一个项目涉及到文件上传 ...
- linux如何启动/停止/重启MySQL
如何启动/停止/重启MySQL 一.启动方式 1.使用 service 启动:service mysqld start2.使用 mysqld 脚本启动:/etc/inint.d/mysqld star ...
- 【Git】GitHub for Windows使用(1)
目录 1.下载GitHub for windows 客户端 2.注册GitHub 3.启动windows端客户端,登录帐号 4.了解Git客户端,从而了解Git的大体功能 5.创建一个新的资源库 6 ...
- python3读取html文件
# htmlf=open('E:\\test2.html','r',encoding="utf-8") # htmlcont=htmlf.read() # print(type(h ...
- solr6.6 导入 pdf/doc/txt/json/csv/xml文件
文本主要介绍通过solr界面dataimport工具导入文件,包括pdf.doc.txt .json.csv.xml等文件,看索引结果有什么不同.其实关键是managed-schema.solrcon ...
- python 推导式(Comprehensions)
一.介绍 列表推导(list comprehensions) 这是一种将for循环.if表达式以及赋值语句放到单一语句中的一种方法.换句话说,你能够通过一个表达式对一个列表做映射或过滤操作. 一个列表 ...