| 关键词: localhost extmail root extman mailgraph extsuite mysql php var www |
部分软件简介: 1、AMP ---apache(web服务) 、mysql(数据库)、php(非必需) 的简称 2、postfix --mta 邮件系统核心 3、courier-authlib--一个为courier-imap,maildrop,sasl2 提供用户信息的后台进程序 4、courier-imap --提供pop3,pop3s,imap,imaps 服务的程序 5、amavisd-new --提供内容过滤 6、clamav -- 著名的杀毒软件 7、extmail --一个著名的webmail程序 8、extman --与extmail集成的后台管理程序 安装环境: centos 5.4 域名机器名:mail.uucun.lan 域名:uucun.lan 1、安装AMP [root@localhost ~]# yum -y install httpd httpd-devel mysql mysql-devel mysql-server php php-xml php-cli php-pdo php-mbstring php-mcrypt php-gd php-common php-devel php-mysql 修改启动配置并启动 [root@localhost ~]# chkconfig --level 345 mysqld on [root@localhost ~]# chkconfig --level 345 httpd on [root@localhost ~]# service mysqld start [root@localhost ~]# service httpd start 2、导入extman 后台数据库 [root@localhost ~]# tar zxf extman-0.2.5b1.tar.gz [root@localhost ~]# cd extman-0.2.5b1/docs/ [root@localhost docs]# mysql -uroot -p <extmail.sql Enter password: [root@localhost docs]# mysql -uroot -p <init.sql Enter password: 如何使用了phpmyadmin改了root 密码,记得输入密码,如果密码为空,请按回车。 3、安装authlib A、安装依懒的包 [root@localhost ~]# yum -y install postgresql-devel expect libtool-ltdl-devel B、安装生成的rpm [root@localhost i386]# rpm -ivh courier-authlib-0.62.0-1.i386.rpm [root@localhost i386]# rpm -ivh courier-authlib-devel-0.62.0-1.i386.rpm [root@localhost i386]# rpm -ivh courier-authlib-mysql-0.62.0-1.i386.rpm C、配置authlibdaemon [root@localhost i386]# cd /etc/authlib/ [root@localhost authlib]# mv authdaemonrc authdaemonrc.bak [root@localhost authlib]# vim authdaemonrc 输入下面的内容: authmodulelist="authmysql" authmodulelistorig="authmysql" daemons=10 authdaemonvar=/var/spool/authdaemon DEBUG_LOGIN=2 DEFAULTOPTIONS="wbnodsn=1" LOGGEROPTS="" D、配置authmysqlrc [root@localhost authlib]# mv authmysqlrc authmysqlrc.bak [root@localhost authlib]# vim authmysqlrc 输入下面的内容: MYSQL_SERVER localhost MYSQL_USERNAME root #这里需要输入对extmail数据库有操作权限的mysql用户名 MYSQL_PASSWORD uusql#2010 #这里需要输入对extmail数据库有操作权限的mysql密码 MYSQL_PORT 0 MYSQL_SOCKET /tmp/mysql.sock MYSQL_OPT 0 MYSQL_DATABASE extmail MYSQL_SELECT_CLAUSE SELECT username,password,"",uidnumber,gidnumber,\ CONCAT('/home/data/domains/',homedir), \ CONCAT('/home/data/domains/',maildir), \ quota, \ name \ FROM mailbox \ WHERE username = '$(local_part)@$(domain)' E、启动authlib [root@localhost ~]# service courier-authlib start Starting Courier authentication services: authdaemond [root@localhost ~]# chmod 777 /var/spool/authdaemon/ 4、安装courier-imap [root@localhost ~]# rpm -ivh courier-imap-4.1.2-1.i386.rpm [root@localhost ~]# service courier-imap start 5、安装cyrus-sasl A、安装SRPM [root@localhost i386]# rpm -e --nodeps cyrus-sasl-devel cyrus-sasl-plain cyrus-sasl cyrus-sasl-lib (如果这些包存在) [root@localhost i386]# rpm -ihv cyrus-sasl-lib-2.1.22-5.el5.i386.rpm [root@localhost i386]# rpm -ihv cyrus-sasl-2.1.22-5.el5.i386.rpm [root@localhost i386]# rpm -ihv cyrus-sasl-plain-2.1.22-5.el5.i386.rpm B、配置sasl2 创建/usr/lib/sasl2/smtpd.conf 文件,输入下面的内容: pwcheck_method:authdaemond log_level:3 mech_list:PLAIN LOGIN authdaemond_path:/var/spool/authdaemon/socket 6、安装postfix A、安装软件包 [root@localhost i386]# rpm -ivh postfix-2.5.4-2.rhel4.i386.rpm B、切换mta [root@localhost i386]# alternatives --config mta (选择2,postfix) [root@localhost i386]# rpm -e sendmail [root@localhost i386]# cd /usr/sbin/ [root@localhost sbin]# mv sendmail sendmail.bak [root@localhost sbin]# newaliases [root@localhost sbin]# ln -s sendmail.postfix sendmail C、配置postfix [root@localhost ~]# cd /etc/postfix/ [root@localhost postfix]# mv main.cf main.cf.bak [root@localhost postfix]# vim main.cf 输入下面的内容: queue_directory = /var/spool/postfix command_directory = /usr/sbin daemon_directory = /usr/libexec/postfix data_directory = /var/lib/postfix mail_owner = postfix unknown_local_recipient_reject_code = 550 debug_peer_level = 2 debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5 sendmail_path = /usr/sbin/sendmail.postfix newaliases_path = /usr/bin/newaliases.postfix mailq_path = /usr/bin/mailq.postfix setgid_group = postdrop html_directory = /usr/share/doc/postfix-2.5.2-documentation/html manpage_directory = /usr/share/man sample_directory = /etc/postfix readme_directory = /usr/share/doc/postfix-2.5.2-documentation/readme alias_database = hash:/etc/postfix/aliases alias_maps = hash:/etc/postfix/aliases myhostname = mail.uucun.lan mydomain = uucun.lan mydestination = $myhostname smtpd_banner = uucun.lan ESMTP Mail System message_size_limit = 14680064 virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf virtual_mailbox_base = /home/data/domains virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql_virtual_limit_maps.cf virtual_transport = maildrop: maildrop_destination_recipient_limit = 1 #sasl smtpd_sasl_auth_enable = yes smtpd_sasl2_auth_enable = yes smtpd_sasl_security_options = noanonymous broken_sasl_auth_clients = yes smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject_unauth_pipelining, reject_invalid_hostname 复制extman/docs 目录的cf 文件到/etc/postfix [root@localhost postfix]# cp /root/extman-0.2.5b1/docs/mysql_virtual_* . 并修改这些配置文件的用户名为root,密码为uusql#2010 [root@localhost postfix]# service postfix start 7、安装maildrop A、创建安装maildrop rpm [root@localhost SPECS]# yum -y install pcre-devel [root@localhost i386]# rpm -ivh maildrop-2.0.4-1.i386.rpm B、添加虚似用户及创建目录 [root@localhost i386]# cd [root@localhost ~]# groupadd -g 1000 vgroup [root@localhost ~]# useradd -g 1000 -u 1000 -s /sbin/nologin -d /dev/null vuser 编辑/etc/postfix/master.cf ,加入下面的内容: maildrop unix - n n - - pipe flags=DRhu user=vuser argv=/usr/bin/maildrop -d ${user}@${nexthop} ${recipient} ${user} ${extension} ${nexthop} C、创建邮件存储目录 [root@localhost ~]# mkdir -p /home/data/domains/extmail.org/postmaster [root@localhost ~]# maildirmake /home/data/domains/extmail.org/postmaster/Maildir [root@localhost ~]# chown -R vuser:vgroup /home/data/domains/ D、测试maildrop [root@localhost ~]# echo "test" | maildrop -V 10 -d [email protected] maildrop: authlib: groupid=1000 maildrop: authlib: userid=1000 maildrop: authlib: [email protected], home=/home/data/domains/extmail.org/postmaster, mail=/home/data/domains/extmail.org/postmaster/Maildir/ maildrop: Changing to /home/data/domains/extmail.org/postmaster Message start at 0 bytes, envelope [email protected] maildrop: Attempting .mailfilter maildrop: Delivery complete. 出现上以信息说明authlib,maildrop 工作正常 E、测试pop3 [root@localhost ~]# telnet localhost 110 Trying 127.0.0.1... Connected to localhost.localdomain (127.0.0.1). Escape character is '^]'. +OK Hello there. user [email protected] +OK Password required. pass extmail +OK logged in. list +OK POP3 clients that break here, they violate STD53. 1 6 . retr 1 +OK 6 octets follow. test . quit +OK Bye-bye. Connection closed by foreign host. F、测试postfix [root@localhost ~]# perl -MMIME::Base64 -e 'print encode_base64("postmaster\@extmail.org");' cG9zdG1hc3RlckBleHRtYWlsLm9yZw== [root@localhost ~]# perl -MMIME::Base64 -e 'print encode_base64("extmail");' ZXh0bWFpbA== [root@localhost ~]# service postfix restart (重启一下) [root@localhost ~]# telnet localhost 25 Trying 127.0.0.1... Connected to localhost.localdomain (127.0.0.1). Escape character is '^]'. 220 uucun.lan ESMTP Mail System ehlo test.com 250-mail.uucun.lan 250-PIPELINING 250-SIZE 14680064 250-VRFY 250-ETRN 250-AUTH LOGIN PLAIN 250-AUTH=LOGIN PLAIN 250-ENHANCEDSTATUSCODES 250-8BITMIME 250 DSN auth login 334 VXNlcm5hbWU6 cG9zdG1hc3RlckBleHRtYWlsLm9yZw== 334 UGFzc3dvcmQ6 ZXh0bWFpbA== 235 2.7.0 Authentication successful quit 221 2.0.0 Bye Connection closed by foreign host 8、安装amavisd-new杀毒软件 编辑/etc/yum.repos.d/CentOS-Base.repo 加入下面的内容: [dag] name=Dag RPM Repostory 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/packages/RPM-GPG-KEY.dag.txt [root@localhost ~]# yum -y install clamav clamav-db clamd clamav-devel amavisd-new 编辑/etc/amavisd.conf,修改下面的内容 $mydomain = 'uucun.lan'; # a convenient default for other settings 把下面内容去掉注释,并修改为下面 ['ClamAV-clamd', \&ask_daemon, ["CONTSCAN {} ", "/tmp/clamd.socket"], qr/\bOK$/, qr/\bFOUND$/, qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ], [root@localhost ~]# usermod -G amavis clamav [root@localhost ~]# service clamd start 在/etc/postfix/master.cf 增加下面的内容: smtp-amavis unix - - n - 4 smtp -o smtp_data_done_timeout=1200 -o smtp_send_xforward_command=yes -o disable_dns_lookups=yes 127.0.0.1:10025 inet n - n - - smtpd -o content_filter= -o local_recipient_maps= -o relay_recipient_maps= -o smtpd_restriction_classes= -o smtpd_helo_restrictions= -o smtpd_sender_restrictions= -o smtpd_recipient_restrictions=permit_mynetworks,reject -o mynetworks=127.0.0.0/8 -o strict_rfc821_envelopes=yes -o smtpd_error_sleep_time=0 -o smtpd_soft_error_limit=1001 -o smtpd_hard_error_limit=1000 -o receive_override_options=no_header_body_checks 在/etc/postfix/main.cf 加入下面的内容 content_filter = smtp-amavis:[localhost]:10024 [root@localhost ~]# service postfix reload 9、安装extman/extmail A、配置apache 修改/etc/httpd/conf/httpd.conf,将下面的选项改为: User vuser Group vgroup [root@localhost ~]# cd /etc/httpd/conf.d/ [root@localhost conf.d]# vim extmail.conf 输入下面的内容: Alias /extman/cgi/ /var/www/extsuite/extman/cgi/ Alias /extman /var/www/extsuite/extman/html/ <Location "/extman/cgi"> SetHandler cgi-script Options +ExecCGI </Location> # config for ExtMail #Alias /cgi /var/www/extsuite/extmail/cgi/ #Alias / /var/www/extsuite/extmail/html/ Alias /extmail/cgi/ /var/www/extsuite/extmail/cgi/ Alias /extmail /var/www/extsuite/extmail/html/ <Location "/extmail/cgi"> SetHandler cgi-script Options +ExecCGI </Location> [root@localhost ~]# mkdir /var/www/extsuite [root@localhost ~]# tar zxf extmail-1.0.5b1.tar.gz [root@localhost ~]# cp -r extmail-1.0.5b1 /var/www/extsuite/extmail [root@localhost ~]# cp -r extman-0.2.5b1 /var/www/extsuite/extman B、配置extmail参数 [root@localhost ~]# cd /var/www/extsuite/extmail/ [root@localhost extmail]# cp webmail.cf.default webmail.cf 修改webmail.cf 下面的选项 SYS_SESS_DIR = /tmp/extmail SYS_MAILDIR_BASE = /home/data/domains SYS_MYSQL_USER = root SYS_MYSQL_PASS = uusql#2010 C、配置extman参数 [root@localhost extmail]# cd /var/www/extsuite/extman/ 修改webman.cf 下面的选项: SYS_MAILDIR_BASE = /home/data/domains D、创建session 目录 [root@localhost extman]# mkdir /tmp/{extman,extmail} [root@localhost extman]# chown vuser:vgroup /tmp/ext* E、配置后台日志分析工具 [root@localhost addon]# cd /var/www/extsuite/extman/addon/ [root@localhost addon]# cp -r mailgraph_ext /usr/local/ 将下面的内容加入/etc/rc.local /usr/local/mailgraph_ext/mailgraph-init start /usr/local/mailgraph_ext/qmonitor-init start 安装所依懒的软件包 [root@localhost mailgraph_ext]# yum -y install rrdtool perl-rrdtool perl-GD perl-File-Tail F、启动后台进程 [root@localhost mailgraph_ext]# /usr/local/mailgraph_ext/qmonitor-init start Starting queue statistics grapher: qmonitor [root@localhost mailgraph_ext]# /usr/local/mailgraph_ext/mailgraph-init start Starting mail statistics grapher: mailgraph_ext G、访问extmail/extman 打开浏览器,输入http://your_ip_address/extmail 注意:your_ip_address 为你实际的ip 第一个测试用户为:postmaster 密码:extmail 域:extmail 打开浏览器,输入http://your_ip_address/extman extman root 用户为:[email protected] 密码为:extmail*123* 注意:进入系统后要修改密码及找回密码的提示问题、答案。 |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|