zoukankan      html  css  js  c++  java
  • CentOS 系统中安装postfix+dovecot+openwebmail <转>

    一、先卸载sendmain
    [root@ser ~]#  yum remove sendmail

    二、安装postfix ,dovecot,cyrus-sasl
    [root@ser ~]#  yum -y install postfix
    [root@ser ~]#  yum -y install dovecot
    [root@ser ~]#  yum -y install cyrus-sasl

    三、修改postfix的配置文件
    [root@ser ~]# vim /etc/postfix/main.cf
    myhostname = mail.eimam.com
    mydomain = eimam.com
    myorigin = eimam.com
    inet_interfaces =all
    mynetworks = 192.168.1.0/240
    relay_domains = yjw.com, $mydomain
    mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain,       mail.$mydomain, www.$mydomain, ftp.$mydomain
    重启 postfix 服务
    [root@ser ~]# service postfix restart
    Shutting down postfix:                                     [  OK  ]
    Starting postfix:                                          [  OK  ]
    [root@ser ~]# chkconfig  postfix on
    [root@ser ~]# chkconfig  dovecot on
    修改dovecot的配置文件
    vim /etc/dovecot.conf
    protocols = imap imaps  pop3 pop3s
    listen = *
    在iptables 里开放25,110,143端口
    [root@ser ~]# vim /etc/sysconfig/iptables
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 110 -j ACCEPT
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 143 -j ACCEPT
    重启iptables
    [root@ser ~]# service iptables restart
    Flushing firewall rules:                               [  OK  ]
    Setting chains to policy ACCEPT: filter                [  OK  ]
    Unloading iptables modules:                            [  OK
    Applying iptables firewall rules:                     [  OK  ]
    Loading additional iptables modules: ip_conntrack_netbios_n[  OK  ]ntrack_ftp
    [root@ser ~]# chkconfig  saslauthd on
    修改 /etc/sysconfig/saslauthd
    [root@ser ~]# vim /etc/sysconfig/saslauthd
    # Directory in which to place saslauthd's listening socket, pid file, and so
    # on.  This directory must already exist.
    SOCKETDIR=/var/run/saslauthd
    # Mechanism to use when checking passwords.  Run "saslauthd -v" to get a list
    # of which mechanism your installation was compiled with the ablity to use.
    MECH=shadow
    # Additional flags to pass to saslauthd on the command line.  See saslauthd(8)
    # for the list of accepted flags.
    FLAGS=
    修改 /usr/lib/sasl2/smtpd.conf
    [root@ser ~]# vim /usr/lib64/sasl2/smtpd.conf
    pwcheck_method: saslauthd
    测试 saslauthd
    [root@ser ~]# service saslauthd  restart
    [root@ser ~]# testsaslautd  -u yjw -p '020304'
    0: OK "Success."
    在postfix 的配置文件中,添加以下内容,使其支持SMTP认证
    [root@ser ~]#  vim /etc/postfix/main.cf
    message_size_limit = 1073741824   # 邮件的大小为10M
    default_process_limit = 50
    default_destination_concurrency_limit = 20
    smtpd_sasl_auth_enable = yes
    smtpd_sasl_local_domain =  $myhostname
    smtpd_sasl_application_name = smtpd
    broken_sasl_auth_clients = yes
    smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated,reject_unauth_destination
    smtpd_client_restrictions = permit_sasl_authenticated
    smtpd_sasl_security_options = noanonymous
    测试 25端口
    [root@ser ~]#  telnet mail.yjw.com 25 
    Trying 192.168.1.2...
    Connected to mail.yjw.com (192.168.1.2).
    Escape character is '^]'.
    220 mail.yjw.com ESMTP Postfix
    EHLO  163.com
    250-mail.yjw.com
    250-PIPELINING
    250-SIZE 10240000
    250-VRFY
    250-ETRN
    250-AUTH LOGIN PLAIN
    250-AUTH=LOGIN PLAIN
    250-ENHANCEDSTATUSCODES
    250-8BITMIME
    250 DSN
    quit
    221 2.0.0 Bye
    Connection closed by foreign host.
    [root@ser ~]#

    四、安装openwebmail
    [root@ser ~]# vim /etc/yum.repos.d/openwebmail.repo 
    [openwebmail]
    ## Thomas Chung
    ## 2008.05.29
    name=Openwebmail for Fedora or Enterprise Linux
    baseurl=http://openwebmail.org/openwebmail/download/redhat/rpm/release/
    enabled=1
    gpgcheck=1
    gpgkey=http://openwebmail.org/openwebmail/download/redhat/rpm/release/RPM-GPG-KEY-openwebmail
    #metadata_expire=0
    若这样安装不成功,先安装 perl-Text-Iconv-1.4-1.2.el4.rf.i386.rpm
    [root@ser ~]#  yum -y  install openwebmail
    [root@ser ~]# cd /var/www/cgi-bin/openwebmail/
    [root@ser openwebmail]# ./openwebmail-tool.pl  --init  #出现Y/N时 ,按N.
    修改openwebmail 的一些配置文件
    [root@ser etc]# vim dbm.conf
    dbm_ext                 .db
    dbmopen_ext             .db
    dbmopen_haslock         no
    [root@ser etc]]# cd defaults/
    [root@ser defaults]#  vim dbm.conf
    dbm_ext                 .db
    dbmopen_ext             .db
    dbmopen_haslock         yes
    smtpserver  192.168.1.2
    [root@ser defaults]#  vim openwebmail.conf
    domainnames             yjw.com
    smtpserver              192.168.1.2
    authpop3_server         192.168.1.2
    再次初始化openwebmail
    [root@ser defaults]# cd  ../../openwebmail-tool.pl  --init 
    出现Y/N 时,按Y。
    把Postfix+Dovecot+Openwebmail 三者个格式统一下就行了
    1.postfix 配置 main.cf
    mail_spool_directory = /var/spool/mail
    2.Dovecot 配置 Dovecot.conf
    mail_location = mbox:~/mail:INBOX=/var/spool/mail/%u
    3.Openwebmail.conf
    mailspooldir /var/spool/mail

    五、安装httpd
    [root@ser ~]# yum - y install httpd
    [root@ser ~]# chkconfig httpd on
    [root@ser ~]# service httpd restart
    Stopping httpd:                                            [  OK  ]
    Starting httpd:                                            [  OK  ]
    [root@ser ~]# vim /etc/httpd/conf/httpd.conf
    ServerAdmin
    root@yjw.com
    ServerName  mail.yjw.com:80
    AddHandler cgi-script .cgi .pl

    六、登陆openwebmail
    在IE 中输入  mail.yjw.com/cgi-bin/openwebmail/openwebmail.pl,  这个地址是不是很长,那么我们来点短点的
    在  httpd的 配置文件中添加 下面 内容:
    ScriptAlias  /mail    /var/www/cgi-bin/openwebmail/openwebmail.pl
    这样在IE 中直接输入
    mail.yjw.com/mail

    七、安装反垃圾邮件软件,MailScanner
    到MailScanner .org 上下载MailScanner-4.75.11-1.rpm.tar.gz
    [root@ser ~]#  tar zxvf  MailScanner-4.75.11-1.rpm.tar.gz
    [root@ser ~]#  cd  MailScanner-4.75.11
    [root@ser MailScanner-4.75.11-1]# ./install.sh    # 安装
    安装 spamassassin
    先检查您的系统内是否已经安装SpamAssassin软件包。在文本终端中输入:
    [root@ser ~]#          rpm -qa | grep spamassassin
    spamassassin-3.1.9-1.el5
    下载Mail-SpamAssassin-3.2.5.tar.gz
    [root@ser ~]#tar  -zxvf Mail-SpamAssassin-3.2.5.tar.gz
    [root@ser ~]# cd Mail-SpamAssassin-3.2.5
    [root@ser ~]# perl Makefile.PL
    [root@ser ~]# make
    [root@ser ~]#  make install
    打开/etc/MailScanner/目录中的MailScanner.conf文件,主要说明修改的关键部分:
    %org-name%  = yjw.com
    %org-long-name% = yjw
    web-site% = mail.yjw.com
    Run As User = postfix
    Run As Group = postfix
    Incoming Queue Dir = /var/spool/postfix/hold
    Outgoing Queue Dir = /var/spool/postfix/incoming
    MTA = postfix
    Incoming Work Group = postfix
    Quarantine User = postfix 
    Quarantine Group = postfix
    Always Include SpamAssassin Report = yes
    SpamAssassin User State Dir = /var/spool/MailScanner/spamassassin
    SpamAssassin Install Prefix = /usr/bin
    Log Speed = yes
    Log Spam = yes
    Log Silent Viruses = yes
    Phishing Modify Subject = yes
    更改incoming,quarantine 两个2个目录
    [root@ser ~]# service spamassassin restart
    [root@ser ~]# service spamassassin on
    [root@ser ~]# service MailScanner  restart
    [root@ser ~]# service MailScanner  on
    [root@ser ~]# chown -R postfix:postfix /var/spool/MailScanner/*
    [root@ser ~]# cd /var/spool/MailScanner/
    [root@ser MailScanner]# ll
    drwxr-xr-x 4 postfix postfix 4096 Apr 30 16:56 incoming
    drwxr-xr-x 3 postfix postfix 4096 Apr 29 19:10 quarantine
    drwx------ 2 postfix postfix 4096 Apr 30 15:58 spamassassin
    在/etc/postfix/header_checks 中增加一句话:
    [root@ser ~]# vi  /etc/postfix/header_checks
    /^Received:/    HOLD 
    设置中文邮件过滤规则
    [root@ser ~]# wget -N -P
    http://www.ccert.edn.cn/spam/sa/Chiese_rules.cf
      /usr/share/spamassassin
    使用计划任务来更新规则
    [root@ser ~]#  crontab  -e
    0 0 1 * * wget - N  -P   /usr/share/spamassassin
    http://www.ccert.edu.cn/spam/sa/Chiness_rules.cf
    ;  /etc/init.d/spamassassin restart

    八、登陆openwebmail, 测试 收信,发信是否正常
    [root@ser ~]# useradd  tom
    [root@ser ~]# passwd  tom
    tom
    tom
    [root@ser ~]# useradd yjw
    [root@ser ~]# passwd  yjw

  • 相关阅读:
    js Array的方法及属性总结
    js 继承
    js 判断数据类型
    序列化和反序列化
    express 常用方法和插件
    node 常用的对象
    node.js 守护进程
    CentOS7安装Python3.8.1和ansible
    MAC终端终极美化方案
    Linux之top命令详解
  • 原文地址:https://www.cnblogs.com/fatt/p/4359609.html
Copyright © 2011-2022 走看看