RHEL4下建立sendmail服务器
Sendmail作为linux/UNIX平台中强大的邮件服务器,在邮件服务器应用领域
具有不可动摇的地位,是学习和管理其他邮件服务器的基础。下面我们就简单来看
看怎样快速搭建简单的邮件服务器。
1. 我们来安装sendmail所需要的rpm软件包:
需要一下几个软件包:
· sendmail-8.13.1-2 ;服务器的主程序软件
· m4-1.4.1-16 ;配置sendmail的必要工具
· sendmail-cf ;重新配置sendmail服务器的必要配置文件
· sendmail-doc ;服务器的说明文档
确认以上几个包安装好后,就可以启动sendmail了,不过还得确认DNS服务器中
改服务器ip地址的域名解析记录跟MX记录。如果没有DNS的话就在/etc/hosts文件
中添加一条主机解析记录
192.168.1.100 mail.linux.com ip为server的地址 后面为主机域名
@ IN MX 10 mail.zhang.com.
mail IN A 10.167.27.91
注意:主机名称一定要包括完整的域名!
2. 修改local-host-names文件
vi /etc/mail/local-host-names
//添加邮件服务器所提供的邮件服务的域名:以linux.com为例。
zhang.com
3. 开启sendmail服务器的网络接口
vi sendmail.mc
//查找
DAEMON_OPTIONS('port=smtp,Addr=127.0.0.1,Name=MTA')dnl
//修改为
DAEMON_OPTIONS('port=smtp,Addr=0.0.0.0,Name=MTA')dnl
这样服务器就可以监听主机所有网络接口的25端口了。
4. 设置SMTP的用户认证和用户账号
vi /etc/mail/sendmail.mc
找到
dnl TRUST_AUTH_METH('EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN') dnl
dnl define('confAUTH_MECHANISMS', 'EXTERNAL GSSAPI') dnl
去掉前面的dnl,因为dnl表示该行为注释行。
开启认证服务,文件目录在/usr/lib/sasl2/Sendmail.conf
service saslauthd start
用户账号的添加:
groupadd mailgroup
adduser -g mailgroup -s /sbin/nologin linux1
adduser -g mailgroup -s /sbin/nologin linux2
一定要记得给用户名用passwd加密码哦!
5. 生成sendmail.cf文件
因为sendmail.cf文件是出了名的难看的,所以用sendmail.mc来生成
cd /etc/mail
m4 sendmail.mc > sendmail.cf
6. 重新启动Sendmail服务器
service sendmail restart
注意:这里有可能出现sendmail.cf中的line 39 行出错,没关系,直接删除
就ok了,因为这行是空白的。^_^......
Test一下:
netstat -ntpl | grep 110
再次验证一下认证开启来了没有
telnet localhost 25
在出现的界面下输入ehlo localhost如果在250-AUTH出现LOGIN PLAIN,说明服
务的SMTP认证服务已经生效了。
到了这里,sendmail的SMTP的基本功能已经具备了,下篇就是关于POP3跟
现在来说说POP3或者IMAP的部分,只有客户端跟邮件服务器同时支持SMTP和POP3/IMAP,才能实现完整的邮件收发功能。 sendmail服务器不为MUA软件提供收取邮件的功能,因此系统要单独安装实现POP3或者IMAP功能的服务器程序。 在RHEL4中通过dovecot的rpm包来支持POP3,IMAP协议。因为dovecot服务依赖 的软件包较多,所以还是建议好用软件包管理程序来安装dovecot。 system-config-packages 选择安装好好dovecot包后,修改dovecot的主配置文件,因为dovecot软件包默认只 支持IMAP服务,所以需要修改/etc/dovecot.conf #protocols = imap imaps 修改为 protocols = imap imaps pop3 pop3s 之后启动dovecot程序 service dovecot restart 好了!这样的话就ok了!就可以启动Outlook Express通过上篇设置的用户跟密码 来进行邮件的发送了。 makemap hash /etc/mail/access.db < /etc/mail/access |