centos邮件,centos7
大家好,关于centos邮件很多朋友都还不太明白,今天小编就来为大家分享关于centos7的知识,希望对各位有所帮助!
CentOS下邮件服务sendmail的安装及简单配置
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、postfix与sendmail的冲突问题
在Linux服务器(CentOS release 6.6)上配置好了sendmail后,测试发送邮件时发现有问题,检查sendmail服务的状态,发现其处于“sendmail dead but subsys locked”,检查发现postfix服务也在运行。只需要将postfix服务停掉即可。为什么会出现这种情况呢?Something was occasionally causing the postfix service to start which then caused the status of sendmail to jump to dead but subsys locked.两种似乎不兼容。
操作步骤:
(1):检查sendmail服务的状态
复制代码代码如下:
[root@DB-Server~]# service sendmail statussendmail dead but subsys lockedsm-client(pid 22112) is running...
(2):检查postfix服务的状态
复制代码代码如下:
[root@DB-Server~]# service postfix statusmaster(pid 1777) is running...
(3):停止postfix服务
复制代码代码如下:
[root@DB-Server~]# service postfix stopShutting down postfix: [ OK ]
(4):重新启动sendmail服务
复制代码代码如下:
[root@DB-Server~]# service sendmail stopShutting down sm-client: [ OK ]Shutting down sendmail: [FAILED][root@DB-Server~]# service sendmail stop[root@DB-Server~]# service sendmail startStarting sendmail: [ OK ]Starting sm-client: [ OK ]
(5):禁用postfix在reboot后自动启动
检查一下是否有设定 postfix在 reboot后自动启动
复制代码代码如下:
chkconfig--list| grep postfix
chkconfig postfix off
LINUX下如何搭建邮件服务器
可以使用U-Mail邮件服务器
步骤如下:
1、下载U-Mail邮件系统forCentOS(6.X)一体盘
请去下载U-Mail邮件服务器最新版本。
2、解析好域名,将域名的MX记录和的A记录解析到邮件服务器的IP地址。
MX记录和A记录解析方法参考:
如果是将邮件服务器放置在内网,通过端口映射的方式将外网IP的服务端口映射到内网,那么必须映射端口:25、110、80等。
3、将BIOS启动方式设置为光驱启动,并放入U-MailforCentOS(6.X)一体盘光盘
4、出现安装界面后,按回车键
5、设置TCP/IP参数(使用Tab键切换,空格键选择),选择如下图,按“OK”按钮。
6、设置IP地址、子网掩码、网关和DNS等参数(请根据自己的网络环境设置这些参数),如下图。按“OK”按钮。
7、点击“Yes,discardanydata”按钮进行初始化磁盘(如磁盘中有重要数据,请先备份再操作),如下图:
8、设置root密码,点击“下一步”
9、设置分区,这里我们选择自动分区(用户可以自定义分区,一般建1个boot分区,1个swap分区和1个根分区),点击“下一步”,如下图:
10、直接点击“下一步”,如下图:
11、直接点击“下一步”:
12、选择默认的GRUB引导装载程序,并点击“下一步”,如下图:
13、开始安装系统
14、出现安装完成界面,点击“重新引导”重启服务器
15、重启好后,输入root帐号和密码登录系统,如下图:
Centos系统sendmail发送邮件很慢怎么办
安装sendmail服务器的很简单,只需输入以下命令即可:
yum install sendmail
这个时候依然无法发邮件,还得修改一下php.ini的配置,调用sendmail功能
第一步:输入 vi/usr/local/php/etc/php.ini
第二步:找到有关sendmail_path的那一行,按i键,然后就可以修改代码了,
第三步:去掉行首注释(分号;),并改成:sendmail_path=/usr/sbin/sendmail-t–i
第四步:按 Esc键——shift+q——wq(保存退出的意思)
第五步:重启vps 命令: reboot
重启完毕后可以发邮件了,但速度很慢,此时可以输入如下命令查看一下解析文件:cat/etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
199.193.248.26 wenran
因为sendmail监听的是127.0.0.1,但却无法确认主机名weimtv(因为在服务器上/etc/sysconfig/network文件里记录的HOSTNAME是 wenran),所以发送邮件就非常慢了。那么我就把 wenran这个主机名同时也加到127.0.0.1上面,变成:
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost wenran
199.193.248.26 wenran
修改方法依然是用vi命令,
然后重启sendmail服务:service sendmail restart