LAMP+postfix+dovecot+mailman搭建邮件服务器及邮件列表
发布时间:2024-09-20
发布时间:2024-09-20
LAMP+postfix+dovecot+mailman搭建邮件服务器及邮件列表
声明:鉴于此前有其他用户未经本同意上传本人原创作品的情况,特在此声明,此文由libidli
(百度ID)编写,任何人本人未经同意不得转载或上传
email:libidli@http://www.77cn.com.cn
目录
一、 二、 三、 四、 五、 六、 七、 八、 九、 十、 十一、 十二、 十三、 十四、
邮件列表所需要的安装包 ............................................................................................... 3 安装Apache...................................................................................................................... 3 安装MySQL ...................................................................................................................... 3 安装PHP ........................................................................................................................... 4 安装并配置postfix ........................................................................................................... 5 安装并配置Dovecot ........................................................................................................ 7 支持虚拟用户 ................................................................................................................... 8 安装extmail及extman .................................................................................................. 10 病毒及垃圾邮件过滤 ..................................................................................................... 13 安装配置mailman.......................................................................................................... 14 总结 ............................................................................................................................. 17 【参考文档】 ................................................................................................................. 17 【附录一】cyrus-sasl2的安装 ...................................................................................... 17 【附录二】搭建所遇问题及解决方案 ......................................................................... 18
本文系统环境是rhel-server-5.5 一、邮件列表所需要的安装包
简单地说,搭邮件列表的前提是搭一个邮件服务器,能收发邮件才能实现一个邮件列表的功能;收信主要通过IMAP或POP3服务完成;发信主要通过SMTP服务完成;为了更好的实现操作及管理,所以还需要提供web邮件及管理服务;另外为了保证邮件的安全可靠,还需要提供一些发信认证、垃圾邮件扫描、病毒扫描的服务;以上这些服务
安装基础设施LAMP 二、安装Apache
#tar –zxf httpd-2.2.21.tar.gz #cd /usr/local/src/httpd-2.2.21
#./configure --prefix=/usr/local/apache2 --enable-so --enable-rewrite #make
#make install
三、安装MySQL
#useradd –M –s /sbin/nologin mysql mysql需要一个独立的账户执行系统有可能自带mysql,建立先将其卸载掉
#tar zxf mysql-5.5.17.tar.gz #cd /usr/local/src/ mysql-5.5.17
#./configure --prefix=/usr/local/mysql #make
#make install
以上完成后,配置MySQL #cd mysql-5.5.17
#cp support-files/http://www.77cn.com.cnf /etc/http://www.77cn.com.cnf 复制主配置文件
#/usr/local/mysql/bin/mysql_install_db --user=mysql 初始化 #chown -R root:mysql /usr/local/mysql #chown -R mysql /usr/local/mysql/var
#echo “/usr/local/mysql/lib/mysql” >> /etc/ld.so.conf 添加库文件路径 #ldconfig 刷新库文件搜索路径 #/usr/local/mysql/bin/mysqld_safe --user=mysql & 后台安全启动 (如果显示启动并且卡住不动按回车) #cd /usr/local/src/ mysql-5.5.17
#cp support-files/mysql.server /etc/init.d/mysqld 复制启动脚本 #chmod +x /etc/init.d/mysqld 赋予脚本执行权限 #chkconfig --add mysqld 添加到系统自动启动服务中 #chkconfig mysqld on 默认启动mysql #chkconfig --list mysqld 查看mysql在什么级别启动或者关闭 #echo “PATH=$PATH:/usr/local/mysql/bin” >> /etc/profile
设置系统全局的环境变量PATH值,方便使用mysql数据库命令
四、安装PHP
#tar jxf php-5.3.8.tar.gz #cd php-5.3.8 #./configure --prefix=/usr/local/php5 --enable-mbstring --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/php5
#make #make test #make install #cd php-5.3.8
#cp php.ini-development /usr/local/php5/php.ini 复制配置文件 #vim /usr/local/apache2/conf/httpd.conf 修改apache服务的主配置文件使其支持php
LoadModule php5_module modules/libphp5.so 确认这行的存在,如果没有就重新编译php
AddType application/x-httpd-php .php 添加这行记录增加apache支持php文件类型
DirectoryIndex index.php index.html 测试php是否安装成功
#vim /usr/local/apache2/htdocs/test.php <?php phpinfo(); ?> 在浏览器中输入http://你的IP/test.php 看到下图表示跟apache服务整合成功
测试与Mysql 集成是否成功
#vim /usr/local/apache2htdocs/testdbdb.php
<?php
$link=mysql_connect(‘localhost’ , ‘root, ‘’); If (!$link) echo “Fail!!!”; else echo “Success!!!”; mysql_close(); ?>
看到此画面表示与Mysql集成成功
基础设施安装完成,接下来为发信准备,安装postfix 五、安装并配置postfix 5.1 安装
系统一般为自带sendmail,同样提供smtp服务,但目前已经不太流行了,postfix比其更为优秀,需要先将其停服务,以确保postfix能正常工作
#service sendmail stop
#chkconfig --level 35 sendmail off 开始安装postfix
#groupadd -g 1200 postdrop #groupadd -g 1000 postfix
#useradd -M -u 1000 -g postfix -G postdrop -s /sbin/nologin postfix # postfix-2.8.2.tar.gz
执行下一步之前确保安装了sasl2,如果没有sasl2,需要先安装cyrus-sasl2,安装步骤见附录1
#make makefiles 'CCARGS=-DHAS_MYSQL -I/usr/local/mysql/include/mysql -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl' 'AUXLIBS=-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm -L/usr/lib/sasl2
-lsasl2'
#make
#make install
安装过程中遇到互动提问,直接回车就行
5.2配置
#vim /etc/postfix/main.cf
Inet_interfaces = all 默认设置
myhostname = http://www.77cn.com.cn 主机名 mydomain = http://www.77cn.com.cn 邮件域名
myorigin = $mydomain 外发邮件时发件人地址中的邮件域名
mydestination = $mydomain, $myhostname 可接收的邮件地址中的域名 home_mailbox = Maildir/ 邮件存储位置格式 #postfix check 检查配置 #postfix start 启动
5.3测试
邮件本地账户管理 #groupadd mailusers
#useradd -g mailusers -s /sbin/nologin test1 #useradd -g mailusers -s /sbin/nologin test2 #passwd test1 #passwd test2
SMTP发送邮件测试
#telnet localhost 25 连接本地的SMPT端口 Tring 127.0.0.1..
Connected to localhost.localdomain (127.0.0.1). Escape character is ‘^]’.
220 http://www.77cn.com.cn ESMTP Postfix
ehlo localhost 宣告客户端主机地址 250 http://www.77cn.com.cn
MAIL FROM: test01@http://www.77cn.com.cn 发信人地址 250 2.1.0 ok
RCPT TO: test02@http://www.77cn.com.cn 收信人地址 250 2.1.5 ok
DATA 标记开始写信 354 End data with <CR><LF>.<CR><LF>
Subject:hi 信件题目 Hello!
I’m just testing.
. “点”表示信件结束 250 2.0.0. ok:queued as 2F9CB756DC
quit 退出 221 2.0.0 Bye
Connection closed by foreign host.
查看接收到的邮件
#cat /home/test2/Maildir/new/ 按tab键 若看见刚才发的那封邮件,说明SMPT没有问题。
为收信做准备,安装Dovecot(意为信鸽,挺形象的) 六、安装并配置Dovecot 6.1安装
#useradd -M -s /sbin/nologin dovecot
#tar zxf dovecot-1.1.4.tar.gz -C /usr/local/src #cd /usr/local/src/dovecot-1.1.4
#./configure --sysconfdir=/etc --with-mysql #make
#make install 6.2配置 #cp /etc/dovecot-example.conf /etc/dovecot.conf 复制主配置文件
#vim /etc/dovecot.conf
ssl_disable = yes 禁用SSL机制
protocols = pop3 imap 指定邮局协议
disable_plaintext_auth = no 允许明文密码认证
mail_location = maildir:~/Maildir 设置邮件存储格式和位置 #vim /etc/pam.d/dovecot 创建pam认证文件 auth required pam_nologin.so auth include system-auth account include system-auth session include system-auth
#/usr/local/sbin/dovecot -c /etc/dovecot.conf 启动
6.3 POP3方式测试收邮件(也可用imap,imap是143端口) #telnet localhost 110
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1). Escape character is '^]'. +OK Dovecot ready.
user test1 输入用户名 +OK
pass ***** 输入密码 +OK Logged in.
list 列出邮件列表 +OK 1 messages; 1 480 .
retr 1 查看第一封邮件 +OK 480 octets
测试完成,输入quit退出
接下来支持虚拟用户 七、支持虚拟用户
7.1使用extman建立虚拟用户数据库,以后的用户及相关管理都会通过extman完成
#tar zxf extman-1.1.tar.gz -C /usr/local/src #cd /usr/local/src/ extman-1.1/docs #mysql -u root -p < extmail.sql #mysql -u root -p <init.sql 7.2让postfix支持虚拟用户 #vim /etc/postfix/main.cf #mydestination = $mydomain, $myhostname 该行需要注释掉
virtual_mailbox_base = /mailbox 指定虚拟邮箱存储目录的路径起点 virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf 指定虚拟邮件用户对应的别名文件位置
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf 指定记录虚拟邮箱地址与存储位置对应关系的映射文件位置
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
设置postfix服务器可以接收的虚拟邮件域的域名
virtual_uid_maps = static:1000 设置所有虚拟邮件用户映射的本地用户的UID号 virtual_gid_maps = static:1000 设置所有虚拟邮件用户映射的本地组的GID 号 #cd /usr/local/src/ extman-1.1/docs
#cp mysql_virtual_* /etc/postfix/ 在上面的三行配置中指定了这三个文件
7.3为虚拟用户设置发信认证
发信认证通过courier-authlib完成,如果没有认证,别人就可以很方便的使用你的邮箱发出一些垃圾邮件,所以这一步非常必要。 7.3.1安装courier-authlib 注意:在安装之前确认所有rpm方式安装的mysql程序都被卸载掉 #tar jxf courier-authlib-0.60.2.tar.bz2 -C /usr/local/src
#cd /usr/local/src/courier-authlib
./configure --prefix=/usr/local/courier-authlib --without-stdheaderdir --with-authmysql
--with-mysql-libs=/usr/local/mysql/lib/mysql/
--with-redhat --with-mysql-includes=/usr/local/mysql/include
这里的一些路径及使用参数一定要指正确,不然后面很可能会因为不能生成libauthmysql.so导致无法认证,由于这个问题我被卡了三周
#make
#make install
#make install-configure 生成默认配置文件authmysqlrc 和 authdaemonrc
7.3.2添加courier-authlib的库文件路径 #vim /etc/ld.so.conf 输入以下内容 /usr/local/courier-authlib/lib/courier-authlib
#ldconfig
7.3.3修改authdaemonrc主配置文件 #cd /usr/local/courier-authlib/etc/authlib #cp authdaemonrc authdaemonrc.bak #vim authdaemonrc
authmodulelist=”authmysql” authmodulelistorig=”authmysql”
#chmod -R 755 /usr/local/courier-authlib/var/spool/authdaemon
7.3.4修改authmysqlrc 文件
#cd /usr/local/courier-authlib/etc/authlib #cp authmysqlrc authmysqlrc.bak #vim authmysqlrc
MYSQL_SERVER localhost 数据库服务器位置 MYSQL_USERNAME extmail 数据库管理员账户 MYSQL_PASSWORD extmail 数据库管理员账户密码 MYSQL_SOCKET /tmp/mysql.sock 文件位置 MYSQL_DATABASE extmail 虚拟用户数据库
MYSQL_USER_TABLE mailbox 从mailbox表获得邮件账户信息 MYSQL_CRYPT_PWFIELD password 从password字段获得账户密码
MYSQL_UID_FIELD uidnumber 从uidnumber字段获得映射的本地用户UID MYSQL_GID_FIELD gidnumber 从gidnumber字段获得映射的本地组GID MYSQL_LOGIN_FIELD username 从username字段获得账户名称,带@后缀 MYSQL_HOME_FIELD concat('/mailbox/',homedir)合并出用户的宿主目录路径 MYSQL_NAME_FIELD name 从name 字段获得账户名称,不带@后缀 MYSQL_MAILDIR_FIELD concat('/mailbox/',maildir)合并出用户的邮件存储路径
7.3.5启动courier-authlib服务 #cd /usr/local/src/courier-authlib/
#cp courier-authlib.sysvinit /etc/init.d/courier-authlib #chmod 755 /etc/rc.d/init.d/courier-authlib #chkconfig --level 35 courier-authlib on #service courier-authlib start
7.4修改cyrus sasl2 #vim /usr/local/lib/sasl2/smtpd.conf
pwcheck_method:authdaemond
authdaemond_path:/usr/local/courier-authlib/var/spool/authdaemon/socket
7.5修改Dovecot #vim /etc/dovecot.conf 修改以下配置项
mail_location = maildir:/mailbox/%d/%n/Maildir auth default {
mechanisms = plain passdb sql {
args = /etc/dovecot-mysql.conf }
userdb sql {
args = /etc/dovecot-mysql.conf } }
#vim /etc/dovecot-mysql.conf
driver = mysql
connect = host=localhost dbname=extmail user=extmail password=extmail
这里飘红的几个都不需要修改了,直接用就行 default_pass_scheme = CRYPT
password_query = SELECT username AS user,password AS password FROM mailbox WHERE username = ‘%u’
user_query = SELECT maildir, uidnumber AS uid, gidnumber AS gid FROM mailbox WHERE username = ‘%u’
7.6建立虚拟用户邮箱目录 #mkdir -p /mailbox/http://www.77cn.com.cn/postmaster/Maildir
#cd /mailbox/http://www.77cn.com.cn/postmaster/Maildir #chown -R postfix:postfix /mailbox #dovecot 启动服务
7.7测试虚拟用户 /usr/local/courier-authlib/sbin/authtest -s login postmaster@http://www.77cn.com.cn extmail 测试成功可看到如下信息,否则失败:
Authentication succeeded.
Authenticated: postmaster@http://www.77cn.com.cn (uid 1000, gid 1000) Home Directory: /mailbox/http://www.77cn.com.cn/postmaster
Maildir: /mailbox/http://www.77cn.com.cn/postmaster/Maildir/ Quota: (none)
Encrypted Password: $1$phz1mRrj$3ok6BjeaoJYWDBsEPZb5C0 Cleartext Password: extmail Options: (none)
建立Webmail服务
webmail服务主要通过extman、extmail两个组件完成,前者用于系统管理,后者主要提供普通用户的邮件操作。 八、安装extmail及extman 8.1安装extmail
8.1.1安装依赖包 一共有三个依赖包
#tar -zxf Unix-Syslog-1.1.tar.gz -C /usr/local/src #cd /usr/local/src/Unix-Syslog-1.1 #perl Makefile.PL #make
#make install
DBI 下载地址 #tar -zxf DBI-1.607.tar.gz -C /uar/local/src #cd /usr/local/src/DBI-1.607 #perl Makefile.PL #make
#make install
DBD 下载地址: #tar -zxf DBD-mysql-4.011.tar.gz -C /usr/local/src #cd /usr/loca/src/DBD-4.011 #perl Makefile.PL #make
#make install 8.1.2安装extmail #tar -zxf extmail-1.0.5.tar.gz -C /usr/local/apache2/htdocs
#cd /usr/local/apache2/htdocs #mv extmail-1.0.5 extmail #cd extmail
#chown -R postfix:postfix cgi #cp webmail.cf.default webmail.cf
#cd /usr/local/apache2/htdocs/extmail #vim webmail.cf
SYS_CONFIG = /usr/local/apache2/htdocs/extmail/ 程序根目录
SYS_LANGDIR = /usr/local/apache2/htdocs/extmail/lang 语言包文件目录 SYS_TEMPLDIR = /usr/local/apache2/htdocs/extmail/html 系统模版目录 SYS_MAILDIR_BASE = /mailbox 邮件存储目录
SYS_MYSQL_USER = extmail 访问mysql数据库的用户
SYS_MYSQL_PASS = extmail 访问mysql数据库的用户的密码 SYS_MYSQL_DB = extmail 使用数据库的名称 SYS_MYSQL_HOST = localhost 数据库服务器地址
SYS_MYSQL_SOCKET = /tmp/mysql.sock 数据库套接文件位置
8.2安装extman 8.2.1安装依赖包 依赖包共有四个,主要用以提供系统信息、日志等功能 GD下载地址:
http://www.77cn.com.cn/repo/pkgs/perl-GD/GD-2.41.tar.gz/15d523ea72b552863453882f7d132712/
如提示缺少libgd,到此下载:https://http://www.77cn.com.cn/pierrejoye/gd-libgd
#tar -zxf GD-2.41.tar.gz -C /usr/local/src #cd /usr/local/src/GD-2.41 #perl Makefile.PL #make
#make install
File-Tail下载地址:http://www.77cn.com.cn/~mgrabnar/File-Tail-0.99.3/
#tar -zxf File-Tail-0.99.3.tar.gz -C /uar/local/src #cd /usr/local/src/File-Tail-0.99.3 #perl Makefile.PL #make
#make install
#rpm -ivh rrdtool-1.2.23-3.el5.i386.rpm #rpm -ivh rrdtool-perl-1.2.23-3.el5.i386.rpm 8.2.2安装extman
#tar -zxf extman-1.1.tar.gz -C /usr/local/apache2/htdocs #cd /usr/local/apache2/htdocs #mv extman-1.1 extman #cd extman
#chown -R postfix:postfix cgi
#mkdir /tmp/extman 临时回话保存目录 #chown -R postfix:postfix /tmp/extman
#vim /usr/localapache2/htdocs/extman/webman.cf
SYS_CONFIG = /usr/local/apache2/htdocs/extman/ 程序根目录
SYS_LANGDIR = /usr/local/apache2/htdocs/extman/lang 语言包文件目录 SYS_TEMPLDIR = /usr/local/apache2/htdocs/extman/html 系统模版目录 SYS_MAILDIR_BASE = /mailbox 邮件数据存放路径
SYS_MYSQL_USER = webman 访问mysql数据库的用户
SYS_MYSQL_PASS = webman 访问mysql数据库的用户的密码 SYS_MYSQL_DB = extmail 使用的数据库名称 SYS_MYSQL_HOST = localhost 数据库服务器地址
SYS_MYSQL_SOCKET = /tmp/mysql.sock 数据库套接文件位置
8.3设置邮件系统图形化日志
# ln –sf /usr/local/apache2/htdocs/extman/addon/mailgraph_ext/mailgraph-init /usr/sbin/
# cp –a /usr/local/apache2/htdocs/extman/addon/mailgraph_ext /usr/local # mailgraph-init start
# echo “/usr/sbin/mailgraph-init start” >> /etc/rc.d/rc/local
8.4修改httpd.conf,为extmail、extman添加虚拟主机 在httpd.conf文件尾部添加如下内容: NameVirtualHost *:80 <VirtualHost *:80>
ServerName http://www.77cn.com.cn
DocumentRoot /usr/local/apache2/htdocs/extmail/html/
ScriptAlias /extmail/cgi/ /usr/local/apache2/htdocs/extmail/cgi/ Alias /extmail /usr/local/apache2/htdocs/extmail/html/
ScriptAlias /extman/cgi /usr/local/apache2/htdocs/extman/cgi/ Alias /extman /usr/local/apache2/htdocs/extman/html/ ErrorLog logs/http://www.77cn.com.cn-error.log
CustomLog logs/http://www.77cn.com.cn.log common </VirtualHost> User postfix Group postfix 以上步骤完成可以通过 使用邮箱, 后台管理邮箱,默认管理员账户:root@http://www.77cn.com.cn 默认管理密码:extmail*123*
九、病毒及垃圾邮件过滤
9.1安装并配置MailScanner扫描
# tar zxvf MailScanner-4.75.11-1.rpm.tar.gz # cd MailScanner-4.75.11-1 # ./install.sh
# vim /etc/MailScanner/MailScanner.conf
Run As User = postfix Run As Group = postfix
Incoming Queue Dir = /var/spool/postfix/hold Outgoing Queue Dir = /var/spool/postfix/incoming MTA =postfix
Required SpamAssassin Score =7 High SpamAssassin Score = 10
Spam Actions = deliver header “X-Spam-Status: Yes”
High Soring Spam Actions = delete forward spam@http://www.77cn.com.cn # vim /etc/postfix/main.cf
header_checks = regexp: /etc/postfix/header_checks # vim /etc/postfix/header_checks
/^Received:/HOLD # chown –R postfix.postfix
/var/spool/MailScanner/incoming # chown –R postfix.postfix
/var/spool/MailScanner/quarantine # service MailScanner start
# chkconfig –level 35 MailScanner on 若找不到此服务,可find / -name “*MailScanner*”,看其执行脚本在哪个路径,最后执行之,一般在/opt/MailScanner-4.84.3-1/bin/MailScanner 9.2安装并配置SpamAssassin 垃圾邮件过滤器
# mount /dev/cdrom /media # cd /media
# rpm –ivh spamassassin-3.1.7-4.e15.i386.rpm # service spamassassin start 启动服务 # chkconfig –level 35 spamassassin on 9.3安装并配置F-Port 病毒查杀
安装F-Port 软件包安装过程中出现提示是按回车即可 # tar zxvf fp-Linux-i686-ws.tar.gz –C /opt/ # cd /opt/f-prot/ # ./install-f-prot.pl
若要升级病毒库可执行以下命令 #/opt/f-prot/fpupdate
以上已经完成了一个完整的邮件服务器,跟平时用到的网易、QQ邮箱没有什么区别了,距离邮件列表只差一步,安装上mailman即可 十、安装配置mailman 10.1安装mailman
#groupadd mailman
#useradd -d /no/home -s /sbin/nologin -g mailman mailman #mkdir /usr/local/mailman
#chown postfix:postfix /usr/local/mailman #chmod 02775 /usr/local/mailman
#tar zxvf mailman-2.1.14rc1.tgz #cd mailman-2.1.14rc1
#./configure --prefix=/usr/local/mailman \ --with-username=postfix \ --with-groupname=postfix \ --with-mail-gid=postfix \ --with-cgi-gid=postfix \
--with-mailhost=http://www.77cn.com.cn \ --with-urlhost=http://www.77cn.com.cn # make
# make install
#cd /usr/localmailman #touch data/aliases
#touch data/virtual-mailman
# ./bin/genaliases
#chown -R postfix:postfix /usr/local/mailman/data/aliases*
#chown -R postfix:postfix /usr/local/mailman/data/virtual-mailman* #chmod 664 /usr/localmailman/data/aliases*
#chmod 664 /usr/local/mailman/data/virtual-mailman*
修改mailman管理界面的管理员密码,以便通过界面认证后能够通过界面创建和操作邮件列表
# ./bin/mmsitepass # ./bin/mmsitepass -c
# vi Mailman/mm_cfg.py
增加如下部分
DEFAULT_EMAIL_HOST = 'http://www.77cn.com.cn' DEFAULT_URL_HOST = 'http://www.77cn.com.cn'
DEFAULT_URL_PATTERN = 'http://%s/mailman/' MTA = 'Postfix'
POSTFIX_STYLE_VIRTUAL_DOMAINS = ['http://www.77cn.com.cn','http://www.77cn.com.cn'] add_virtualhost('http://www.77cn.com.cn','http://www.77cn.com.cn')
DEFAULT_SERVER_LANGUAGE = 'zh_CN' 若要使用英语设置为en即可
执行配置自动检查和修复,这一步很重要,一定要执行,以帮助修复一些权限问题 # ./bin/check_perms -f
10.2配置postfix
# vi /etc/postfix/main.cf
#myorigin = $mydomain #建议注释掉myorigin(不注释该行mailman将无法使用,原因暂时不明)
virtual_alias_domains = http://www.77cn.com.cn recipient_delimiter = +
owner_request_special = no
alias_maps = hash:/etc/aliases,hash:/usr/local/mailman/data/aliases virtual_alias_maps = hash:/usr/local/mailman/data/virtual-mailman,mysql:/etc/postfix/mysql/mysql_virtual_alias_maps.cf
transport_maps = hash:/etc/postfix/transport default_privs = mailman
#postalias /usr/local/mailman/data/aliases
#postmap /usr/local/mailman/data/virtual-mailman
# vi /etc/postfix/transport
insert into transport set domain='http://www.77cn.com.cn',destination='local:'; # /usr/sbin/postmap /etc/postfix/transport #postfix reload
10.3为 mailman配置web相关 # vi /usr/local/apache2/conf/httpd.conf 在文件尾增加如下内容
<VirtualHost *:80>
ServerName http://www.77cn.com.cn
DocumentRoot /usr/local/apache2/htdocs/maillist/ #DocumentRoot /usr/local/mailman/cgi-bin/listinfo
ScriptAlias /mailman/ /usr/local/mailman/cgi-bin/ <Directory "/usr/local/mailman/cgi-bin/"> Options ExecCGI AllowOverride None Order allow,deny Allow from all </Directory>
Alias /icons/ /usr/local/mailman/icons/ <Directory "/usr/local/mailman/icons/"> Options ExecCGI AllowOverride None Order allow,deny Allow from all </Directory>
Alias /pipermail /usr/local/mailman/archives/public <Directory "/usr/local/mailman/archives/"> AddDefaultCharset Off AllowOverride None
Options +FollowSymlinks Order allow,deny Allow from all </Directory>
</VirtualHost>
重启apache
#/usr/local/apache2/bin/apachectl stop #/usr/local/apache2/bin/apachectl start
启动mailman服务
#/usr/local/mailman/bin/mailmanctl start
配置完成,重启httpd、postfix、mailman即可
使用以下链接登录mailman的管理员界面 http://www.77cn.com.cn/mailman/admin
使用以下链接查看当前主机的所有邮件列表 http://www.77cn.com.cn/ mailman/listinfo 使用以下链接创建一个新的邮件列表: http://www.77cn.com.cn/mailman/create