本文将详细介绍如何使用postfix,extman,extmail等一系列开源软件构建适合企业应用的邮件系统,测试服务器平台为RHEL5.4 32位操作系统,在开始之前,请部署好LAMP环境,这方面的介绍可以参考我的另一篇文章:http://ylw6006.blog.51cto.com/470441/657907,如果要做到收发邮件均没有问题,需要DNS的邮件交换记录(MX)支持,这方面的设置不在本文中介绍…
一:安装courier-authlib
- 1:使用该验证库,可以使用mysql验证邮件账户
- [root@orcl ~]# cd /usr/local/src/tarbag
- [root@orcl tarbag]# wget http://sourceforge.net/projects/courier/files/authlib/0.64.0/courier-authlib-0.64.0.tar.bz2/download
- [root@orcl tarbag]# tar -jxvf courier-authlib-0.64.0.tar.bz2 -C ../software/
- [root@orcl tarbag]# cd ../software/courier-authlib-0.64.0/
- [root@orcl courier-authlib-0.63.0]# groupadd postfix -g 1000
- [root@orcl courier-authlib-0.63.0]# groupadd vmail -g 1001
- [root@orcl courier-authlib-0.63.0]# groupadd postdrop -g 1002
- [root@orcl courier-authlib-0.63.0]# useradd -u 1001 -g 1000 vmail
- [root@orcl courier-authlib-0.63.0]# useradd -u 1000 -g 1000 postfix
- [root@orcl courier-authlib-0.63.0]# id vmail
-
uid=1001(vmail) gid=1000(postfix) groups=1000(postfix)
- [root@orcl courier-authlib-0.63.0]# id postfix
-
uid=1000(postfix) gid=1000(postfix) groups=1000(postfix)
-
-
[root@orcl courier-authlib-0.63.0]# ./configure --with-ltdl-lib=/usr/lib64 --prefix=/usr/local/courier-authlib --with-mailuser=vmail --with-mailgroup=vmail --sysconfdir=/etc --without-authpam --without-authldap --without-authpwd --without-authshadow --without-authvchkpw --without-authpgsql --with-authmysql --with-mysql-libs=/usr/local/mysql/lib/mysql --with-mysql-includes=/usr/local/mysql/include/mysql --with-redhat --with-authmysqlrc=/etc/authmysqlrc --with-authdaemonrc=/etc/authdaemonrc CFLAGS="-march=i686 -O2 -fexpensive-optimizations" CXXFLAGS="-march=i686 -O2 -fexpensive-optimizations"
-
- [root@orcl courier-authlib-0.63.0]# make && make install
- [root@orcl courier-authlib-0.63.0]# ls /usr/local/courier-authlib/
- bin include lib libexec sbin share var
-
-
[root@orcl courier-authlib-0.63.0]# echo '/usr/local/courier-authlib/lib/courier-authlib/' >> /etc/ld.so.conf
- [root@orcl courier-authlib-0.63.0]# ldconfig
-
- 备注:如果是64位系统,需要将i686修改位x86-64,各编译选项的含义可以使用./configrue --help来获取
-
- 2:修改authlib库相关配置文件
- [root@orcl ~]# cp /etc/authdaemonrc.dist /etc/authdaemonrc
- [root@orcl ~]# grep -v '^#' /etc/authdaemonrc |grep -v '^$'
-
authmodulelist="authmysql"
-
authmodulelistorig="authmysql"
-
daemons=5
-
authdaemonvar=/usr/local/courier-authlib/var/spool/authdaemon
-
DEBUG_LOGIN=0
-
DEFAULTOPTIONS=""
-
LOGGEROPTS=""
-
- [root@orcl ~]# cp /etc/authmysqlrc.dist /etc/authmysqlrc
- [root@orcl ~]# grep -v '^#' /etc/authmysqlrc |grep -v '^$'
- MYSQL_SERVER 127.0.0.1
- MYSQL_USERNAME extmail
- MYSQL_PASSWORD 123456
- MYSQL_SOCKET /tmp/mysql.sock
- MYSQL_PORT 3306
- MYSQL_OPT 0
- MYSQL_DATABASE extmail
- MYSQL_USER_TABLE mailbox
- MYSQL_CRYPT_PWFIELD password
- MYSQL_UID_FIELD 1001
- MYSQL_GID_FIELD 1001
- MYSQL_LOGIN_FIELD username
- MYSQL_HOME_FIELD concat('/email/mailbox/',homedir)
- MYSQL_NAME_FIELD name
- MYSQL_MAILDIR_FIELD concat('/email/mailbox/',maildir)
-
- 3:启动authlib服务
- [root@orcl ~]# /usr/local/courier-authlib/sbin/authdaemond start
- [root@orcl ~]# ps -ef |grep courier
-
root 31874 1 0 11:35 ? 00:00:00 /usr/local/courier-authlib/sbin/courierlogger -pid=/usr/local/courier-authlib/var/spool/authdaemon/pid -start /usr/local/courier-authlib/libexec/courier-authlib/authdaemond
- root 31875 31874 0 11:35 ? 00:00:00 /usr/local/courier-authlib/libexec/courier-authlib/authdaemond
- root 31876 31875 0 11:35 ? 00:00:00 /usr/local/courier-authlib/libexec/courier-authlib/authdaemond
- root 31877 31875 0 11:35 ? 00:00:00 /usr/local/courier-authlib/libexec/courier-authlib/authdaemond
- root 31878 31875 0 11:35 ? 00:00:00 /usr/local/courier-authlib/libexec/courier-authlib/authdaemond
- root 31879 31875 0 11:35 ? 00:00:00 /usr/local/courier-authlib/libexec/courier-authlib/authdaemond
- root 31880 31875 0 11:35 ? 00:00:00 /usr/local/courier-authlib/libexec/courier-authlib/authdaemond
-
-
[root@orcl ~]# echo '/usr/local/courier-authlib/sbin/authdaemond start' > /etc/rc.local
二:安装 cyrus-sasl,SASL (Simple Authentication Security Layer)简单认证安全层,功能主要是用于SMTP认证;而 Cyrus SASL是SASL的一个实现
- 1:卸载系统自带的sasl rpm包,使用--nodeps选项强制卸载
- [root@orcl ~]# rpm -qa |grep sasl
- cyrus-sasl-2.1.22-5.el5
- cyrus-sasl-devel-2.1.22-5.el5
- cyrus-sasl-lib-2.1.22-5.el5
- cyrus-sasl-plain-2.1.22-5.el5
- [root@orcl ~]# rpm -e $(rpm -qa |grep cyrus-sasl) --nodeps
- [root@orcl ~]# rpm -qa |grep sasl |wc -l
- 0
- [root@orcl ~]# cd /usr/local/src/tarbag/
- [root@orcl tarbag]# wget ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-sasl-2.1.22.tar.gz
- [root@orcl tarbag]# tar -zxvf cyrus-sasl-2.1.22.tar.gz -C ../software/
- [root@orcl tarbag]# cd ../software/cyrus-sasl-2.1.22/
-
[root@orcl cyrus-sasl-2.1.22]# ./configure --prefix=/usr/local/sasl2 --with-mysql=/usr/local/mysql --disable-sample --disable-saslauthd --disable-pwcheck --disable-cram --disable-digest --disable-krb4 --disable-gssapi --disable-anon --enable-plain --enable-login --enable-sql --disable-ntlm --disable-otp --disable-srp --disable-srp-setpass --with-authdaemond=/usr/local/courier-authlib/var/spool/authdaemon/socket --with-mysql-includes=/usr/local/mysql/include/ --with-mysql-libs=/usr/local/mysql/lib/mysql
- [root@orcl cyrus-sasl-2.1.22]# make && make install
- [root@orcl cyrus-sasl-2.1.22]# ls /usr/local/sasl2/
- include lib man sbin
- [root@orcl cyrus-sasl-2.1.22]# rm -rf /usr/lib/sasl2/
- [root@orcl cyrus-sasl-2.1.22]# ln -s /usr/local/sasl2/lib/sasl2/ /usr/lib
- [root@orcl ~]# tail -2 /etc/ld.so.conf
- /usr/local/sasl2/lib/sasl2
- /usr/local/sasl2/lib
- [root@orcl ~]# ldconfig
-
- 2:编辑smtpd认证配置文件,该文件默认不存在
- [root@orcl ~]# cat /usr/local/sasl2/lib/sasl2/smtpd.conf
- pwcheck_method: authdaemond
- log_level: 3
- mech_list: PLAIN LOGIN
- authdaemond_path:/usr/local/courier-authlib/var/spool/authdaemon/socket
-
- 3:创建相关目录并启动测试
- [root@orcl ~]# mkdir -p /var/state/saslauthd
- [root@orcl ~]# /usr/local/sasl2/sbin/saslauthd -a shadow pam -d
- saslauthd[10252] :main : num_procs : 5
- saslauthd[10252] :main : mech_option: NULL
- saslauthd[10252] :main : run_path : /var/state/saslauthd
- saslauthd[10252] :main : auth_mech : shadow
- saslauthd[10252] :ipc_init : using accept lock file: /var/state/saslauthd/mux.accept
- saslauthd[10252] :detach_tty : master pid is: 0
- saslauthd[10252] :ipc_init : listening on socket: /var/state/saslauthd/mux
- saslauthd[10252] :main : using process model
- saslauthd[10253] :get_accept_lock : acquired accept lock
- saslauthd[10252] :have_baby : forked child: 10253
- saslauthd[10252] :have_baby : forked child: 10254
- saslauthd[10252] :have_baby : forked child: 10255
- saslauthd[10252] :have_baby : forked child: 10256
- saslauthd[10256] :server_exit : child exited: 10256
- saslauthd[10255] :server_exit : child exited: 10255
- saslauthd[10254] :server_exit : child exited: 10254
- saslauthd[10253] :server_exit : child exited: 10253
- saslauthd[10252] :handle_sigchld : child exited: 10253
- saslauthd[10252] :handle_sigchld : child exited: 10254
- saslauthd[10252] :handle_sigchld : child exited: 10255
- saslauthd[10252] :handle_sigchld : child exited: 10256
- 此处按"ctrl+C"
- saslauthd[10252] :server_exit : pid file lock removed: /var/state/saslauthd/saslauthd.pid.lock
- saslauthd[10252] :ipc_cleanup : accept lock file removed: /var/state/saslauthd/mux.accept
- saslauthd[10252] :ipc_cleanup : socket removed: /var/state/saslauthd/mux
- saslauthd[10252] :server_exit : master exited: 0
-
- [root@orcl ~]# /usr/local/sasl2/sbin/saslauthd -a shadow pam -d &
- [1] 30341
- [root@orcl ~]# exit
- logout
- [root@orcl ~]# ps -ef |grep sasl
- root 30341 1 0 11:19 ? 00:00:00 /usr/local/sasl2/sbin/saslauthd -a shadow pam -d
- root 30342 30341 0 11:19 ? 00:00:00 /usr/local/sasl2/sbin/saslauthd -a shadow pam -d
- root 30343 30341 0 11:19 ? 00:00:00 /usr/local/sasl2/sbin/saslauthd -a shadow pam -d
- root 30344 30341 0 11:19 ? 00:00:00 /usr/local/sasl2/sbin/saslauthd -a shadow pam -d
- root 30345 30341 0 11:19 ? 00:00:00 /usr/local/sasl2/sbin/saslauthd -a shadow pam -d
-
-
[root@orcl ~]# echo '/usr/local/sasl2/sbin/saslauthd -a shadow pam -d' >> /etc/rc.local
三:安装BerkeleyDB
- 1:卸载系统自带的db4 rpm包,使用--nodeps选项强制卸载
- [root@orcl ~]# rpm -qa |grep db4
- db4-4.3.29-10.el5
- db4-devel-4.3.29-10.el5
- [root@orcl ~]# rpm -e $(rpm -qa |grep db4) --nodeps
- [root@orcl ~]# rpm -qa |grep db4 |wc -l
- 0
- [root@orcl ~]# cd /usr/local/src/tarbag/
- [root@orcl tarbag]# wget http://download.oracle.com/berkeley-db/db-4.8.26.tar.gz
- [root@orcl tarbag]# tar -zxvf db-4.8.26.tar.gz -C ../software/
- [root@orcl tarbag]# cd ../software/db-4.8.26/build_unix/
-
[root@orcl build_unix]# ../dist/configure --prefix=/usr/local/BerkeleyDB
- [root@orcl build_unix]# make && make install
- [root@orcl build_unix]# ls /usr/local/BerkeleyDB/
- bin docs include lib
- [root@orcl ~]# ln -s /usr/local/BerkeleyDB/include /usr/include/db4
- [root@orcl ~]# ln -s /usr/local/BerkeleyDB/include/db.h /usr/include/
- [root@orcl ~]# ln -s /usr/local/BerkeleyDB/include/db_cxx.h /usr/include/
-
[root@orcl ~]# echo '/usr/local/BerkeleyDB/lib' >> /etc/ld.so.conf
- [root@orcl ~]# ldconfig
四:安装postfix
- 1:关闭sendmail
- [root@orcl ~]# service sendmail stop
- Shutting down sm-client: [ OK ]
- Shutting down sendmail: [ OK ]
- [root@orcl ~]# chkconfig sendmail off
-
- 2:下载postfix源码包并编译安装
-
[root@orcl ~]# echo '/usr/local/mysql/lib/mysql/' >> /etc/ld.so.conf
- [root@orcl ~]# ldconfig
- [root@orcl ~]# cd /usr/local/src/tarbag/
- [root@orcl tarbag]# wget ftp://ftp.cuhk.edu.hk/pub/packages/mail-server/postfix/official/postfix-2.8.0.tar.gz
- [root@orcl tarbag]# wget http://vda.sourceforge.net/VDA/postfix-vda-2.8.0.patch //支持磁盘配额的补丁
- [root@orcl tarbag]# tar -zxvf postfix-2.8.0.tar.gz -C ../software/
- [root@orcl tarbag]# mv postfix-vda-2.8.0.patch ../software/postfix-2.8.0/
- [root@orcl tarbag]# cd ../software/postfix-2.8.0/
- [root@orcl postfix-2.8.0]# make clean
- [root@orcl postfix-2.8.0]# make tidy
-
[root@orcl postfix-2.8.0]# patch -p1 < postfix-vda-2.8.0.patch
- patching file README_FILES/VDA_README
- patching file src/global/mail_params.h
- patching file src/util/file_limit.c
- patching file src/virtual/mailbox.c
- patching file src/virtual/maildir.c
- patching file src/virtual/virtual.c
- patching file src/virtual/virtual.h
-
-
[root@orcl postfix-2.8.0]# make -f Makefile.init Makefiles 'CCARGS=-DHAS_MYSQL -I/usr/local/mysql/include/mysql -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/local/sasl2/include/sasl' 'AUXLIBS=-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm -L/usr/local/sasl2/lib -lsasl2 -L/usr/local/BerkeleyDB/lib'
-
- [root@orcl postfix-2.8.0]# make && make install
- Please specify the prefix for installed file names. Specify this ONLY
- if you are building ready-to-install packages for distribution to other
- machines.
- install_root: [/]
-
- Please specify a directory for scratch files while installing Postfix. You
- must have write permission in this directory.
- tempdir: [/usr/local/src/software/postfix-2.8.0]
-
- Please specify the final destination directory for installed Postfix
- configuration files.
- config_directory: [/etc/postfix] /usr/local/postfix/etc
-
- Please specify the final destination directory for installed Postfix
- administrative commands. This directory should be in the command search
- path of adminstrative users.
- command_directory: [/usr/sbin] /usr/local/postfix/sbin
-
- Please specify the final destination directory for installed Postfix
- daemon programs. This directory should not be in the command search path
- of any users.
- daemon_directory: [/usr/libexec/postfix] /usr/local/postfix/libexec
-
- Please specify the final destination directory for Postfix-writable
- data files such as caches or random numbers. This directory should not
- be shared with non-Postfix software.
- data_directory: [/var/lib/postfix] /usr/local/postfix/var/lib
-
- Please specify the destination directory for the Postfix HTML
- files. Specify "no" if you do not want to install these files.
- html_directory: [no]
-
- Please specify the owner of the Postfix queue. Specify an account with
- numerical user ID and group ID values that are not used by any other
- accounts on the system.
- mail_owner: [postfix]
-
- Please specify the final destination pathname for the installed Postfix
- mailq command. This is the Sendmail-compatible mail queue listing command.
- mailq_path: [/usr/bin/mailq]
-
- Please specify the destination directory for the Postfix on-line manual
- pages. You can no longer specify "no" here.
- manpage_directory: [/usr/local/man] /usr/local/postfix/man
-
- Please specify the final destination pathname for the installed Postfix
- newaliases command. This is the Sendmail-compatible command to build
- alias databases for the Postfix local delivery agent.
- newaliases_path: [/usr/bin/newaliases]
-
- Please specify the final destination directory for Postfix queues.
- queue_directory: [/var/spool/postfix] /usr/local/postfix/var/spool
-
- Please specify the destination directory for the Postfix README
- files. Specify "no" if you do not want to install these files.
- readme_directory: [no]
-
- Please specify the final destination pathname for the installed Postfix
- sendmail command. This is the Sendmail-compatible mail posting interface.
- sendmail_path: [/usr/sbin/sendmail]
-
- Please specify the group for mail submission and for queue management
- commands. Specify a group name with a numerical group ID that is
- not shared with other accounts, not even with the Postfix mail_owner
- account. You can no longer specify "no" here.
- setgid_group: [postdrop]
-
- 编译最后报错如下,找不到/etc/postfix/main.cf,后面通过软链接解决,这里直接无视!
- postfix: fatal: open /etc/postfix/main.cf: No such file or directory
- make: *** [install] Error 1
-
- 3:验证postfix是否支持sasl和mysql
- [root@orcl postfix-2.8.0]# ls /usr/local/postfix/
- etc libexec man sbin var
- [root@orcl postfix-2.8.0]# ls /usr/local/postfix/etc/
- access canonical LICENSE makedefs.out TLS_LICENSE
- aliases generic main.cf master.cf transport
- bounce.cf.default header_checks main.cf.default relocated virtual
-
- [root@orcl ~]# mv /etc/aliases /tmp/aliases.old
- [root@orcl ~]# ln -s /usr/local/postfix/etc/aliases /etc/
- [root@orcl ~]# /usr/bin/newaliases
- newaliases: fatal: open /etc/postfix/main.cf: No such file or directory
- [root@orcl ~]# ln -s /usr/local/postfix/etc/main.cf /etc/po
- [root@orcl ~]# mkdir /etc/postfix
- [root@orcl ~]# ln -s /usr/local/postfix/etc/main.cf /etc/postfix/
- [root@orcl ~]# /usr/bin/newaliases
-
- [root@orcl ~]# /usr/local/postfix/sbin/postconf -a
- cyrus
- dovecot
- [root@orcl ~]# /usr/local/postfix/sbin/postconf -m |grep mysql
- mysql
-
- 4.配置并启动postfix
- [root@orcl ~]# cp /usr/local/postfix/etc/main.cf /usr/local/postfix/etc/main.cf.orig
- [root@orcl ~]# cat /etc/postfix/main.cf
-
##====================MAIN========================
-
myhostname = mail.yang.com
-
mydomain = yang.com
-
myorigin = $mydomain
-
mydestination =
-
inet_interfaces = all
-
mynetworks = 192.168.227.0/24,192.168.123.0/24,127.0.0.0/8
-
alias_maps = hash:/etc/aliases
-
alias_database = hash:/etc/aliases
-
queue_directory = /usr/local/postfix/var/spool
-
command_directory = /usr/local/postfix/sbin
-
daemon_directory = /usr/local/postfix/libexec
-
sendmail_path = /usr/sbin/sendmail
-
newaliases_path = /usr/bin/newaliases
-
mailq_path = /usr/bin/mailq
-
setgid_group = postdrop
-
html_directory = no
-
manpage_directory = /usr/local/postfix/man
-
sample_directory = /usr/local/postfix/etc/
-
readme_directory = no
-
unknown_local_recipient_reject_code = 550
-
-
##====================SASL========================
-
broken_sasl_auth_clients = yes
-
smtpd_recipient_restrictions = permit_mynetworks,
- permit_sasl_authenticated,
- reject_invalid_hostname,
- reject_non_fqdn_hostname,
- reject_unknown_sender_domain,
- reject_non_fqdn_sender,
- reject_non_fqdn_recipient,
- reject_unknown_recipient_domain,
- reject_unauth_pipelining,
- reject_unauth_destination,
- permit
-
smtpd_sasl_auth_enable = yes
-
smtpd_sasl_local_domain = $myhostname
-
smtpd_sasl_security_options = noanonymous
-
smtpdsmtpd_sasl_application_name = smtpd
-
smtpd_banner = $myhostname ESMTP $mail_name ($mail_version)
-
-
##================ Virtual Mailbox Settings =====================#
-
virtual_mailbox_base = /email/mailbox
-
virtual_mailbox_maps = mysql:/usr/local/postfix/etc/mysql_virtual_mailbox_maps.cf
-
virtual_mailbox_domains = mysql:/usr/local/postfix/etc/mysql_virtual_domains_maps.cf
-
virtual_alias_domains = virtual_alias_maps = mysql:/usr/local/postfix/etc/mysql_virtual_alias_maps.cf
-
virtual_uid_maps = static:1001
-
virtual_gid_maps = static:1001
-
virtual_transport = maildrop
-
maildrop_destination_recipient_limit = 1
-
maildrop_destination_concurrency_limit = 1
-
message_size_limit = 14336000
-
virtual_mailbox_limit = 20971520
-
virtual_create_maildirsize = yes
-
virtual_mailbox_extended = yes
-
virtual_mailbox_limit_maps = mysql:/usr/local/postfix/etc/mysql_virtual_mailbox_limit_maps.cf
-
virtual_mailbox_limit_override = yes
-
virtual_maildir_limit_message = Sorry, the user's maildir has overdrawn his diskspace quota, please Tidy your mailbox and try again later.
-
virtual_overquota_bounce = yes
-
- [root@orcl ~]# cat /usr/local/postfix/etc/mysql_virtual_domains_maps.cf
-
user = extmail
-
password = 123456
-
hosts = localhost
-
dbname = extmail
-
table = domain
-
select_field = description
-
where_field = domain
-
additional_conditions = AND active = '1'
-
- [root@orcl ~]# cat /usr/local/postfix/etc/mysql_virtual_mailbox_maps.cf
-
user = extmail
-
password = 123456
-
hosts = localhost
-
dbname = extmail
-
table = mailbox
-
select_field = maildir
-
where_field = username
-
additional_conditions = AND active = '1'
-
- [root@orcl ~]# cat /usr/local/postfix/etc/mysql_virtual_alias_maps.cf
-
user = extmail
-
password = 123456
-
hosts = localhost
-
dbname = extmail
-
table = alias
-
select_field = goto
-
where_field = address
-
additional_conditions = AND active = '1'
-
- [root@orcl ~]# cat /usr/local/postfix/etc/mysql_virtual_limit_maps.cf
-
user = extmail
-
password = 123456
-
hosts = localhost
-
dbname = extmail
-
table = mailbox
-
select_field = quota
-
where_field = username
-
additional_conditions = AND active = '1'
-
- [root@orcl ~]# /usr/local/postfix/sbin/postfix start
- postfix/postfix-script: fatal: no /etc/postfix/master.cf file found
- postfix/postfix-script: fatal: Postfix integrity check failed!
- [root@orcl ~]# ll /etc/postfix/main.cf
- [root@orcl ~]# ln -s /usr/local/postfix/etc/master.cf /etc/postfix/
- [root@orcl ~]# /usr/local/postfix/sbin/postfix start
- postfix/postfix-script: starting the Postfix mail system
- [root@orcl ~]# netstat -ntpl |grep :25
- tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 22089/master
五.安装Courier-IMAP
- [root@orcl ~]# cd /usr/local/src/tarbag/
- [root@orcl tarbag]# wget http://sourceforge.net/projects/courier/files/imap/4.9.3/courier-imap-4.9.3.tar.bz2/download
- [root@orcl tarbag]# tar -jxvf courier-imap-4.9.3.tar.bz2 -C ../software/
- [root@orcl tarbag]# cd ../software/courier-imap-4.9.3/
-
[root@orcl courier-imap-4.9.3]# ./configure --prefix=/usr/local/courier-imap --with-redhat --enable-unicode --disable-root-check --with-trashquota --without-ipv6 CPPFLAGS='-I/usr/local/courier-authlib/include' COURIERAUTHCONFIG='/usr/local/courier-authlib/bin/courierauthconfig'
- [root@orcl courier-imap-4.9.3]# make && make install
- [root@orcl courier-imap-4.9.3]# cd /usr/local/courier-imap/etc
- [root@orcl etc]# cp imapd.dist imapd
- [root@orcl etc]# cp pop3d.dist pop3d
- [root@orcl etc]# cp imapd-ssl.dist imapd-ssl
- [root@orcl etc]# cp pop3d-ssl.dist pop3d-ssl
-
- [root@orcl etc]# egrep -i 'path|start' pop3d |grep -v '^#'
-
POP3DSTART=YES
-
MAILDIRPATH=/opt/mailbox
- [root@orcl etc]# egrep -i 'path|start' imapd |grep -v '^#'
-
IMAPDSTART=YES
-
MAILDIRPATH=/opt/mailbox
-
- [root@orcl etc]# cp /usr/local/src/software/courier-imap-4.9.3/courier-imap.sysvinit /etc/init.d/imapd
- [root@orcl etc]# chmod +x /etc/init.d/imapd
- [root@orcl etc]# chkconfig --add imapd
- [root@orcl etc]# service imapd start
- Starting Courier-IMAP server: imap pop3
- [root@orcl etc]# netstat -ntpl |egrep '110|143'
- tcp 0 0 0.0.0.0:110 0.0.0.0:* LISTEN 14416/couriertcpd
- tcp 0 0 0.0.0.0:143 0.0.0.0:* LISTEN 14410/couriertcpd
六: 安装maildrop
- [root@orcl etc]# cd /usr/local/src/tarbag/
- [root@orcl tarbag]# wget http://nchc.dl.sourceforge.net/project/courier/maildrop/2.5.4/maildrop-2.5.4.tar.bz2
- [root@orcl tarbag]# yum -y install pcre-devel
- [root@orcl tarbag]# tar -jxvf maildrop-2.5.4.tar.bz2 -C ../software/
- [root@orcl tarbag]# cd ../software/maildrop-2.5.4
-
[root@orcl maildrop-2.5.4]# ./configure --enable-sendmail=/usr/sbin/sendmail --enable-trusted-users='root vmail' --enable-syslog=1 --enable-maildirquota --enable-maildrop-uid=1001 --enable-maildrop-gid=1001 --with-trashquota --with-dirsync
- [root@orcl maildrop-2.5.4]# make && make install
- [root@orcl maildrop-2.5.4]# maildrop -v
- maildrop 2.5.4 Copyright 1998-2005 Double Precision, Inc.
- GDBM/DB extensions enabled.
- Maildir quota extension are now always enabled.
- This program is distributed under the terms of the GNU General Public
- License. See COPYING for additional information.
-
- [root@orcl maildrop-2.5.4]# cat /etc/maildroprc //该文件默认不存在
- logfile "/var/log/maildrop.log"
- [root@orcl maildrop-2.5.4]# touch /var/log/maildrop.log
- [root@orcl maildrop-2.5.4]# chown vmail.vmail /var/log/maildrop.log
-
- 配置postfix支持maildrop
- [root@orcl ~]# grep -2 -i 'maildrop' /etc/postfix/master.cf |grep -v '^#'
- maildrop unix - n n - - pipe
-
flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
-
- [root@orcl ~]# egrep '1001|maildrop' /etc/postfix/main.cf
-
virtual_transport = maildrop
-
virtual_uid_maps = static:1001
-
virtual_gid_maps = static:1001
七:配置extman和extmail等
- 1:配置extman
- [root@orcl ~]# mkdir -p /email/mailbox
- [root@orcl ~]# chown -R vmail.vmail /email/mailbox/
- [root@orcl ~]# chown -R vmail.vmail /email/mailbox/
- [root@orcl tarbag]# tar -zxvf extman-1.1.tar.gz -C ../software/
- [root@orcl tarbag]# mv ../software/extman-1.1/ /www/extman
- [root@orcl tarbag]# mv /www/extman/webman.cf.default /opt/extman/webman.cf
- [root@orcl ~]# grep -v '^#' /www/extman/webman.cf |grep -v '^$'
-
SYS_CONFIG = /www/extman/
-
SYS_LANGDIR = /www/extman/lang
-
SYS_TEMPLDIR = /www/extman/html
-
SYS_MAILDIR_BASE = /email/mailbox
-
SYS_SHOW_WARN = 0
-
SYS_SESS_DIR = /tmp/extman/
-
SYS_APP_TYPE = ExtMan
-
SYS_TEMPLATE_NAME = default
-
SYS_DEFAULT_EXPIRE = 1y
-
SYS_GROUPMAIL_SENDER = postmaster@extmail.org
-
SYS_DEFAULT_SERVICES = webmail,smtpd,smtp,pop3,netdisk
-
SYS_BACKEND_TYPE = mysql
-
SYS_CRYPT_TYPE = md5crypt
-
SYS_MYSQL_USER = extmail
-
SYS_MYSQL_PASS = 123456
-
SYS_MYSQL_DB = extmail
-
SYS_MYSQL_HOST = localhost
-
SYS_MYSQL_SOCKET = /tmp/mysql.sock
-
SYS_MYSQL_TABLE = manager
-
SYS_MYSQL_ATTR_USERNAME = username
-
SYS_MYSQL_ATTR_PASSWD = password
-
SYS_LDAP_BASE = dc=extmail.org
-
SYS_LDAP_RDN = cn=Manager,dc=extmail.org
-
SYS_LDAP_PASS = secret
-
SYS_LDAP_HOST = localhost
-
SYS_LDAP_ATTR_USERNAME = mail
-
SYS_LDAP_ATTR_PASSWD = userPassword
-
- [root@orcl tarbag]# mkdir /tmp/extman
- [root@orcl tarbag]# chown vmail.vmail /www/extman/
- [root@orcl tarbag]# chown vmail.vmail /tmp/extman/
-
- 2:配置extmail
- [root@orcl tarbag]# tar -zxvf extmail-1.2.tar.gz -C /www/
- [root@orcl tarbag]# mv /www/extmail-1.2/ /www/extmail
- [root@orcl ~]# cp /www/extmail/webmail.cf.default /www/extmail/webmail.cf
- [root@orcl ~]# grep -v '^#' /www/extmail/webmail.cf |grep -v '^$'
-
SYS_CONFIG = /www/extmail/
-
SYS_LANGDIR = /www/extmail/lang
-
SYS_TEMPLDIR = /www/extmail/html
-
SYS_HTTP_CACHE = 0
-
SYS_SMTP_HOST = 127.0.0.1
-
SYS_SMTP_PORT = 25
-
SYS_LOG_FILE = /var/log/extmail.log
-
SYS_SESS_TIMEOUT = 0
-
SYS_SESS_COOKIE_ONLY = 1
-
SYS_USER_PSIZE = 10
-
SYS_USER_SCREEN = auto
-
SYS_USER_LANG = en_US
-
SYS_APP_TYPE = WebMail
-
SYS_USER_TEMPLATE = default
-
SYS_USER_CHARSET = utf-8
-
SYS_AUTH_TYPE = mysql
-
SYS_MAILDIR_BASE = /email/mailbox
-
SYS_AUTH_SCHEMA = virtual
-
SYS_CRYPT_TYPE = md5crypt
-
SYS_MYSQL_USER = extmail
-
SYS_MYSQL_PASS = 123456
-
SYS_MYSQL_DB = extmail
-
SYS_MYSQL_HOST = localhost
-
SYS_MYSQL_SOCKET = /tmp/mysql.sock
-
SYS_MYSQL_TABLE = mailbox
-
SYS_MYSQL_ATTR_USERNAME = username
-
SYS_MYSQL_ATTR_DOMAIN = domain
-
SYS_MYSQL_ATTR_PASSWD = password
-
SYS_MYSQL_ATTR_CLEARPW = clearpwd
- [root@orcl ~]# chown -R vmail.vmail /www/extmail/
-
- 3:导入数据库文件:
- [root@orcl ~]# cd /www/extman/docs/
-
[root@orcl docs]# /usr/local/mysql/bin/mysql -u root -p < extmail.sql
- Enter password:
-
[root@orcl docs]# /usr/local/mysql/bin/mysql -u root -p < init.sql
- Enter password:
-
- root@orcl docs]# /usr/local/mysql/bin/mysql
- Welcome to the MySQL monitor. Commands end with ; or \g.
- Your MySQL connection id is 4
- Server version: 5.1.36-log Source distribution
- Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
-
-
mysql> show databases;
- +--------------------+
- | Database |
- +--------------------+
- | information_schema |
- | aclocal |
- | extmail |
- | mysql |
- | test |
- +--------------------+
- 5 rows in set (0.04 sec)
-
-
mysql> use extmail;
- Database changed
-
mysql> show tables;
- +-------------------+
- | Tables_in_extmail |
- +-------------------+
- | alias |
- | domain |
- | domain_manager |
- | mailbox |
- | manager |
- +-------------------+
- 5 rows in set (0.01 sec)
-
-
mysql> grant all privileges on extmail.* to extmail@'localhost' identified by '123456';
- Query OK, 0 rows affected (0.00 sec)
-
-
mysql> flush privileges;
- Query OK, 0 rows affected (0.00 sec)
-
- 4:配置slockd
- [root@orcl ~]# cd /usr/local/src/tarbag/
- [root@orcl tarbag]# tar -zxvf slockd-0.99.tar.gz -C /usr/local/
- [root@orcl tarbag]# /usr/local/slockd/slockd-init start
- Starting spam locker daemon: slockd
-
[root@orcl tarbag]# echo '/usr/local/slockd/slockd-init start' >> /etc/rc.local
- [root@orcl tarbag]# cd /var/run/
- [root@orcl run]# mkdir extmail
- [root@orcl run]# /www/extman/daemon/cmdserver -v -d
- loaded ok
-
[root@orcl run]# echo '/www/extman/daemon/cmdserver -v -d' >> /etc/rc.local
八:配置apache
- [root@orcl ~]# grep 'vmail' /usr/local/apache2.2.16/conf/httpd.conf
- User vmail
- Group vmail
-
-
<VirtualHost *:80>
- ServerName mail.yang.com
- DocumentRoot /www/extmail/html
- ScriptAlias /extmail/cgi /www/extmail/cgi
- Alias /extmail /www/extmail/html
- ScriptAlias /extman/cgi /www/extman/cgi
- Alias /extman /www/extman/html
-
<Directory /www>
- Authtype basic
- Options execcgi
- Options Indexes FollowSymLinks
- AllowOverride None
- Order allow,deny
- Allow from all
-
</Directory>
-
</VirtualHost>
- [root@orcl ~]# /usr/local/apache2.2.16/bin/apachectl -t
- Syntax OK
- [root@orcl ~]# /usr/local/apache2.2.16/bin/apachectl -k restart
九:测试和排错, extman默认管理帐号为:root@extmail.org 密码为:extmail*123*
- 1:安装GD,若未安装,则会出现验证码无法正常显示
- [root@orcl ~]# cd /usr/local/src/tarbag/
- [root@orcl tarbag]# tar -zxvf GD-2.35.tar.gz -C ../software/
- [root@orcl tarbag]# cd ../software/GD-2.35/
- [root@orcl GD-2.35]# perl Makefile.PL
- [root@orcl GD-2.35]# make && make install
2:出现下图中的情况,需要重新安装前面卸载掉的db4和db4-devel
[root@orcl ~]# yum -y install db4 db4-devel
3:出现下图中的情况,需要安装UNix-syslog
- [root@orcl ~]# cd /usr/local/src/tarbag/
- [root@orcl tarbag]# gzip -d Unix-Syslog-1.1.tar.gz
- [root@orcl tarbag]# tar -xvf Unix-Syslog-1.1.tar -C ../software/
- [root@orcl tarbag]# cd ../software/Unix-Syslog-1.1/
- [root@orcl Unix-Syslog-1.1]# ls
- Artistic Changes Makefile.PL MANIFEST META.yml README Syslog.pm Syslog.xs test.pl
- [root@orcl Unix-Syslog-1.1]# perl Makefile.PL
- Checking if your kit is complete...
- Looks good
- Writing Makefile for Unix::Syslog
- [root@orcl Unix-Syslog-1.1]# make && make install
4:新建邮件域,登陆出错
安装perl-DBD-MySQL后重新登陆
[root@orcl ~]# yum -y install perl-DBD-MySQL
5: 发信测试
- [root@orcl ~]# tail -f /var/log/maillog
-
Sep 5 16:05:31 orcl extmail[12523]: user=<admin@yang.com>, client=192.168.227.1, module=login, status=loginok
- Sep 5 16:06:29 orcl postfix/smtpd[12555]: connect from localhost.localdomain[127.0.0.1]
-
Sep 5 16:06:29 orcl postfix/smtpd[12555]: B842123EFB4: client=localhost.localdomain[127.0.0.1]
-
Sep 5 16:06:29 orcl postfix/cleanup[12560]: B842123EFB4: message-id=<20110905080629.B842123EFB4@mail.yang.com>
- Sep 5 16:06:29 orcl postfix/smtpd[12555]: disconnect from localhost.localdomain[127.0.0.1]
-
Sep 5 16:06:29 orcl postfix/qmgr[12286]: B842123EFB4: from=<admin@yang.com>, size=615, nrcpt=1 (queue active)
-
Sep 5 16:06:31 orcl postfix/smtp[12561]: B842123EFB4: to=<ylw6006@163.com>, relay=163mx03.mxmail.netease.com[123.125.50.140]:25, delay=2.2, delays=0.07/0/1.2/0.94, dsn=2.0.0, status=sent (250 Mail OK queued as mx47,XcCowGBps0bRgmROKP+GAw--.907S2 1315209938)
- Sep 5 16:06:32 orcl postfix/qmgr[12286]: B842123EFB4: removed
6:extman日志分析
- [root@orcl ~]# cd /usr/local/src/tarbag/
- [root@orcl tarbag]# wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.5.tar.gz
- [root@orcl tarbag]# tar -zxvf rrdtool-1.4.5.tar.gz -C ../software/
- [root@orcl tarbag]# cd ../software/rrdtool-1.4.5/
-
[root@orcl rrdtool-1.4.5]# ./configure --prefix=/usr/local/rrdtool
- [root@orcl rrdtool-1.4.5]# make && make install
-
- [root@orcl ~]# ln -s /usr/local/rrdtool/lib/perl/5.8.8/i386-linux-thread-multi/auto/RRDs/RRDs.so /usr/lib/perl5/5.8.8/i386-linux-thread-multi/
- [root@orcl ~]# ln -s /usr/local/rrdtool/lib/perl/5.8.8/RRDp.pm /usr/lib/perl5/5.8.8/
- [root@orcl ~]# ln -s /usr/local/rrdtool/lib/perl/5.8.8/i386-linux-thread-multi/RRDs.pm /usr/lib/perl5/5.8.8/
- [root@orcl ~]# cp -r /www/extman/addon/mailgraph_ext/ /usr/local/
-
- [root@orcl ~]# /usr/local/mailgraph_ext/mailgraph-init start
- Starting mail statistics grapher: mailgraph_ext
- Can't locate File/Tail.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 .) at /usr/local/mailgraph_ext/mailgraph_ext.pl line 296.
- BEGIN failed--compilation aborted at /usr/local/mailgraph_ext/mailgraph_ext.pl line 296.
- Starting queue statistics grapher: qmonitor
-
- [root@orcl ~]# cpan
-
cpan> install File::Tail
-
cpan>quit
-
- [root@orcl ~]# /usr/local/mailgraph_ext/mailgraph-init start
- Starting mail statistics grapher: mailgraph_ext
- Starting queue statistics grapher: qmonitor
-
-
[root@orcl ~]# echo '/usr/local/mailgraph_ext/mailgraph-init start' >> /etc/rc.local
十:增加FCGI支持,主要是为了获得优异的web效能
1:安装mod_fastcgi模块
- [root@orcl ~]# cd /usr/local/src/tarbag/
- [root@orcl tarbag]# wget http://www.fastcgi.com/dist/mod_fastcgi-2.4.6.tar.gz
- [root@orcl tarbag]# tar -zxvf mod_fastcgi-2.4.6.tar.gz -C ../software/
- [root@orcl tarbag]# cd ../software/mod_fastcgi-2.4.6/
- [root@orcl mod_fastcgi-2.4.6]# cp Makefile.AP2 Makefile
-
[root@orcl mod_fastcgi-2.4.6]# make top_dir=/usr/local/apache2.2.16/ install
- [root@orcl mod_fastcgi-2.4.6]# ls /usr/local/apache2.2.16/modules/mod_fastcgi.so
- /usr/local/apache2.2.16/modules/mod_fastcgi.so
2:安装perl-FCGI模块,使extmail支持fastcgi
- [root@orcl ~]# rpm -ivh http://ftp.belnet.be/packages/dries.ulyssis.org/redhat/el5/en/i386/RPMS.dries/perl-FCGI-0.67-1.2.el5.rf.i386.rpm //32位系统
- [root@orcl ~]# rpm -ivh http://ftp.belnet.be/packages/dries.ulyssis.org/redhat/el5/en/x86_64/RPMS.dries/perl-FCGI-0.67-1.2.el5.rf.x86_64.rpm //64位系统
3:配置apache,extmail支持fastcgi
- [root@orcl ~]# egrep 'fast|9000' /usr/local/apache2.2.16/conf/httpd.conf
- LoadModule fastcgi_module modules/mod_fastcgi.so
-
<Ifmodule mod_fastcgi.c>
- FastCgiExternalServer /var/www/extsuite/extmail/dispatch.fcgi -host 127.0.0.1:8888
-
</Ifmodule>
-
- [root@orcl ~]# vi /usr/local/apache2.2.16/conf/extra/httpd-vhosts.conf
-
<VirtualHost *:80>
- ServerName mail.yang.com
- DocumentRoot /www/extmail/html
- ScriptAlias /extmail/cgi /www/extmail/dispatch.fcgi
- Alias /extmail /www/extmail/html
- ScriptAlias /extman/cgi /www/extmail/dispatch.fcgi
- Alias /extman /www/extman/html
-
<Location "/extman/cgi">
- SetHandler fastcgi-script
-
</Location>
-
<Directory /www>
- Authtype basic
- Options execcgi
- Options Indexes FollowSymLinks
- AllowOverride None
- Order allow,deny
- Allow from all
-
</Directory>
-
</VirtualHost>
-
- [root@orcl ~]# egrep 'vmail|www|9000' /www/extmail/dispatch-init
-
PORT=9000
-
SU_UID=vmail
-
SU_GID=vmail
-
BASE=/www/extmail
4:启动fastcgi server
- [root@orcl ~]# /www/extmail/dispatch-init start
- Starting extmail FCGI server...
- [root@orcl ~]# ps -ef |grep dispatch
- vmail 23661 1 0 09:43 ? 00:00:00 dispatch.fcgi (master)
- vmail 23662 23661 0 09:43 ? 00:00:00 dispatch.fcgi (idle)
- vmail 23663 23661 0 09:43 ? 00:00:00 dispatch.fcgi (idle)
- root 23680 12093 0 09:43 pts/3 00:00:00 grep dispatch
- [root@orcl ~]# netstat -ntpl |grep :9000
- tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 23811/dispatch.fcgi
-
[root@orcl ~]# echo '/www/extmail/dispatch-init start' >> /etc/rc.local
5:重启apache
- [root@orcl ~]# /usr/local/apache2.2.16/bin/apachectl -t
- Syntax OK
- [root@orcl ~]# /usr/local/apache2.2.16/bin/apachectl -k restart
备注:本文的安装过程非常繁琐,需要用到的软件也很多,因而在本文中没有提供下载地址的软件将会统一打包放在附件中,后期会重点研究下垃圾邮件过滤和邮件病毒的查杀;另外,本文参考了胡双峰同学写的博文,在此深表感谢,双峰同学博客地址:http://blog.csdn.net/deccmtd/
转自:http://ylw6006.blog.51cto.com/470441/658208/
分享到:
相关推荐
这个压缩包"CentOS-5.1-Extmail-List.tar.gz"包含了EXTMAIL在CentOS 5.1上安装和配置所需的所有文件和指南,帮助用户构建稳定、高效的邮件服务环境。 EXTMAIL是一款功能强大的邮件服务器软件,它支持SMTP、POP3、...
Extmail是一款开源的企业级电子邮件系统,它提供了丰富的数据接口,使得开发者可以轻松地与之集成,实现用户数据的推送、邮件的发送以及邮件的读取等功能。本文将深入探讨Extmail数据接口的工作原理、主要功能及其在...
EXTMAIL的开源特性不仅降低了企业邮箱系统的搭建成本,还提供了无限的扩展空间。通过深入理解EXTMAIL的核心代码,开发者可以更好地理解邮箱系统的运作机制,从而进行更深层次的定制,实现诸如邮件过滤、自动回复、...
Extmail和Extman是两个与电子邮件管理相关的软件工具,它们在IT行业中被广泛用于搭建和管理企业级的邮件服务器。本篇文章将深入探讨这两个工具的功能、安装、配置以及日常使用,帮助用户更好地理解和掌握这两个强大...
`extmail` 是一个开源的、基于Web的邮件服务器管理界面,它提供了丰富的功能,包括用户管理、邮箱配置、邮件监控、日志查看等。extmail1.2是该软件的一个版本,它可能包含了一些性能优化、新特性或错误修复,以提升...
- **Extmail**:实际的邮箱安装包。 - **Extman**:用于管理Extmail的工具。 - **Unix-Syslog**:日志记录组件。 - **MySQL**:用于存储用户数据和认证信息,通常建议使用安装版。 5. **防火墙策略**: - **...
【Extmail_Centos+5.5搭建设置篇】详细指南 ...这对于需要建立企业级邮件服务的IT专业人员来说,是一个非常实用的指南。通过遵循本文的步骤,可以构建一个高效、安全的电子邮件环境,满足各种业务需求。
ExtMail - A high performance webmail system =========================================== It was written in pure perl, only support Maildir++(or Maildir), we try to optimize the design and archtecture,...
本文将详细解析如何在CentOS 5.3操作系统上安装配置Postfix与Extmail邮件系统,以实现高效、安全的企业邮件服务。 ### 一、理解Postfix与Extmail **Postfix**是一款由IBM开发的邮件传输代理(MTA),它设计用于...
在部署和使用过程中,遵循最佳实践和安全指南是非常重要的,以防止邮件服务器被黑客利用或遭受垃圾邮件攻击。 总的来说,ExtMail-Solution-Linux-0.2.tar.gz 提供了一整套在Linux环境下搭建和管理邮件服务器的方案...
### 利用Postfix+ExtMail搭建Web邮件系统的关键知识点 #### 一、Postfix与ExtMail概述 - **Postfix**: 是一款广泛使用...此过程不仅需要遵循详细的安装指南,还需要根据实际环境调整配置,以确保邮件系统的稳定运行。
标题中的"extmail-1.2"和"extman-1.1"分别指的是两个不同的软件工具,它们可能用于电子邮件管理和扩展功能。在IT行业中,这样的命名通常意味着这是开源软件或者应用程序的版本号。让我们详细了解一下这两个工具及其...
标题中的"extmail-1.2_and_extman-1.1.zip"是一个...它们提供了强大的邮件服务和插件管理功能,旨在提升企业或个人邮件系统的用户体验和安全性。通过持续的版本更新,这些工具能够适应不断变化的技术环境和用户需求。
ExtMail是一款基于Web的电子邮件系统,它允许用户通过网页浏览器访问和管理他们的电子邮件。这个"extmail-1.0.5.tar.gz"文件是ExtMail的1.0.5版本的源代码压缩包,通常用于开发人员进行定制、调试或学习软件的工作...
"extmail(ubuntu下)邮件服务器搭建" extmail 是一个基于 Linux 的邮件服务器解决方案,它可以提供完整的邮件服务,包括邮件发送、接收、存储和管理等功能。在 Ubuntu 操作系统下搭建 extmail 邮件服务器需要完成...
在邮件服务器的构建中,`Postfix`、`Dovecot` 和 `Extmail` 是三个关键组件。这里,我们详细探讨一下这三个组件及其配置文件的相关知识点。 **Postfix** Postfix 是一个开源的 MTA(邮件传输代理),用于接收、转发...
在Linux系统中,尤其是CentOS这样的企业级操作系统中,`yum`是一个非常重要的包管理工具,用于安装、更新和管理软件。在本篇内容中,我们将详细探讨如何在CentOS-5 32位系统上使用`yum`来安装和配置`extmail`,这是...
"extmail服务器部署" extmail服务器部署是一种邮件系统解决方案,包括邮件基本模块、邮件传输代理、数据库、邮件接收、Web帐户管理后台、SMTP认证库、日志分析及显示、Web服务器、Php支持、防病毒软件、SMTP阶段反...