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

Linux服务器
Linux:安装Apache与PHP
Linux双网卡开启NAT共享的设置
关于Linux系统下PATH设置
查看Linux系统版本信息的命令
修改linux文件权限命令:chmod
Linux环境网络服务相关的配置文件的含义
Linux解压rar文件内容全部乱码的处理
Linux下关于RPM软件包的操作命令
root用户密码遗忘(Linux)该怎么办?
Linux下Tomcat自启动的设置
FreeBSD系统平台下的WEB服务的组建
Linux系统下简单安装VPN
Tomcat与Web服务器
Linux下vsftp的安装和配置方法
如何设定一个安全的log服务器
Ubuntu自带的FTP服务器vsftpd技巧
Linux服务器攻击四种级别介绍
可以强化Linux系统的大体步骤
利用Rewrite规则封掉对方的IP
Linux内核7个值得关注的开发热点

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 47 ::
收藏到网摘: 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里增加用户的功能勉强还是可满足要求的。