当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > 构造与系统用户无关的虚拟域邮件服务器

Linux服务器
Linux上双网卡绑定方法(Suse9SP3)
Linux操作系统调优参数的意义
Linux下使用SSH客户端及其Sftp文件传送
教你恢复被误删除的Linux文件
SQL Server注入大全及防御
Linux无法解析域名的解决办法
Linux系统下安装和配置MyEclipse的方法
Ubuntu下VirtualBox 1.4.0设置文件共享
Windows与Linux系统共享StarDict字典文件
修改Linux下相关的登陆信息
Windows通过SecureCRT远程登录Linux主机
Linux操作系统如何修改SWAP交换区的大小
Linux操作系统下为Apache目录添加密码
Linux时间设置与同步(NTP)
Linux内核补丁AMD旁路转换缓冲(TLB)错误
Linux架设DHCP服务器的方法
Fedora 8下Apache配置与管理
Linux操作系统下用单网卡捆绑双IP的方法
Ubuntu Linux系统环境变量配置文件
SUSE Linux中将Tomcat作为Service运行

Linux服务器 中的 构造与系统用户无关的虚拟域邮件服务器


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 44 ::
收藏到网摘: n/a


操作系统:FreeBSD4-stable

更新ports

cvsup-gL2-hcvsup.freebsdchina.org/usr/share/examples/cvsup/ports-supfile

安装apache服务器

cd/usr/ports/www/apache2/
makeinstallclean

安装openwebmail。其中加上WITH_QUOTA为将来实现磁盘配额作准备。

cd/usr/ports/mail/openwebmail/
makeWITH_QUOTA=yesinstallclean

安装postfix,过程中遇到提问都回答y

cd/usr/ports/mail/postfix/
makeinstallclean

修改:
/etc/rc.conf

加入:

sendmail_enable="YES"
sendmail_flags="-bd"
sendmail_pidfile="/var/spool/postfix/pid/master.pid"
sendmail_outbound_enable="NO"
sendmail_submit_enable="NO"

这是makeinstall的时候提示做的,不过有一次我配置的时候忘记了,但系统依然运作正常,还没完全理解会有什么问题。

安装vm-pop3d

cd/usr/ports/mail/vm-pop3d/
makeinstallclean

配置postfix

修改:
/usr/local/etc/postfix/main.cf
加入

virtual_alias_maps=hash:/usr/local/etc/postfix/virtual
alias_maps=hash:/usr/local/etc/postfix/aliases
default_privs=nobody
allow_mail_to_commands=alias,forward,include
allow_mail_to_files=alias,forward,include

最后两条很重要,因为默认是不启用aliases中的:include支持的,而openwebmail修改aliases文件时是使用该功能。

修改:
/usr/local/etc/postfix/virtual
加入:

jayvan.com#起码要加个tab,否则会出错
[email protected]

上述例子中我加入一个jayvan.com的虚拟域,并添加第一个用户jayvan以作为系统管理员

执行:

cd/usr/local/etc/postfix/;postmapvirtual

生成virtual.db

修改:
/usr/local/etc/postfix/aliases

加入

jayvan.jayvan.com:/var/spool/virtual/jayvan.com/jayvan

执行:
cd/usr/local/etc/postfix/;postaliasaliases

生成aliases.db

配置vm-pop3d自动执行
修改:
/etc/inetd.conf

加入:

pop3streamtcpnowaitroot/usr/local/sbin/vm-pop3dvm-pop3d-unobody


修改:
/etc/rc.conf

加入:
inetd_enable="YES"

当然也可以使用rc.d的脚本来执行。

配置openwebmail支持jayvan.com域
添加文件:
/usr/local/www/cgi-bin/openwebmail/etc/site.conf/jayvan.com

文件必须以虚拟域名为文件名
文件内容:

auth_moduleauth_vdomain.pl
auth_withdomainyes
mailspooldir/var/spool/virtual/jayvan.com#注意目录名和域名一致
use_syshomedirno
use_homedirspoolsno
enable_autoreplyno
enable_setforwardno
enable_vdomainyes
vdomain_admlistjayvan
vdomain_maxuser100
vdomain_vmpop3_pwdpath/usr/local/etc/virtual#这是vm-pop3d默认寻找passwd的目录
vdomain_vmpop3_pwdnamepasswd
vdomain_vmpop3_mailpath/var/spool/virtual
vdomain_postfix_aliases/usr/local/etc/postfix/aliases
vdomain_postfix_virtual/usr/local/etc/postfix/virtual
vdomain_postfix_postalias/usr/local/sbin/postalias
vdomain_postfix_postmap/usr/local/sbin/postmap

执行:

mkdir-p/var/spool/virtual/jayvan.com
chownnobody/var/spool/virtual/jayvan.com
chgrpmail/var/spool/virtual/jayvan.com

mkdir-p/usr/local/etc/virtual/jayvan.com
touch/usr/local/etc/virtual/jayvan.com/passwd
chmod644/usr/local/etc/virtual/jayvan.com/passwd

htpasswd/usr/local/etc/virtual/jayvan.com/passwdjayvan

chmod755/usr/local/www/cgi-bin/openwebmail/etc/users#这个很重要,默认该名录权限会导致openwebmail无权访问

重启动系统以启动postfix和vm-pop3,然后就可以使用了。
使用系统管理员账号登录openwebmail后可以增加邮件账号。注意登陆的时候要用完整的邮件地址做账号,如:
[email protected]

怎样让quota生效还没有研究出来。对于数十人的小公司的内部邮件服务器,我认为这个组合挺好。其中openwebmail的网络磁盘功能可以省掉设置个人文件服务器共享。
目前似乎没看到openwebmail中能自动设置群发账号,如果确实没有,这是一个缺点。自动注册账号功能尽管是很有用的,但对于这类型的公司用户来说,没有问题也不算太大。openwebmail里增加用户的功能勉强还是可满足要求的。