资源描述
:Postfix邮件服务器的安装与配置
一、 先安装配置Apache、DNS
1.挂载光盘镜像;
Mount /dev/cdrom /mnt
Cd /mnt/Server
2.安装Apache
rpm -ivh httpd-2.2.3-43.el5.i386.rpm apr-1.2.7-11.el5_3.1.i386.rpm apr-util-1.2.7-11.el5.i386.rpm postgresql-libs-8.1.18-2.el5_4.1.i386.rpm
查看有否安装:
[root@localhost Server]# rpm -qa | grep http
httpd-2.2.3-43.el5
启动Apache:
Service httpd start
3.安装DNS
用rpm分别安装以下包:
bind-9.3.6-4.P1.el5_4.2.i386.rpm
bind-chroot-9.3.6-4.P1.el5_4.2.i386.rpm
bind-devel-9.3.6-4.P1.el5_4.2.i386.rpm
bind-libbind-devel-9.3.6-4.P1.el5_4.2.i386.rpm
bind-libs-9.3.6-4.P1.el5_4.2.i386.rpm
bind-sdb-9.3.6-4.P1.el5_4.2.i386.rpm
bind-utils-9.3.6-4.P1.el5_4.2.i386.rpm
DNS有两个配置文件:
主配置文件:
/var/named/chroot/etc/named.conf 用来设置DNS全局命令的
DocumentRoot “/var/www/html”:定义网页文件存放的目录
数据库文件:.zone
记录哪个域名IP是多少的。
装完后启动DNS
Service named start
编辑DNS主配置文件(默认是空的)如下:
命令:vim /var/named/chroot/etc/named.conf
从模版拷贝一个DNS配置文件的zone文件
cp /usr/share/doc/bind-9.3.6/sample/var/named
/localdomain.zone /var/named/chroot/var/named/.zone
编辑.zone文件:
重启DNS服务:
service named restart
清空DNS缓存文件:
echo “ ” > /etc/resolv.conf
验证DNS解析:
host
has address 192.168.18.72
二、 安装Postfix
Red Hat Enterprise Linux提供了sendmail和postfix两种STMP邮件服务软件,安装程序默认安装了sendmail,如果使用postfix,就必须先将sendmail服务停止,然后再安装postfix服务,具体步骤如下:
1)、检查sendmail服务是否已经开启
Netstat –nutlp | grep :25
[root@localhost ~]# netstat -nutlp | grep :25
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 3783/sendmail: ace
2)、关闭sendmail服务及开机时自动启动
3)、
在Red Hat Enterprise Linux 5中,提供了更加方便的E-mail服务器切换方法,它提供了一个图形界面的切换工具system-switch-mail。不过,这个软件在默认情况下并没有安装,所以需要先加载Red Hat Enterprise Linux 5安装盘,再切换到光盘上的Server目录下,执行以下命令安装:
rpm -ivh system-switch-mail-0.5.25-12.noarch.rpm
rpm -ivh system-switch-mail-gnome-0.5.25-12.noarch.rpm
4)、安装postfix服务:
将Red Hat Enterprise Linux 5的光盘镜像挂载到/mnt下
Mount /dev/cdrom /mnt
在/mnt/Server目录下找到postfix的RPM安装包文件postfix-2.3.3.2.i386.rpm,然后使用一下命令安装:
Rpm –ivh postfix-2.:3.3.2.i386.rpm
或者用yum安装:
Mount /dev/cdrom /mnt
cd /mnt/Server
Yum install postfix
[root@localhost Server]# rpm -qa | grep postfix
postfix-2.3.3-2.1.el5_2
postfix邮件服务器已安装成功
修改Postfix服务基本配置文件main.cf:
vim /etc/postfix/main.cf
进入主配置文件分别对以下几行内容修改并取消注释#:
1.设置运行postfix服务的邮件主机的主机名、域名
myhostname =
mydomain =
2.设置由本机寄出的邮件所使用的域名或主机名称
myorigin = $mydomain
3.设置postfix服务监听的网络接口
inet_interfaces = all
并注销此行:inet_interfaces = localhost
4.设置可接收邮件的主机名称或域名
mydestination = $mydomain, $myhostname
5.设置可转发( Relay)哪些网络的邮件
mynetworks = 192.168.18.0/24
6.设置可转发哪些网域的邮件
relay_domains =
SMTP认证的配置
Cyrus SASL是Cyrus Simple Authentication and Security Layer
的简写,它最
大的功能是为应用程序提供了认证函数库。应用程序可以通过函数库所提供
的功
能定义认证方式,并让SASL通过与邮件服务器主机的沟通从而提供认证的
功能。
1.Cyrus-SASL认证包的安装
默认情况下,Red Hat Enterprise Linux安装程序会将Cyrus-SASL
认证包,
可使用下面的命令检查系统是否已经安装了Cyrus-SASL认证包或查看已经
安装
了何种版本:
rpm -qa | grep sasl
如果系统还没有安装Cyrus-SASL认证包,就用rpm –ivh cyrus-sasl-2.1.22-4.i386.rpm进行安装。
或者yum install cyrus-sasl安装
Cyrus-SASL V2的密码验证机制
默认情况下,Cyrus-SASL V2版使用saslauthd这个守护进程进行密码认证,而密
码
认证的方法有多种,使用下面的命令可查看当前系统中的Cyrus-SASL V2所支持的密
码
验证机制:
saslauthd –v
当前可使用的密码验证方法有getwent、kerberos5、pam、rimap、shadow和
ldap。
为简单起见,这里准备采用shadow验证方法,也就是直接用/etc/shadow文件中的用
户账
户及密码进行验证,因此,在配置文件/etc/sysconfig/saslauthd中,修改当前系统所
采用
的密码验证机制为shadow,即:
MECH=shadow
3.测试Cyrus-SASL V2的认证功能
由于Cyrus-SASL V2版默认使用saslauthd这个守护进程进行密
码认
证,因此,需要使用下面的命令来查看saslauthd进程是否已经运行:
ps aux | grep saslauthd
如果没有发现saslauthd进程,则可用下面的命令启动该进程并设
置它
开机自启动:
/etc/init.d/saslauthd start
chkconfig saslauthd on
然后,可用下面的命令测试saslauthd进程的认证功能:
/usr/sbin/testsaslauthd –u lbt –p ‘123456’
4.设置postfix启用smtp认证
Vim /etc/postfix/main.cf
添加如下内容:
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = ''
smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,
reject_unauth_destination
broken_sasl_auth_clients = yes
smtpd_client_restrictions = permit_sasl_authenticated
smtpd_sasl_security_options = noanonymous
5.测试postfix是否启用了smtp认证
采用telnet命令连接到postfix服务器端口25来进行测试,测试过
程
如下图所示:
启动和停止postfix服务
1.启动postfix服务
/etc/init.d/postfix start
2.停止postfix服务
/etc/init.d/postfix stop
3.重新启动postfix服务
/etc/init.d/postfix restart
4.重新载入postfix主配置文件
/etc/init.d/postfix reload
POP和IMAP邮件服务的实现
postfix服务只是一个MTA(邮件传输代理),它只提供SMTP服务,也就是只提供邮件的转发及本地的分发功能。要实现邮件的异地接收,还必须安装POP或IMAP服务。通常情况下,都是将STMP服务和POP或IMAP服务安装在同一台主机上,那么这台主机也就称为电子邮件服务器。RedHat Enterprise Linux 5中,有以下两个软件可以同时提供POP和IMAP服务:dovecot和cyrus-imapd。
安装pop服务dovecot:
yum install dovecot
需要安装如下包:
rpm -ivh /mnt/Server/perl-DBI-1.52-1.fc6.i386.rpm
rpm -ivh /mnt/Server/mysql-5.0.22-2.1.i386.rpm
rpm -ivh /mnt/Server/dovecot-1.0-1.2.rc15.el5.i386.rpm
配置dovecot配置文件:
vim /etc/dovecot.conf
修改如下内容:
protocols =pop3 pop3s
protocol pop3 {
listen = *:10100
# ..
}
启动dovecot服务并设置为自启动
/etc/rc.d/init.d/dovecot start
chkconfig --level 345 dovecot on
1.cyrus-imapd服务的安装
Red Hat Enterprise Linux安装程序默认没有安装cyrus-imapd服务,可使用下
面的命令检查系统是否已经安装了cyrus-imapd服务:
rpm -qa | grep cyrus-imapd
服务相关的RPM包文件:
cyrus-imapd-perl-2.3.7-1.1.el5.i386.rpm
cyrus-imapd-utils-2.3.7-1.1.el5.i386.rpm
db4-utils-4.3.29-9.fc6.i386.rpm
lm_sensors-2.10.0-3.1.i386.rpm
cyrus-imapd-2.3.7-1.1.el5.i386.rpm
cyrus-imapd-devel-2.3.7-1.1.el5.i386.rpm
若没有,可使用rpm -ivh命令分别进行安装 。或者yum install cyrus-imapd*
cyrus-imapd服务的配置文件有以下三个:
/etc/sysconfig/cyrus-imapd:是用于启动cyrusimapd服务的配置文件;
/etc/cyrus.conf:是cyrus-imapd服务的主要配置文件,其中包含该服务中各个组件(imap、pop3、sieve和nntp等)的设置参数;
/etc/imapd.conf:是cyrus-imapd服务中的imap服务的配置文件。为了使postfix与cyrus-imapd整合在一起,必须在postfix的主配置文件/etc/postfix/main.cf中加入以下内容:
mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp
默认情况下cyrus-imapd服务是被停用的,所以必须手动启动它;如果需要开机自动运行,也必须手动启用。使用下面的命令可启动cyrus-imapd服务并设置其开机时自动运行:
先启动dovecot
Service dovecot restart
service cyrus-imapd start
chkconfig cyrus-imapd on
4.用户邮件信箱的管理
创建邮件信箱时,为每一个邮件信箱命名的格式为:
信箱类型.名称[.文件夹名称[.文件夹名称]]…
(1)为Cyrus-IMAP管理员账户cyrus设置密码
passwd cyrus
(2) 使用cyradm管理工具为用户创建邮件信箱
/usr/bin/cyradm -u cyrus localhost
然后使用下面的命令就可为用户lbt创建一个邮件信箱(最好预先useradd用户并设置密码):
createmailbox user.lbt
(3)在用户邮件信箱下添加其他文件夹
使用下面的命令为用户lbt在其邮件信箱下创建发件箱、垃圾箱和草稿箱
等其他文件夹:
createmailbox user.lbt.Send
createmailbox user.lbt.Trash
createmailbox user.lbt.Drafts
(4)为用户邮件信箱设置配额
为用户lbt的信箱user.lbt设置5M的配额,可使用下面的命令:
setquota user.lbt 5210
用下面的命令查看用户邮箱的使用情况:
su -l cyrus -c /usr/lib/cyrus-imapd/quota
Quit-----退出此界面
WEB方式收发邮件:
虽然postfix没有直接提供Web邮件服务功能,但是通常可通过将它与Apache以及第三方的Webmail软件(如squirrelmail、openwebmail等)集成在一起,提供Web邮件服务。1.squirrelmail的安装
Red Hat Enterprise Linux 安装程序默认没有安装squirrelmail,可使用下面的命令检查系统是否已经安装了squirrelmail:
rpm -q squirrelmail
如果系统还没有安装squirrelmail,就用RPM安装包文件php-mbstring-5.1.6-5.el5.i386.rpm 和
squirrelmail-1.4.8-4.el5.noarch.rpm
使用下面的命令安装它:
rpm -ivh /mnt/Server/php-mbstring-5.1.6-5.el5.i386.rpm
rpm -ivh /mnt/Server/squirrelmail-1.4.8-4.el5.noarch.rpm
2.squirrelmail的配置
squirrelmail的主配置文件为
/etc/squirrelmail/config.php:
Vim /etc/squirrelmail/config.php
要配置squirrelmail,可以直接修改该文件的内容,但是使用squirrelmail的配置工具来配置更方便、更直观。使用squirrelmail的配置工具进行配置的具体步骤如下。
打开squirrelmail的配置工具,可执行下面的命令:
/usr/share/squirrelmail/config/conf.pl
操作界面如下:
由于此界面输入命令式颜色不可见,所以要做如下更改:
更改后如下所示:
2.2.6 Web方式收发邮件
3.使用squirrelmail收发邮件采用RPM包安装squirrelmail时,安装程序会在Apache服
务器的默认Web站点中配置一个别名webmail,该别名被定义在/etc/httpd/conf.d/squirrelmail.conf文件中,即:
Alias /webmail /usr/share/squirrelmail
因此,可直接在浏览器的地址栏中输入
如果收不到邮件查看邮件日志:
tail –f /var/log/maillog
重启服务:
268 vim /etc/sysconfig/network-scripts/ifcfg-eth0
269 vim /etc/sysconfig/network-scripts/ifcfg-eth1
270 service network restart
271 host
272 service httpd restart
273 service named restart
274 service postfix restart
275 service saslauthd restart
276 service dovecot restart
277 service cyrus-imapd restart
把某服务加入开机启动项:
chkconfig 服务名(saslauthd) on
展开阅读全文