linux下的sendmail如何配置??

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下的sendmail如何配置??相关的知识,希望对你有一定的参考价值。

如何配置sednmail详细资料

sendmail的功能强大,配置起来也十分繁琐。本例仅介绍如何架设小型的局域网电子邮局。
1、设置sendmail 作为守卫进程(daemon)启动
可以使用以下命令来确认 sendmail 是否已经启动:ps –A|grep sendmail
如果启动了 sendmail,那么这个命令将显示出它的相关信息。如果没有启动,则需要在/etc/rc.d/rc.net 文件中加上如几行代码:
if [-f /usr/lib/sendmail ];
then(cd /usr/spool/mqueue;rm –f if *)
/usr/lib/sendmail-bd-qlh;echo –n ‘sendmail’>/dev/console
fi
2、设置sendmail.cf
sendmail.cf是sendmail的配置文件。在安装了 Linux 系统之后,它将自动生成一个适合本系统使用的 sendmail.cf 文件,位于/etc/sendmail.cf
3、开启SMTP、POP 端口
在默认情况下,SMTP 端口是打开的,而 POP端口是关闭的,我们必须将它打开:
1)用 root(超级权限)登录到服务器上;
2)编辑文件/etc/inetd.conf;
3)找到描述 POP 端口的语句:#pop3 stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.pop3d
4)将 POP3的描述语句那一行的注释号“#”去掉。
5)如果没有找到,就手工补上这一行;(另外,我们还可以验证一下是否存在 SMTP端口的描述语句) ;
6)存盘后退出。
7)运行 inetd 命令,使得设置生效。
8)用以下命令验证,看 POP3 端口是否打开(生效):netstat –a |grep pop
如果打开的话,可以看到以下信息:tcp 0 0 *:pop3 *:* LISTEN
4、为新用户开E-Mail 帐号
在 Linux 中开设 E-Mail 帐号十分简单,只要在 Linux 系统中新增一个用户即可。该用户帐号和密码就是E-Mail 的帐号和密码。如:为新用户 guest 开一个E-Mail帐号,用以下命令即可:
adduser guest passwd guest
这样,该新用户的 E-Mail 地址就是:guest@fddu2000.com ;密码为:guest
5、为E-Mail 帐号设置别名
如果某个用户想使用多个 E-Mail 地址,可通过设置别名的方法来实现。比:用户“杜
方冬”想同时拥有 E-Mail 地址:dfd@fddu2000.com ;fddu@fddu2000.com ;fddu2000@fddu2000.com
就可通过以下步骤来实现这样的别名设置:
1)以 root 登录服务器;
2)新增一个账号 dfd;
3)编辑文件/etc/aliases,加上两行:
fddu:dfd
fddu2000:dfd
4)存盘退出;
5)执行命令: newaliases
这样,用户杜方冬就拥有三个邮件地址,杜方冬只需使用一个E-Mail 帐号:dfd@fddu2000.com就可以接收所有寄给以上三个E-Mail 邮件地址的电子邮件。
6、邮箱空间的限定
如果你想控制用户邮箱空间的大小,可以对它进行限定。实现方法是利用磁盘限额功能来实现的。电子邮件的暂存空间是在/var/spool/mail 目录下,只要通过磁盘限额设定每一个用户在这个目录下能使用的最大空间就可以了。
参考技术A 一楼的存混子二楼的还贴点边不过也是粘贴复制来的在Linux下架设sendmail太复杂了一句二句说不明建议去 http://linux.chinaunix.net/看看更建议买本《鸟哥的私房菜服务器架设篇》看看 参考技术B 要看你是是用源码编译(tar) 还是rpm 包 相对rpm简单些!! 参考技术C 下面这两项工作是必须要准备好的:

  1、安装RedHat7.3,缺省安装即可,但是要保证选装了sendmail

  2、下载qpopper4.0.3.tar.gz,这个是pop3服务器的源码。(在网上搜索一下,很多的)

  开始计时

  1、复制qpopper4.0.3.tar.gz到/usr/local/src

  2、tar zxvf qpopper4.0.3.tar.gz 释放压缩文件

  3、cd qpopper4.0.3 进入子目录
参考技术D 在linux下配置sendmail邮件服务器其实很简单具体:1cd /etc/xinetd.d2ls查看有没有ipop3和imap协议3编辑vi /etc/xinetd.d/ipop3 把里面的disable=yes改为disable=no4编辑vi /etc/xined.d/imap 把里面的disable=yes改为diable=no5测试一下pop3和imap telnet localhost 110(pop3邮局协议的端口) telnet localhost 143(imap端口)退出的时候都用ctl+]然后回车在输入quit即可(测试后要记得重启xinetd服务)6编辑vi /etc/mail/sendmail.mc7把里面的 dnl TRUST_AUTH_MECH(.........)和dnl define(`confAUTH_MECHANISMS`,.........)前面的dnl去了8在添加两条DAEMON_OPTIONS(`port=25,name=MTA`)dnl和DAEMON_OPTIONS(`port=587,name=MSA,m=Ea`)dnl9在DAEMON_OPTIONS(`port=smtp,Addr=127.0.0.1,name=smTA`)dnl和DAEMON_OPTIONS(`accept_Unres,Olvale_domains`)dnl前面加上dnl 来源: www.3326.com 10测试一下MTA telnet localhost 25回车输入ehlo test回车看见AUTH=..250说明成功退出和上面的一样11做输入重定向m4 /etc/mail/sendmail.mc>/etc/mail/sendmail.cf12重启sendmail服务service sendmail restart13编辑 vi/etc/mail/access把允许转发的用户的IP或域名添加上去比如允许192.168.10.10的计算机通过编辑vi /etc/mail/access在里面加上192.168.10.10 RELAY 或是OK(允许转发与通过)14编辑vi /etc/mail/local-host-names把邮件服务器使用的域名给添加上去15在做 DNS的时候要在正向解析上添加一个 IN MX 5(参数是设优先级的)16重器一下sendmail服务

OTRS工单管理系统安装配置Sendmail

(一)、环境
系统:CentOS7.4
Sendmail安装
OTRS:6.0.18

(二)sendmail安装与配置
sendmail是linux系统中一个邮箱系统,如果我们在系统中配置好sendmail就可以直接使用它来发送邮箱。
sendmail的配置文件:
/etc/mail/sendmail.cf :Sendmail的主配置文件;
/etc/mail/access :中继访问控制;
/etc/mail/domaintable ;域名映射;
/etc/mail/local-host-names ;本地主机别名;
/etc/mail/mailertable :为特定的域指定特殊的路由规则;
/etc/mail/virtusertable :虚拟域配置。
中继的配置
是指一台服务器接受并传递源地址和目的地址都不是本服务器的邮件。
在两个文件中进行设置:
/etc/mail/relay-domains
/etc/mail/access

1、sendmail安装

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

2、创建自定义服务启动。

systemctl enable sendmail
systemctl enable sendmail

3、sendmail配置SMTP认证
将下面两行内容前面的dnl去掉。在sendmail文件中,dnl表示该行为注释行,是无效的,因此通过去除行首的dnl字符串可以开启相应的设置行。
先备份在编辑

 cp /etc/mail/sendmail.rc /etc/mail/sendmail.rc.bak
vim /etc/mail/sendmail.mc
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN‘)dnl
define(`confAUTH_MECHANISMS‘, `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN‘)dnl

4、设置Sendmail服务的网络访问权限(如果是直接本机调用,可以不用操作,采用默认的127.0.0.1。不过最后还是改成0.0.0.0)
将127.0.0.1改为0.0.0.0,意思是任何主机都可以访问Sendmail服务。
如果仅让某一个网段能够访问到Sendmail服务,将127.0.0.1改为形如192.168.1.0/24的一个特定网段地址。

[[email protected] ~]# vim /etc/mail/sendmail.mc
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA‘)dnl

5、生成配置文件
Sendmail的配置文件由m4来生成,m4工具在sendmail-cf包中。如果系统无法识别m4命令,说明sendmail-cf软件包没有安装
[[email protected] ~]# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
6、重启服务
systemctl restart sendmail

7、查看日志和队列

[[email protected] ~]# mailq
/var/spool/mqueue is empty
        Total requests: 0
[[email protected] ~]# tail -f /var/log/maillog
May 13 21:12:06 otrs sendmail[2891]: x4DDC4w2002889: to=<[email protected]>, delay=00:00:02, xdelay=00:00:02, mailer=esmtp, pri=120993, relay=mxbiz1.qq.com. [183.57.48.34], dsn=5.0.0, stat=Service unavailable
May 13 21:12:06 otrs sendmail[2891]: x4DDC4w2002889: x4DDC6w2002891: DSN: Service unavailable
May 13 21:12:07 otrs sendmail[2891]: STARTTLS=client, relay=mxbiz2.qq.com., version=TLSv1/SSLv3, verify=FAIL, cipher=AES128-SHA256, bits=128/128
May 13 21:12:08 otrs sendmail[2891]: x4DDC6w2002891: to=<[email protected]>, delay=00:00:02, xdelay=00:00:02, mailer=esmtp, pri=32188, relay=mxbiz2.qq.com. [183.57.48.34], dsn=5.0.0, stat=Service unavailable
May 13 21:12:08 otrs sendmail[2891]: x4DDC6w2002891: x4DDC6w3002891: return to sender: Service unavailable
May 13 21:12:08 otrs sendmail[2891]: x4DDC6w3002891: to=root, delay=00:00:00, xdelay=00:00:00, mailer=local, pri=33212, dsn=2.0.0, stat=Sent
May 13 21:36:23 otrs sendmail[3202]: starting daemon (8.14.7): [email protected]:00:00
May 13 21:36:23 otrs sm-msp-queue[3219]: starting daemon (8.14.7): [email protected]:00:00
May 13 21:43:28 otrs sendmail[3483]: starting daemon (8.14.7): [email protected]:00:00
May 13 21:43:28 otrs sm-msp-queue[3500]: starting daemon (8.14.7): [email protected]:00:00

(三)、测试发送邮箱

方法一:安装mailx
[[email protected] ~]#yum -y install mailx
创建一个邮件内容文件,然后发邮件(注意-s参数后的邮件标题要用单引号,不能使用双引号,否则发邮件会失败!)

[[email protected] ~]# echo ‘This is test mail‘>/root/content.txt 
[[email protected] ~]#  cat /root/content.txt
This is test mail
[[email protected] ~]# mail -s ‘this is otrs test message‘ [email protected] < /root/content.txt 

见下图。
技术图片

也可以通过管道符直接发送邮件内容
[[email protected] ~]# echo "this is first test message of otrs" | mail -s ‘orts-otrs‘ [email protected]
技术图片

至此sendmail安装配置完成。

方法二:通过外部的smtp服务器进行发送,修改/etc/mail.rc文件,在最下边添加如下配置。上面第一种方式中,/bin/mail命令会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,配置非常麻烦,而且会带来不必要的资源占用。
而通过修改配置文件可以使用外部SMTP服务器,可以达到不使用sendmail而用外部的smtp服务器发送邮件的目的。

[[email protected] ~]# cat  /etc/mail.rc
set [email protected] 
set smtp=smtp.exmail.qq.com  
set [email protected]
set smtp-auth-password=xxxx 
set smtp-auth=login

备注如果sendmail出现 DSN: Service unavailable。这是由于主机名没有正确解析导致的。具体解决步骤如下:

1、cat /etc/hosts
[[email protected] ~]# cat /etc/hosts
183.57.48.34     mxbiz1.qq.com.
192.168.4.203   otrs.bakheet.cn.

2、cat /etc/sysconfig/network
[[email protected] ~]#  cat /etc/sysconfig/network
HOSTNAME=otrs.bakheet.cn
3、重启服务
注意/etc/hosts文件和/etc/sysconfig/network 里面的HOSTNAME必须一致,

并且修改/etc/sysconfig/network里面的hostname文件,必须用命令hostname xxx使其生效,

否则会提示 dsn=4.0.0, stat=Deferred: Connection refused by [127.0.0.1]

以上是关于linux下的sendmail如何配置??的主要内容,如果未能解决你的问题,请参考以下文章

如何Linux下安装sendmail

sendmail 在linux 中如何启动

Linux学习-->如何通过Shell脚本实现发送邮件通知功能?

CentOS下配置sendmail外部邮箱

linux邮件服务器如何安装

sendmail:如何在 ubuntu 上配置 sendmail? [关闭]