转帖自 http://www.openkaku.com/?p=48
■■安装邮件列表Mailman
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
# yum -y install mailman
设置密码
# /usr/lib/mailman/bin/mmsitepass
# vi /usr/lib/mailman/Mailman/mm_cfg.py
MTA = ‘Postfix’
DEFAULT_SERVER_LANGUAGE = ‘en’
DEFAULT_URL_HOST = ‘mail.kanichi.jp’
DEFAULT_EMAIL_HOST = ‘kanichi.jp’
add_virtualhost(DEFAULT_EMAIL_HOST,’mail.kanichi.jp’)
DEFAULT_SUBJECT_PREFIX = ‘[%(real_name)s:%%d]‘
#SMTPHOST = ‘mail.kanichi.jp’
#SMTPPORT = ‘25′
登录到path中
# export PATH=${PATH}:/usr/lib/mailman/bin
制作aliases文件
# /usr/lib/mailman/bin/genaliases
# chown mailman. /etc/mailman/aliases*
# chmod g+w /etc/mailman/aliases*
# vi /etc/postfix/main.cf
alias_maps = hash:/etc/aliases
↓
alias_maps = hash:/etc/aliases, hash:/etc/mailman/aliases
# /etc/init.d/postfix restart
创建管理列表
# newlist mailman
/etc/init.d/mailman start
# chkconfig mailman on
■管理用命令
————————————
创建邮件列表
# newlist support_kanichi
邮件列表一览
# list_lists
追加会员列表 (members.txt的邮件地址换行)
# add_members -r members.txt ml-test
删除会员列表
# remove_members -f members.txt ml-test
登录会员一览
# list_members ml-test
转帖自:http://blog.chinaunix.net/u/13258/showart_193055.html
MailMan+Postfix+MySql实 现虚拟域邮件列表功能
# 安装MailMan
cd /usr/ports/mail/mailman && make MAIL_GID=mailman CGI_GID=vmail install clean |
# 配置启动项
ee /etc/rc.conf |
# 加入如下内容
echo mailman_enable="YES" |
# 创建文件
touch /usr/local/mailman/data/aliases
touch /usr/local/mailman/data/virtual-mailman |
# 编辑main.cf
ee /usr/local/etc/postfix/main.cf |
# 添加如下内容
owner_request_special = no
recipient_delimiter = +
unknown_local_recipient_reject_code = 550alias_maps = hash:/etc/aliases, hash:/usr/local/mailman/data/aliases virtual_alias_maps = mysql:/usr/local/etc/postfix/mysql_virtual_alias_maps.cf,hash:/usr/local/mailman/data/virtual-mailman |
# 设置别名库文件权限
chown -R mailman:mailman /usr/local/mailman/data/aliases* chown -R mailman:mailman /usr/local/mailman/data/virtual-mailman* chmod 664 /usr/local/mailman/data/aliases*
chmod 664 /usr/local/mailman/data/virtual-mailman*
postalias /usr/local/mailman/data/aliasespostmap /usr/local/mailman/data/virtual-mailman postfix reload |
# 编辑/usr/local/mailman/Mailman/mm_cfg.py
ee /usr/local/mailman/Mailman/mm_cfg.py |
# 在底部增加如下内容
MTA = 'Postfix'
POSTFIX_STYLE_VIRTUAL_DOMAINS = ['domain1.com','domain2.com']
DEFAULT_SERVER_LANGUAGE = 'zh_CN'add_virtualhost('domain1.com','domain2.com') |
第一行,表示Mailman 使用的MTA系统是Postfix.
第二行,表示Mailman下现存2个邮件域domain1,domain2.
POSTFIX_STYLE_VIRTUAL_DOMAINS = ['domain1.cn','domain2.cn']
(参数后面跟的2个域分别代表邮件虚拟名1,和虚拟域名2,如果此处不设置创建虚拟域 邮件列表时会出现错误。)
第三行,表示添加的虚拟主机域名,需要和第二 行中创建的虚拟域名相同.
第四行,表示Mailman使 用默认语言为中文.
# 保存退出后执行如下命令,重新创建别名库文件
/usr/local/mailman/bin/genaliases |
特 别注意:如果添加虚拟域成功,在执行genaliases命令后将重新刷新别名库文件.
当文件内容如下时,表明虚拟域创建成功
# LOOP ADDRESSES START
mailman-loop@domain2.com mailman-loop
mailman-loop@domain1.com mailman-loop
# LOOP ADDRESSES END
默认情况如下,该文件仅有一个默认域
# LOOP ADDRESSES START
mailman-loop@domain1.com mailman-loop
# LOOP ADDRESSES END
# 修改管理员密码
/usr/local/mailman/bin/mmsitepass |
# 创建一个邮件列表mailman
/usr/local/mailman/bin/newlist mailman |
# 注意:此操作必须进行,否则服务无法正常启动.
# 检查MailMan状态,加-f可以修复错误
/usr/local/mailman/bin/check_perms /usr/local/mailman/bin/check_perms -f |
# 如出现No problems found,表示没有错误.
# 启动MailMan
/usr/local/etc/rc.d/mailman start |
# 启动时如出现错误提示:'Site list is missing: mailman'
# 由于必须建立默认的名为mailman的邮件列表后,mailman的服务才能够正常启动.
# 配置apache支持mailman
# config for mailman
ScriptAlias /mailman "/usr/local/mailman/cgi-bin"AllowOverride None Options none Order allow,deny Allow from all Alias /pipermail "/usr/local/mailman/archives/public" AllowOverride None Options +FollowSymlinks Order allow,deny Allow from all |
特 别提示:由于在安装过程中一处很微小地方的错误,导致本人郁闷了2个星期。
由于本人用的DNS是MX记录,所以出现错误。如果DNS使用A记录的 话不会有问题.
如果使用MX记录,可以将服务器上的/etc/hosts域名指向IP地址即可。
xxx.xxx.xxx.xxx domain1.com. domain2.com.
每台服务器环境可能不同,大家要不断摸索尝试安装不可轻信网络上一些安装文档。
估 计作者在转贴的时候自己本根就没有试过文档内容是否可行。
重要参考: http://www.centos.org/modules/newbb/print.php?form=1&topic_id=21327&forum=38&order=ASC&start=0
重要参考: https://www.dream4ever.org/archive/t-203763.html
修改main.cf
改成
myhostname = mail.abc.com
mydomain = abc.com
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
local_recipient_maps = $alias_maps $virtual_mailbox_maps $virtual_alias_maps
alias_maps = hash:/etc/postfix/aliases, hash:/usr/local/mailman/data/aliases
virtual_mailbox_domains = 123.com.cn
virtual_alias_domains =
virtual_alias_maps = mysql:/etc/postfix/mysql/mysql_virtual_alias_maps.cf,
hash:/usr/local/mailman/data/virtual-mailman
就可以了.以前的main.cf配置文件是有问题的,邮件进入到mailman处理之后,mailman无法找到local的帐号.导致处理失败.
注:abc.com是随便填写的,只要不跟virtual_domain一致就可以.