在RHEL5下构建基于系统用户的Postfix邮件系统-阿里云开发者社区

开发者社区> 开发与运维> 正文

在RHEL5下构建基于系统用户的Postfix邮件系统

简介:
 
在Linuxt服务中构建Postfix邮件服务器,在客户端可以通过Outlook Express、Web界面来收发邮件,我们需要先配置一下Apache、MYsql、PHP平台,另外还少不了DNS的支持,本文是构建基于系统用户的邮件系统,Mysql可能用不上,但我们可以先配置,以便在构建基于虚拟用户的邮件系统时使用。
在这里就不列出Apache、MYsql、PHP的配置过程了,本实验的AMP平台配置可参考以下两篇博文:
1. http://kk5234.blog.51cto.com/1006247/388128 在Red Hat Linux5下构建LAMP网站服务平台之编译安装Apache与配置基于域名的虚拟Web主机
2http://kk5234.blog.51cto.com/1006247/389600 在Red Hat Linux5下构建LAMP网站服务平台之MySQL、PHP的安装与配置
DNS服务器的配置如下:
 
 
 
接下来开始配置Postfix:
一.创建运行Postfix服务的用户(postfix)、组(postfix、postdrop)
二.编译安装Postfix:
Postfix源码包:postfix-2.4.6.tar.gz
vad补丁包:postfix-2.4.6-vda-ng.patch.gz (支持对虚拟邮件用户设置邮箱空间配额)
1.解压并释放源码包、合并补丁包:

  1. #tar zxf postfix-2.4.6.tar.gz  
  2. #gunzip postfix-2.4.6-vda-ng.patch.gz  
  3. #cd postfix-2.4.6  
  4. #patch -p1 < ../postfix-2.4.6-vda-ng.patch 
2.预配置编译参数:
3.编译并进行安装:
# make && make install
三.配置并测试Postfix服务器:
1.编辑main.cf文件,设置如下参数:
#vi /etc/postfix/main.cf
inet——interface = 177.17.17.1, 127.0.0.1          //设置postfix服务器监听的IP地址,缺省为all
myhostname = mail.sjzz.com                               //设置postfix服务器使用的主机名
mydomain = sjzz.com                                            //设置postfix服务器使用的邮件域
myorigin = $mydomain                                          //设置外发邮件时发件人地址中的邮件域名
mydestination = $mydomain, $myhostname      //设置可接收邮件地址中的域名
home_mailbox = Maildir/                                        //设置邮件存储位置和格式
2.添加邮件用户的账号:
#groupadd mailusers
#useradd -g mailusers -s /sbin/nologin pingping
#useradd -g mailusers -s /sbin/nologin zhuzhu
#useradd -g mailusers -s /sbin/nologin fangfang
#useradd -g mailusers -s /sbin/nologin lingling
#passwd pingping
#passwd zhuzhu
#passwd fangfang
#passwd lingling
3.启动Postfix服务:
#postfix start
4.SMTP发送邮件测试:
5.查看测试邮件是否发送成功:(成功!)
四.构建Dovecot服务器(收信使用):
Dovecot源码包:dovecot-1.1.4.tar.gz
1.安装Dovecot源码包:
#make && make install
2.配置dovecot的运行参数:
ssl_disable = yes                        //禁用SSL机制
protocols =pop3 imap
disable_plaintext_auth = no
mail_location = maildir: ~/Maildir
3.创建PAM认证文件:
 4.启动dovecot服务,并验证其监听的TCP端口(110,143):
5.POP3接收邮件测试:(成功接收!)
五.使用Outlook Express邮件客户端:
1.在windows xp客户机启动Outlook Express:
2.设置邮件账号pingping,配置如下:
 
 
3.验证收信:
六.配置Webmail邮件界面:
使用的软件包:squirrelmail-1.4.13.tar.bz2
中文语言包:zh_CN-1.4.13-20071220.tar.bz2
1.安装程序包和中文语言包:
2.创建及调整数据目录、附件目录:
3.建立config.php配置文件:
 
$squirrelmail_default_language = 'zh_CN' ;
$default_charset = 'zh_CN.UTF-8' ;
$domain = 'sjzz.com' ;
$smtpServerAddress = 'localhost' ;              //设置发信服务器地址及端口
$smtpPort = 25 ;
$imap_server_type ='dovecot' ;                      //设置收信服务器地址及端口
$imapPort = 143 ;
$data_dir = '/usr/local/apache2/htdocs/webmail/data/' ;
$attachment_dir = '/usr/local/apache2/htdocs/webmail/attach/' ;
4.启动httpd服务,并在浏览器中登录squirrelmail系统:
#/usr/local/apache2/bin/httpd start
访问:http://mail.sjzz.com/webmail/
七.设置SMTP的用户认证:
1.查看系统中已安装的与“cyrus”相关的RPM软件包:
 
2.设置Cyrus SASL函数库,并启动saslauthd服务:
smtpd.conf文件如果没下以下配置,就手动添加:
pwcheck_method: saslauthd
#service saslauthd start
3.修改main.cf配置文件,添加SMTP认证相关的配置参数,并重新加载配置:
#postfix reload
4.测试SMTP发信认证:
通过以下命令获取pingping的用户名和密码(123)的加密字符串:
使用以上字符串进行SMTP发信认证:
 使用Outlook Express邮件客户端时要进行如下设置:
 八.设置用户名与邮件群组:
1.修改main.cf配置文件,使用“/etc/aliases”文件的hash数据作为查询表:
#vi /etc/postfix/main.cf
alias_maps = hash:/etc/aliases
2.设置邮件别名实现群发功能:
# vi /etc/aliases
market : pingping, zhuzhu            
tech:fangfang, lingling
# newaliases
3.验证邮件群发:
九.设置邮件大小限制、邮箱空间限制:
1.限制用户可发送的邮件大小:(将可发送邮件的大小限制为20MB)
# vi /etc/postfix/main.cf
message_size_limit = 20971520
# psotfix reload
2.限制用户的邮箱空间大小:
根据邮件用户的类型、邮件存储的方式不同,可以分别采用不同的方法来限制用户邮箱空间的大小。
1)mailbox_size_limit    (支持使用Mailbox邮件存储方式,默认的限制值为50MB,只对系统用户生效)
2)virtual_mailbox_limit (支持使用Mailbox或Maildir存储方式,默认的限制值为50MB,对虚拟用户生效)
3)quota磁盘配配额功能 (此方式也主要针对系统用户)
由于本文实验是构建基于系统用户的邮件系统,并且采用的是Mailbox存储方式,因此限制用户邮箱空间的大小应使用quota磁盘配配额功能。关于quota磁盘配配额在这里不再配置,详见本博客另一篇博文:http://kk5234.blog.51cto.com/1006247/380095 在Red Hat Linux5下实现磁盘分区和磁盘配额。
经过以上的配置,可以构建基于系统用户的Postfix邮件系统,当然这种邮件系统只适用于邮件用户不多的情况下,当邮件用户数量很多时,应该使用基于虚拟用户的postfix邮件系统,关于虚拟用户的postfix邮件系统的配置,将在下一篇博文中进行。









本文转自 kk5234 51CTO博客,原文链接:http://blog.51cto.com/kk5234/392833,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章