CentOS5.3安裝postfix+extmail郵件系統 CentOS5.3安裝postfix+extmail郵件系統 作者:哈密瓜 bbs:www.linuxtone.org Blog:http://hi.baidu.com/gyl4802959 系統所有環境都是採用yum安裝 安裝系統時設置標準的主機名 mail.hamigua.com 複製代碼改變系統語言 vi /etc/sysconfig/i18n LANG="en_US" •#LANG="zh_CN.UTF-8" •SUPPORTED="zh_CN.UTF-8:zh_CN:zh:zh_TW.UTF-8:zh_TW:zh:en_US.UTF-8:en_US:en" •SYSFONT="latarcyrheb-sun16" 複製代碼關閉selinux vi /etc/selinux/config 去除IPV6 vi /etc/modprobe.conf alias net-pf-10 off •alias ipv6 off 複製代碼修改網關 vi /etc/sysconfig/network 設IP vi /etc/sysconfig/network-scripts/ifcfg-eth0 定義yum的非官方庫 vi /etc/yum.repos.d/dag.repo •name=Dag RPM Repository for Red Hat Enterprise Linux •baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag •gpgcheck=1 •enabled=1 •gpgkey=http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt 複製代碼關閉不需要的服務 chkconfig mcstrans off chkconfig restorecond off chkconfig ip6tables off chkconfig iptables off chkconfig netfs off 安裝必需軟體 yum -y install ntsysv ntp telnet wget rsync vixie-cron logwatch perl-Unix-Syslog perl-Net-Daemon perl-PlRPC perl-DBI perl-DBD-MySQL freetype-demos freetype-devel libart_lgpl-devel libpng libpng-devel perl-Time-HiRes perl-Time-HiRes-Value perl-File-Tail perl-libwww-perl perl-HTML-Parser perl-HTML-Tagset perl-IO-stringy perl-IO-Multiplex perl-MailTools perl-TimeDate perl-Convert-ASN1 perl-Convert-BinHex perl-MIME-tools perl-FCGI perl-GD rrdtool rrdtool-perl apr-devel apr-docs apr-util-devel apr-util-docs giflib libgdiplus mono-core dbus-sharp dbus-sharp-devel dbus-glib-devel dbh dbh-devel pcre pcre-devel httpd httpd-devel httpd-manual mysql mysql-devel mysql-server cyrus-sasl cyrus-sasl-plain bind bind-chroot amavisd-new clamd clamav clamav-db spamassassin bison bzip2-devel expect fam-devel flex freetype-devel gcc gcc-c++ gdbm-devel libc-client-devel libjpeg-devel libmcrypt libmcrypt-devel libpng-devel libxslt-devel make rpm-build mod_ssl php php-gd php-mysql php-mbstring php-mcrypt phpmyadmin perl-Mon perl-Authen-PAM perl-Filter perl-Net_SSLeay.pm perl-Convert-BER perl-URI perl-XML-SAX perl-Crypt-Blowfish perl-Crypt-CBC perl-Date-Calc ncurses-devel net-snmp-devel libtool openssl openssl-devel openssl-perl pam-devel pkgconfig postgresql-devel zlib-devel 啟動mysql和apahce chkconfig httpd on chkconfig mysqld on 升級包 yum -y update 重啟系統 reboot 重新生成rpm包安裝postfix cd /usr/local/src wget http://mirror.centos.org/centos/ ... fix-2.3.3-2.src.rpm rpm -ivh postfix-2.3.3-2.src.rpm cd /usr/src/redhat/SPECS vi postfix.spec %define LDAP 2 •%define mysql 1 •%define pcre 1 •%define sasl 2 •%define tls 1 •%define ipv6 0 複製代碼rpmbuild -bb postfix.spec rpm -Uvh /usr/src/redhat/RPMS/i386/postfix-2.3.* 新建郵件用戶、組 /usr/sbin/groupadd -g 1000 vgroup /usr/sbin/useradd -g 1000 -u 1000 -M -s /bin/false vuser 安裝courier-authlib cd /usr/local/src wget http://downloads.sourceforge.net ... hlib-0.61.0.tar.bz2 tar jxvf courier-authlib-0.61.0.tar.bz2 cd courier-authlib-0.61.0 ./configure \ •--prefix=/usr/local/courier-authlib \ •--without-stdheaderdir \ •--without-authuserdb \ •--without-authpam \ •--without-authldap \ •--without-authpwd \ •--without-authshadow \ •--without-authvchkpw \ •--without-authpgsql \ •--without-authcustom \ •--with-authmysql \ •--with-redhat •make •make install •make install-configure •echo "/usr/local/courier-authlib/lib/courier-authlib" >> /etc/ld.so.conf 複製代碼ldconfig ldconfig -v cp courier-authlib.sysvinit /etc/rc.d/init.d/courier-authlib chmod 755 /etc/rc.d/init.d/courier-authlib chkconfig --add courier-authlib chkconfig courier-authlib on chmod 755 /usr/local/courier-authlib/var/spool/authdaemon mv /usr/local/courier-authlib/etc/authlib/authmysqlrc /usr/local/courier-authlib/etc/authlib/authmysqlrc.bak vi /usr/local/courier-authlib/etc/authlib/authmysqlrc MYSQL_SERVER localhost •MYSQL_USERNAME extmail •MYSQL_PASSWORD ext00mail •MYSQL_SOCKET /var/lib/mysql/mysql.sock •MYSQL_PORT 3306 •MYSQL_OPT 0 •MYSQL_DATABASE extmail •MYSQL_USER_TABLE mailbox •MYSQL_CRYPT_PWFIELD password •MYSQL_UID_FIELD uidnumber •MYSQL_GID_FIELD gidnumber •MYSQL_LOGIN_FIELD username •MYSQL_HOME_FIELD homedir •MYSQL_NAME_FIELD name •MYSQL_MAILDIR_FIELD maildir •MYSQL_QUOTA_FIELD quota •MYSQL_SELECT_CLAUSE SELECT username,password,"",uidnumber,gidnumber, \ • CONCAT('/home/domains/',homedir), \ • CONCAT('/home/domains/',maildir), \ • quota, \ • name, \ • CONCAT("disableimap=",disableimap,",disablepop3=", \ • disablepop3,",disablewebmail=",disablewebmail, \ • ",disablesmtpd=",disablesmtpd,",disablesmtp=", \ • disablesmtp,",disablenetdisk=",disablenetdisk, \ • ",netdiskquota=",netdiskquota) \ • FROM mailbox \ • WHERE username = '$(local_part)@$(domain)' \ • DEFAULT_DOMAIN hamigua.com 複製代碼設置smtpd vi /usr/lib/sasl2/smtpd.conf pwcheck_method: authdaemond •log_level: 3 •mech_list: PLAIN LOGIN •authdaemond_path:/usr/local/courier-authlib/var/spool/authdaemon/socket 複製代碼service courier-authlib start ln -s /usr/local/courier-authlib/bin/courierauthconfig /usr/bin/courierauthconfig 安裝maildorp cd /usr/local/src wget http://downloads.sourceforge.net/courier/maildrop-2.0.4.tar.bz2 tar jvxf maildrop-2.0.4.tar.bz2 cd maildrop-2.0.4 ./configure \ •--enable-sendmail=/usr/sbin/sendmail \ •--enable-trusted-users='root vuser' \ •--enable-syslog=1 \ •--enable-maildirquota \ •--enable-maildrop-uid=1000 \ •--enable-maildrop-gid=1000 \ •--with-trashquota \ •--with-dirsync •make •make install 複製代碼maildrop -v 安裝courier-imap cd /usr/local/src wget http://downloads.sourceforge.net ... -imap-4.4.1.tar.bz2 tar jvxf courier-imap-4.4.1.tar.bz2 cd courier-imap-4.4.1 ./configure \ •--prefix=/usr/local/courier-imap \ •--with-redhat \ •--enable-unicode \ •--disable-root-check \ •--with-trashquota \ •--without-ipv6 COURIERAUTHCONFIG='/usr/local/courier-authlib/bin/courierauthconfig' •make •make install 複製代碼cp /usr/local/courier-imap/etc/imapd.dist /usr/local/courier-imap/etc/imapd cp /usr/local/courier-imap/etc/imapd-ssl.dist /usr/local/courier-imap/etc/imapd-ssl cp /usr/local/courier-imap/etc/pop3d.dist /usr/local/courier-imap/etc/pop3d cp /usr/local/courier-imap/etc/pop3d-ssl.dist /usr/local/courier-imap/etc/pop3d-ssl cp courier-imap.sysvinit /etc/rc.d/init.d/courier-imapd chmod 755 /etc/rc.d/init.d/courier-imapd chkconfig --add courier-imapd 配置pop vi /usr/local/courier-imap/etc/pop3d POP3DSTART=YES •MAXDAEMONS=512 •MAXPERIP=4000 複製代碼將extmail,extman,slock安裝包上傳 安裝extmail cd /usr/local/src mkdir /var/www/extsuite tar -zxvf extmail-1.0.5.tar.gz cp -r extmail-1.0.5 /var/www/extsuite/extmail cd /var/www/extsuite/extmail cp webmail.cf.default webmail.cf chown -R vuser:vgroup /var/www/extsuite/extmail/cgi/ 配置extmail sed -i "s#SYS_MYSQL_USER = db_user#SYS_MYSQL_USER = extmail#g" /var/www/extsuite/extmail/webmail.cf •sed -i "s#SYS_MYSQL_PASS = db_pass#SYS_MYSQL_PASS = ext00mail#g" /var/www/extsuite/extmail/webmail.cf •sed -i "s#SYS_SHOW_SIGNUP = 1#SYS_SHOW_SIGNUP = 0#g" /var/www/extsuite/extmail/webmail.cf •sed -i "s#SYS_MESSAGE_SIZE_LIMIT = 5242880#SYS_MESSAGE_SIZE_LIMIT = 52428800#g" /var/www/extsuite/extmail/webmail.cf 複製代碼安裝extman cd /usr/local/src tar -zxvf extman-0.2.5.tar.gz cp -r extman-0.2.5 /var/www/extsuite/extman/ chown -R vuser:vgroup /var/www/extsuite/extman/cgi/ mkdir /var/www/extsuite/extman/tmp chown -R vuser:vgroup /var/www/extsuite/extman/tmp 配置extman sed -i "s#SYS_SESS_DIR = /tmp/extman/#SYS_SESS_DIR = /var/www/extsuite/extman/tmp/#g" /var/www/extsuite/extman/webman.cf •sed -i "s#SYS_MYSQL_PASS = webman#SYS_MYSQL_PASS = web00man#g" /var/www/extsuite/extman/webman.cf 複製代碼vi /var/www/extsuite/extman/docs/init.sql 將extmail.org改為你的域名比如hamigua.com 導入資料庫 mysql -u root -p < /var/www/extsuite/extman/docs/extmail.sql •mysql -u root -p < /var/www/extsuite/extman/docs/init.sql 複製代碼生成extmail系統管理員的用戶目錄 cd /var/www/extsuite/extman/tools ./maildirmake.pl /home/domains/hamigua.com/postmaster/Maildir chown -R vuser:vgroup /home/domains cp -r /var/www/extsuite/extman/addon/mailgraph_ext/ /usr/local/mailgraph_ext/ echo "/usr/local/mailgraph_ext/mailgraph-init start" >> /etc/rc.d/rc.local echo "/usr/local/mailgraph_ext/qmonitor-init start" >> /etc/rc.d/rc.local cp /var/www/extsuite/extman/docs/mysql_virtual_* /etc/postfix/ sed -i "s#password = extmail#password = ext00mail#g" /etc/postfix/mysql_virtual_alias_maps.cf •sed -i "s#password = extmail#password = ext00mail#g" /etc/postfix/mysql_virtual_domains_maps.cf •sed -i "s#password = extmail#password = ext00mail#g" /etc/postfix/mysql_virtual_limit_maps.cf •sed -i "s#password = extmail#password = ext00mail#g" /etc/postfix/mysql_virtual_mailbox_maps.cf •sed -i "s#password = extmail#password = ext00mail#g" /etc/postfix/mysql_virtual_sender_maps.cf 複製代碼安裝slockd cd /usr/local/src tar -zxvf slockd-0.2.tar.gz cp -r slockd-0.2 /usr/local/slockd echo "/usr/local/slockd/slockd-init start" >> /etc/rc.d/rc.local 配置apache vi /etc/httpd/conf/httpd.conf #AddDefaultCharset UTF-8 • •NameVirtualHost *:80 •Include conf/vhost_*.conf • •vi /etc/httpd/conf/vhost_extmail.conf •# VirtualHost for ExtMail Solution •<VirtualHost *:80> •ServerName mail.fsnws.com •DocumentRoot /var/www/extsuite/extmail/html/ •LoadModule fastcgi_module modules/mod_fastcgi.so •<Ifmodule mod_fastcgi.c> •FastCgiExternalServer /usr/bin/dispatch.fcgi -host 127.0.0.1:8888 •</Ifmodule> •Alias /extmail/cgi/ /usr/bin/dispatch.fcgi/ •<Location "/extmail/cgi"> •SetHandler fastcgi-script •</Location> • •#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/ •Alias /phpmyadmin /var/www/extsuite/phpmyadmin/ •Alias /phpldapadmin /var/www/extsuite/phpldapadmin/htdocs/ •# Suexec config •SuexecUserGroup vuser vgroup •</VirtualHost> 複製代碼安裝fastcgi模塊 cd /usr/local/src wget http://www.fastcgi.com/dist/mod_fastcgi-2.4.6.tar.gz tar xfz mod_fastcgi-2.4.6.tar.gz cd mod_fastcgi-2.4.6 ln -s ../../usr/lib/httpd/build /etc/httpd/build cp Makefile.AP2 Makefile make top_dir=/etc/httpd install echo "/var/www/extsuite/extmail/dispatch-init start" >> /etc/rc.d/rc.local /var/www/extsuite/extmail/dispatch-init start 配置phpmyadmin ln -s /usr/share/phpmyadmin /var/www/extsuite/phpmyadmin vi /usr/share/phpmyadmin/config.inc.php $cfg['blowfish_secret'] = '3234ffet43'; 複製代碼配置postfix vi /etc/postfix/main.cf vi /etc/postfix/master.cf vi /etc/amavisd.conf $max_servers = 20; •$mydomain = 'example.com' •['ClamAV-clamd', • \&ask_daemon, ["CONTSCAN {}\n", "/tmp/clamd.socket"], • qr/\bOK$/, qr/\bFOUND$/, • qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ], • •$final_virus_destiny = D_DISCARD; •$final_banned_destiny = D_BOUNCE; •$final_spam_destiny = D_PASS; •$final_bad_header_destiny = D_PASS; 複製代碼註:初始安裝賬戶extmail,extman密碼可能有點問題登陸不進去,這個可以用phpmyadmin來設置密碼,默認phpmyadmin root密碼為空 $1$ITIH4eKD$s9C2wHpLQXOLkzY5U1jYL. = extmail 而後再從extman後台去修改密碼就可以了。 usermod -G amavis clamav vi /etc/postfix/aliases virusalert: root •spam.police: root •postfix: root@hamigua.com •newaliases 複製代碼touch /etc/postfix/recipient_bcc touch /etc/postfix/sender_bcc postmap /etc/postfix/transport postmap /etc/postfix/recipient_bcc postmap /etc/postfix/sender_bcc 以後升級命令: yum update --exclude postfix --exclude postfix-pflogsumm 參考: www.extmail.org論壇 wjkhubei寫得centos5.3+extmail1.0.8+extman+spamassassin http://www.extmail.org/forum/thread-10282-1-4.html 效果圖: extmail
[火星人
]
CentOS5.3安裝postfix+extmail郵件系統 已經有713 次圍觀
本文地址: http://coctec.com/docs/service/show-post-1937.html