CentOS 5.5下邮件服务器Postfix安装(2)

6. 安装ExtMail和extman
yum install extsuite-webmail
cd /var/www/extsuite/extmail
cp webmail.cf.default webmail.cf
vi webmail.cf
语言选项,可改作:
SYS_USER_LANG = zh_CN
此处即为您在前文所设置的用户邮件的存放目录,可改作:
SYS_MAILDIR_BASE = /var/mailbox/
SYS_MYSQL_USER = extmail
SYS_MYSQL_PASS = extmail
SYS_MYSQL_DB = extmail
chown -R vuser:vgroup /var/www/extsuite/extmail/cgi/

yum install extsuite-webman
vim /var/www/extsuite/extman/webman.cf
此处即为您在前文所设置的用户邮件的存放目录,可改作:
SYS_MAILDIR_BASE = /var/mailbox
SYS_CAPTCHA_ON = 0   //不需要认证码
mkdir /tmp/extman
chown vuser.vgroup /tmp/extman
设置虚拟域和虚拟用户的配置文件
cp /var/www/extsuite/extman/docs/mysql_virtual_*.cf /etc/postfix/
chown -R vuser:vgroup /var/www/extsuite/extman/cgi/
导入mysql数据库结构及初始化数据
cd /var/www/extsuite/extman/docs
# mysql -u root -p <extmail.sql
# mysql -u root -p &lt;init.sql

测试authlib认证:
/usr/sbin/authtest -s login postmaster@extmail.org extmail
Authentication succeeded.

Authenticated: postmaster@extmail.org  (uid 1000, gid 1000)
    Home Directory: /var/mailbox/extmail.org/postmaster
           Maildir: /var/mailbox/extmail.org/postmaster/Maildir/
             Quota: (none)
Encrypted Password: $1$phz1mRrj$3ok6BjeaoJYWDBsEPZb5C0
Cleartext Password: extmail
           Options: (none)
这样表明ExtMan的正确安装,数据库也正确导入,courier-authlib能正确连接到mysql数据库

修改httpd.conf文件
NameVirtualHost *:80
Include conf/vhost_*.conf
vi /etc/httpd/conf/vhost_extmail.conf
&lt;VirtualHost *:80>
ServerName mail.lx.com
DocumentRoot /var/www/extsuite/extmail/html/

ScriptAlias /extmail/cgi/ /var/www/extsuite/extmail/cgi/
Alias /extmail /var/www/extsuite/extmail/html/

ScriptAlias /extman/cgi/ /var/www/extsuite/extman/cgi/
Alias /extman /var/www/extsuite/extman/html/

SuexecUserGroup vuser vgroup
</VirtualHost>
service httpd restart

7. 访问及测试

选择管理即可登入extman进行后台管理了。默认管理帐号为:root@extmail.org
密码为:extmail*123*
登录成功后创建虚拟域和虚拟用户
使用telnet登录25和110端口进行测试

telnet localhost 25
ehlo localhost
auth login
perl -MMIME::Base64 -e 'print encode_base64("abc\@lx.com");'
perl -MMIME::Base64 -e 'print encode_base64("123");'
mail from:a@lx.com
rcpt to:b@lx.com
data
blablablaba
.
quit

telnet localhost 110
user b@lx.com
pass 123
list
retr 1
dele 1
quit

测试maildrop,输出如下:
echo "test mail" | maildrop -V 10 -d abc@lx.com
maildrop: authlib: groupid=1000
maildrop: authlib: userid=1000
maildrop: authlib: logname=abc@lx.com, home=/var/mailbox/lx.com/abc, mail=/var/mailbox/lx.com/abc/Maildir/
maildrop: Changing to /var/mailbox/lx.com/abc
Message start at 0 bytes, envelope sender=abc@lx.com
maildrop: Attempting .mailfilter
maildrop: Delivery complete.

如果发信提示:
SMTP rcpt error: 5.1.1 : Recipient address rejected: User unknown in local recipient table
请在/etc/postfix/main.cf里面确保存在下面配置
local_recipient_maps =
如果发送邮件成功,但是无法接收邮件,请注释掉下面三项:
#mydestination

8. extman图形日志:
/usr/local/mailgraph_ext/mailgraph-init start
/var/www/extsuite/extman/daemon/cmdserver --daemon
开机自启动:
# echo “/usr/local/mailgraph_ext/mailgraph-init start” &gt;&gt; /etc/rc.d/rc.local
# echo “/var/www/extsuite/extman/daemon/cmdserver -v -d” &gt;&gt; /etc/rc.d/rc.local

=========================

9. 邮件过滤:
Postfix可以根据“client, sender, recipient”对邮件进行过滤
postfix可以使用“smtpd_*_restrictions”参数对邮件进行约束,其中的“*” 可以以“client, sender等”代替。

1).smtpd_client_restrictions
针对client进行限制,编辑/etc/postfix/main.cf,添加以下参数
smtpd_client_restrictions = hash:/etc/postfix/client_access
这条语句的意思是要我们将把客户端的限制策略加入一条限制规则"check_client_access":把针对客户的限制写在client_access文件中,并且以hash数据库的形式存储。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/0701b129ce47ffa05152b072c37a541f.html