这里是普通文章模块栏目内容页
redhat Linux系统配置sendmail服务过程详解

1.检查Send Mail 的安装包

[root@sql root]# rpm -qa | grep sendmail

sendmail-8.12.8-4

sendmail-cf-8.12.8-4

[root@sql root]# rpm -qa | grep m4

m4-1.4.1-13

[root@sql root]# rpm -q mailx

mailx-8.1.1-28

2.IMAP 组件

[root@sql root]# rpm -qa | grep imap

php-imap-4.2.2-17

imap-2001a-18

如果有用DNS 那么DNS 的MX 要把mail加上

3.安装好上面的部分,就可以开始做一些sendmail 的相关设置

 1) 用M4 转换sendmail 所需的snedmail.cf

       #cd /etc/mail

       #m4 /usr/share/sendmail-cf/m4/cf.m4 /
>  sendmail.mc > redhat.cf

上面这一步是在sendmial.mc 文件中不包含有include(`/usr/share/sendmail-cf/m4/cf.m4') 时才需要做的一个转换动作。一般情况下不需要做。

2)已包含了直接做下面的动作(redhat.cf 就是sendmail.cf 的内容)

# m4 sendmail.mc > redhat.cf

 

3)备份sendmail.cf

#mv /etc/sendmail.cf /etc/sendmail.cf.old

# cp redhat.cf  /etc/mail/sendmail.cf

 

4.修改sendmail.mc 内的设定

1)修改

#cd /etc/mail

#vi sendmail.mc

 

找到下面这一段

DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')
改成 (将Addr=设成你自已的IP)
DAEMON_OPTIONS(`Port=smtp,Addr=Your IP, Name=MTA')

保存离开

 

2)重新制定文档

#m4 sendmail.mc > redhat.cf

#mv sendmail.cf sendmail.cf.old

#cp redhat.cf sendmail.cf

 

5. 启动 Mail Server

1)启动sendmail

# /etc/rc.d/init.d/sendmail start

 

2)启动POP3协议

# cd /etc/xinetd.d

# vi ipop3

修改下面一行

disable = yes

将其改成

disable = no

保存离开

 

#/etc/rc.d/init.d/xinetd restart

 

查看监听和端口

#netstat  -tl

 

 

# /usr/sbin/sendmail -bd -q30m
参数说明:
-bd :表示将sendmail以daemon (可以想成常驻记忆体的类型)的类型启动!
-q : queue的意思,后面接的是时间参数,时间参数有:
s (秒) m(分) h(小时)及d(天)
-q30m表示每隔三十分钟,会将放置在邮件队列(一般是在/var/spool/mqueue )
的邮件尝试寄出一次!所以,上面的例子当中,说的是将sendmail以daemon
的类型启动之后,并且每30分钟去将邮件队列(为寄出的邮件)尝试寄出一次!

 

6. 设定主机名称

# cd /etc/mail
# vi local-host-names
sql.dba.com

 

7.设定邮件服务器的权限 /etc/mail/access

# vi /etc/mail/access

 

#预设情况下有启用的IP
localhost.localdomain RELAY
localhost RELAY
127.0.0.1 RELAY
#想要开放权限的IP与网域
192.168.6  RELAY
140.116.44.125 RELAY

#挡掉的IP、主机名称与E-mail
h8h.com DISCARD
192.168.1.100 DISCARD
xxx@xxx.domain.name REJECT
#储存后离开

 

 

8.设定使用者别名/etc/aliases

。。。

 

9.创建帐号,可以用useradd 添加,然后加到mail 组里面

或都用#init 5 进入图形下界面 更容易添加用户和组

 

10. 测试发送邮件

# telnet localhost 25

Trying 127.0.0.1...
Connected to localhost (127.0.0.1).
Escape character is '^]'.
220 vbird.adsldns.org ESMTP Sendmail 8.12.7/8.12.7; Sat, 22 Feb 2003 13:52:52 +0800
ehlo sql.dba.com <==跟主机打招呼!
250-vbird.adsldns.org Hello sql.dba.com [192.168.6.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH LOGIN PLAIN    <= 成功
250-DELIVERBY
250 HELP

 

 

11. 可以找另一台windows 的主机用outlook 来测试sendmail server

Smtp 和 pop3 都真linxu 的机器机名或IP

如: sql.dba.com 或 192.168.6.1