搭建postfix邮件服务器(一)
实验环境:
     RHEL5系统中,搭建Postfix邮件系统,实现单域环境下收发邮件Postfix可以直接使用本地系统用户作为邮件用户,也可以使用虚拟邮件用户。虚拟邮件用户对应的账号信息通常存储于数据库中,最常见的是MYSQL数据库。
实验准备:
      安装RHEL5(或者更高版本,也可以安装CENTOS5,可以采用图形化和文本模式两种安装模式,一般为了提高服务器的整体性能,一般采用文本模式安装。在这里我使用文本模式安装RHEL5,并且在安装过程没有选择任何软件包。在大多数情况下,RHEL    5系统默认安装了sendmail程序,用于提供基本的发信服务。因此,在安装Postfix前将sendmail服务停止,以免与Postfix服务发生冲突。
实验思路:
1.     做主机名
2.     DNS
3.     安装并配置postfix服务器
4.     安装并配置dovecot服务器
5.     配置发信认证及webmail系统
6.     建立邮箱用户,进行收发邮件
实验步骤:
1.做主机名(主机名为mail.lwb.com)
     主机名中必须包含邮件域的域名。如果是已经装好的系统,可以将主机名更改为包含相应邮件域的主机名;如果是新安装的系统,在安装时就可以直接设置主机名。不管是哪种情况,做好后,都要进行相应的检查,保证配置正确。
Ø       检查/etc/hosts文件,查看是否有主机名称解析记录
Ø       检查/etc/sysconfig/network文件,查看主机名是否正确
2.配置DNS
2.1更改主配置文件(需要修改全局配置,并且在区域配置中添加相应邮件域及反向域)
2.2创建区域数据库配置文件
Ø       在正向域中,需要添加A记录和MX邮件记录
mail      IN      A      172.16.100.147
lwb.com.  IN      MX    10      mail
Ø       在反向域中,添加PTR记录
147       IN      PTR    lwb.com.
2.3.添加权限(这里添加权限方式跟普通添加读写权限方式不一样,不过这样做之后权限很合适,要详细了解,请查看《搭建DNS服务器》)
bind-chroot-admin –s
2.4重启服务,并设置开机自动启动
   service named restart
   chkconfig named on
3.安装并配置postfix服务器
     在配置之前,需要做yum,可以自动解决安装软件包时的相容性和依赖关系。
mkdir  /media/rhel5
mount /dev/cdrom /media/rhel5
cd /media/rhel5/Server
rpm -ivh createrepo-0.4.4-2.fc6.noarch.rpm
cd /media/
createrepo .
cd /etc/yum.repos.d/
vi rhel-debuginfo.repo
修改为以下内容
[rhel5]
baseurl=file:///media
enabled=1
gpgcheck=0
3.1安装Postfix
   rpm -ivh postfix-2.3.3-2.i386.rpm
3.2编辑main.cf配置文件(该配置文件的修改分先后顺序)
   vi /etc/postfix/main.cf
inet_interfaces = all    修改  //设置监听25端口在哪些IP地址可以使用
myhostname = mail.lwb.com  添加   //设置Postfix服务器使用的主机名
mydomain = lwb.com    添加       //设置Postfix服务器使用的邮件域
myorigin = $mydomain   修改      //设置发件人邮件地址中的邮件域名
mydestination = $mydomain,$myhostname
修改                         //设置可接收的邮件地址中的域名
home_mailbox = Maildir/  修改     //设置邮件存储位置和格式
3.3重启postfix服务,并验证其监听的TCP端口(25
   service postfix restart
   chkconfig postfix on
   netstat -antp |grep :25
查看其25端口是否是如下信息(看是否有40
tcp        0      0 0.0.0.0:25                  0.0.0.0:*                   LISTEN      4626/master
4.安装并配置dovecot服务器
4.1安装dovecot(需要使用YUM方式安装)
   yum install dovecot* -y
4.2修改dovecot.conf配置文件
   vi  /etc/dovecot.conf
ssl_disable = yes                      //禁用SSL机制
protocols = pop3 imap                 //指定支持的邮局协议
disable_plaintext_auth = no            //允许明文密码认证
mail_location = maildir:~/Maildir       //设置邮件存储格式及位置
4.3重启dovecot,并验证其监听的TCP端口(110143
   service dovecot restart
   chkconfig dovecot on
   netstat -anpt |grep dovecot
查看其端口信息
tcp        0      0 :::110                      :::*                        LISTEN      4687/dovecot
tcp        0      0 :::143                      :::*                        LISTEN      4687/dovecot
5.配置webmail系统和SMTP用户认证
5.1配置webmail系统
   1.安装squirrlmail(使用yum方式,会自动安装httpdphp
     yum install squirrelmail* -y
   2.修改config.php配置文件(如果没有该文件,拷贝模板文件config_default.php,在进行修改)
     ln -s /usr/share/squirrelmail/ /var/www/html/mail
cd /var/www/html/mail/config
vi config.php
$squirrelmail_default_language = 'zh_CN';
$default_charset          = 'zh_CN.UTF-8';
$domain                 = 'lwb.com';
$smtpServerAddress      = 'localhost';
$smtpPort               = 25;
$imap_server_type       = 'dovecot';
$imapPort               = 143;
3重启httpd服务
       service httpd restart
       chkconfig httpd on
5.2设置SMTP用户认证
     1.安装于“cyrus”相关的软件包(默认系统已经安装)
     2.修改main.cf配置文件,添加如下配置项
smtpd_sas1_auth_enable = yes
smtpd_sas1_security_options = noannonymous
mynetworks = 127.0.0.1
smtpd_recipient_restrictions=permit_mynetworks,permit_sas1_authenticated,reject_unauth_destination
3.启动saslauthd服务
  service saslauthd restart
  chkconfig saslauthd on
4.重启postfix服务
        Service postfix restart
6.建立邮箱用户(这里邮箱用户就是系统用户,为保证安全性,不允许登陆系统那个),然后直接在客户端浏览器中输入http://mail.lwb.com/webmail/,web登陆页面中输入邮件用户账号和密码,即可进行收发邮件。
总结:
设置邮件群发功能
  修改/etc/aliases文件,在该文件中,每一行对应为一条别名(这里可以把别名理解为组,把用户加入别名中,给别名发邮件,别名中的所有用户就会收到邮件)设置记录。设置后执行“newaliases”命令,以便重新生成“/etc/aliases.db”数据库文件。
例:vi /etc/aliases
zu:user1,user2,user3,user4
    newaliases
限制用户可发送的邮件大小
/etc/postfix/main.cf配置文件中,添加如下配置项,该配置项对系统用户和虚拟邮件用户同时起作用,根据实际情况设置邮件大小限制。“20971520”表示20M
 vi /etc/postfix/main.cf
message_size_limit = 20971520
限制用户的邮箱空间大小
Postfix邮件系统中,根据邮件用户的类型、邮件存储的方式不同,可以分别采取不同的方式来限制用户的邮箱空间大小。下面是三种方式来限制用户的邮箱大小,使用时应根据Postfix服务器的具体情况进行选择。
u     Mailbox_size_limit配置参数:主要针对使用Mailbox邮件存储方式的情况,默认的限制值为50MB。该配置参数对系统用户起作用。
u     Virtual_mailbox_limit配置参数:主要针对使用虚拟邮件用户的情况,默认的值也是50MB。安装了VDA补丁以后,该配置参数对使用MailboxMaidir存储方式的用户都起作用。
u     Quota磁盘配额功能:主要针对Linux系统用户作为邮件用户,可以直接使用Linux中的quota磁盘配额功能。这种方式对使用MailboxMaildir存储方式的用户都起作用。