服务器 频道

Linux下邮件系统完美解决方案架设攻略

配置Postfix MTA

    删除冲突软件,sendmail,需要执行:
rpm -e --nodeps sendmail
    mysql有关软件:

     CentOS4.x/ RedHat EL4.x 都自带mysql-server,请用户自行安装好,包括mysql-client和devel等包

    安装postfix

   
    配置postfix

    简化postfix配置:
postconf -n > /etc/postfix/main2.cf mv /etc/postfix/main.cf /etc/postfix/main.cf.old mv /etc/postfix/main2.cf /etc/postfix/main.cf
    再编辑main.cf:
vi /etc/postfix/main.cf
    增加如下内容:
# hostname mynetworks = 127.0.0.1 myhostname = mail.extmail.org mydestination = $mynetworks $myhostname
    #XiaoHui 补充: 需要加入下面此行。否则外部主机无法连接本服务器
inet_interfaces = all # banner mail_name = Postfix - by extmail.org smtpd_banner = $myhostname ESMTP $mail_name # response immediately smtpd_error_sleep_time = 0s unknown_local_recipient_reject_code = 450 # extmail config here virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf virtual_transport = maildrop: 编辑mysql_virtual_alias_maps.cf vi /etc/postfix/mysql_virtual_alias_maps.cf
    内容如下:
 
    XiaoHui 补充: 这里指定 Extmail 连接 mysql 时的参数, 包括 username, password, database 等。你不需要自己手工去 mysql 建立 database 以及 username。在后面,会有一个专门的 sql 文件,修改后即可导入。
user = extmail password = extmail hosts = localhost dbname = extmail table = alias select_field = goto where_field = address
    编辑mysql_virtual_domains_maps.cf
vi /etc/postfix/mysql_virtual_domains_maps.cf
    内容如下:
user = extmail password = extmail hosts = localhost dbname = extmail table = domain select_field = description where_field = domain #additional_conditions = and backupmx ='0' and active ='1'
    编辑mysql_virtual_mailbox_maps.cf
vi /etc/postfix/mysql_virtual_mailbox_maps.cf
    内容如下:
user = extmail password = extmail hosts = localhost dbname = extmail table = mailbox select_field = maildir where_field = username #additional_conditions = and active = '1'


0
相关文章