FreeBSD网站平台建设全过程—安装配置E-mail服务器
iceblood 前辈制作的qmail安装包使安装qmail邮件服务器简化了许多,只是sqwebmail汉化的好像有点问题,我下载了一个汉化好的 sqwebmail,将它填入iceblood前辈的安装包内,可以随安装包一次安装完成。为了提供邮箱注册功能,我使用了最新版本的 vqregister-2.5,并将其界面进行了简单的汉化。本E-mail服务器包含的功能:
1、Qmail帐号与系统帐号的分离。
2、Qmail邮件列表功能。
3、Qmail自动回复功能。
4、对vpopmail的支持。
5、邮件帐号WEB管理方式。
6、邮件的WEB使用方式,如:WEB发邮件,查看邮件。
7、能任意调整WEB的CGI以及HTML路径。
8、SMTP服务的密码验证功能,能有效的防止别人利用自己的服务器发送匿名信。
9、选择性安装webmail。
10、对虚拟域的支持。
11、增加qmail的管理脚本,安装后可以运行qmail start|stop|restart来管理qmail。
12、全面支持Mysql数据库,只要在SQL设置区里打开数据库的支持,并设置好数据库密码,就可以支持数据库了。
13、增加了QmailAdmin和sqwebmail的中文界面!![新]
14、对很多包有是否安装的可选择余地![新]
以上为iceblood前辈制作的qmail安装包v1.5.3自带功能。
在此基础上我添加了修改过的sqwebmail的中文界面并增加了邮箱注册功能(中文界面)。
下载qmail安装包1.5.3
ftp://baihua.3322.org/pub/server/Qmail_setup-v1.5.3.tar.gz
下载修改过的汉化安装包sqwebmail-3.5.0
ftp://baihua.3322.org/pub/server/sqwebmail-3.5.0-cn.tar.gz
下载我汉化后的vqregister-2.5
ftp://baihua.3322.org/pub/server
英文原版vqregister-2.5下载地址
http://inter7.com/vqregister.html
首先把下载的安装文件上传到/home/ylf/app目录
解压缩qmail_setup-v1.5.3安装包
# cd /home/ylf/app
# tar zxvf qmail_setup-v1.5.3.tar.gz
进入解开的目录
# cd Qmail_setup
将新的sqwebmail中文安装包拷到此目录
# cp ../sqwebmail-3.5.0-cn.tar.gz ./
编辑安装配置文件setup
# vi seutp
按系统情况修改如下内容:(这里是我的配置)
# 操作系统类型为FreeBSD
_OS="FreeBSD"
# 默认语言为中文
_LANG="CN"
# 不安装apache
_INSTALLAPACHE="NO"
# 添加qmail用户
_ADDQMAILUSERS="YES"
# 域名
_DOMAIN=mail01.3322.org
# 邮箱管理员密码
_MAILPASSWD=1234
# CGI路径
_CGIBIN=/usr/local/www/cgi-bin
# Html路径
_HTMLPATH=/usr/local/www/data
###########--------Advanced set--------#################
# 设置邮箱容量50M
_MAILSIZE=50000000
# enable virutal domain lookup via reverse ip address lookup for virtual domains. "y" and "n"
_USERCRUISE=n
# apache 安装路径
_APACHEPATH=/usr/local
# 不使用系统用户验证
_SYSTEMPASS=n
# 安装 vpopmail
_VPOPMAIL="YES"
# 安装 ezmlm
_EZMLMIN="YES"
# ezmlm coding
_EZMLM=ch_GB
# 安装 autorespond
_AUTORESPOND="YES"
# 安装 QmailAdmin
_QMAILADMIN="YES"
##########--------SqWebMail set--------#############
# 安装 webmail
_WEBMAIL="YES"
# webmail coding set.have "iso","gb2312","big5" and more.
_MIMESET=gb2312
# webmail use SSL,"YES" or "NO"
_WEBHTTPS="NO"
##########--------SQL set---------################
# 使用数据库
_SQL=y
# mysql 主机
_SQLHOST=localhost
# mysql 用户
_SQLUSER=root
# mysql 密码
_SQLPASS=123456
# include path
_INCDIR=/usr/local/include/mysql
# lib file path
_LIBDIR=/usr/local/lib/mysql
然后在安装脚本里找到下面几句
tar xzf sqwebmail-3.3.7.20020910.tar.gz
cd sqwebmail-3.3.7.20020910
if [ "$_LANG" = "CN" ]; then
cp /tmp/iceblood/Qmail_setup/iceblood/sqwebmailcn/*.html sqwebmail/html/en-us
fi
将其改为
tar xzf sqwebmail-3.5.0-cn.tar.gz
cd sqwebmail-3.5.0
# if [ "$_LANG" = "CN" ]; then
# cp /tmp/iceblood/Qmail_setup/iceblood/sqwebmailcn/*.html sqwebmail/html/en-us
# fi
改好后保存。这样安装包就可以自动安装新的sqwebmail程序。
让setup可执行并执行setup安装
# chmod 700 setup
# ./setup
安装完成后系统自动运行qmail程序。可以通过qmail start|stop手动启动或停止qmail程序。
测试:
因为我们前面设置了虚拟主机www01.3322.org 和 www02.3322.org,他们的文档目录不是安装qmail时所指定的目录。为了保证邮件访问正常,我们再添加一个虚拟主机 mail01.3322.org,将它的文档目录指向/usr/local/www/data:
先到希网申请一个域名,我们假设它是mail01.3322.org
编辑/usr/local/etc/apache/httpd.conf
# vi /usr/local/etc/apache/httpd.conf
添加下面一段
ServerAdmin webmaster@mail01.3322.org
DocumentRoot /usr/local/www/data
ServerName mail01.3322.org
ErrorLog /var/wwwlogs/mail01.3322.org.error.log
CustomLog /var/wwwlogs/mail01.3322.org.log common
重新启动apache
# /usr/local/etc/rc.d/apache.sh stop
# /usr/local/etc/rc.d/apache.sh start
首先确认mail01.3322.org已经正确指向了你的主机ip地址。然后在浏览器地址栏输入http: //mail01.3322.org/cgi-bin/qmailadmin ,这样就进入了qmailadmin管理界面,其中的域名添mail01.3322.org,密码是1234。登录后就可以管理email账号了。
建立一个新用户,然后在浏览器地址栏输入http://mail01.3322.org/cgi-bin/sqwebmail ,进入webmail,以你新建立的用户登录,就可以收发邮件了!
关于SMTP验证的问题:
网上有很多讨论关于qmail安装包的smtp验证有问题的文章,我经过反复测试,发现iceblood前辈的安装包本身并没有问题,问题出在 foxmail上,如果你使用Foxmail4.2发邮件,不需要在smtp验证添任何内容就能发出去;如果是使用outlook,不添或添错了smtp 验证内容都发不出去。大家可以试试。所以我这里没有给qmail-smtp打补丁。(iceblood前辈的安装包不同版本之间好像有区别,建议大家下载 我这个)
安装vqregister-2.5:
vqregister-2.5是vqsignup的升级版本,提供qmail邮箱注册功能。
进入vqregister-2.5安装目录
# cd /home/ylf/app/vqregister-2.5-cn
编译安装前需要修改两个文件
修改register.c文件
# vi register.c
找到下面一行
eret = execl("/var/qmail/bin/qmail-remote", "/var/qmail/bin/qmail-remote", p, "register@inter7.com", cemail, NULL);
将里面的qmail路径指向正确的路径,这里改为
eret = execl("/usr/local/qmail/bin/qmail-remote", "/usr/local/qmail/bin/qmail-remote", p, "register@inter7.com", cemail, NULL);
修改安装配置文件Makefile
# vi Makefile
找到这几行
DEFS = -I$(VDIR)/include -I/usr/local/mysql/include
LIBS = -L$(VDIR)/lib -lvpopmail -lcrypt -L/usr/local/mysql/lib/mysql -lmysqlclient
INSTALL_DIR = /usr/local/apache/cgi-bin/vqregister
将它们改成实际路径,这里是
DEFS = -I$(VDIR)/include -I/usr/local/include/mysql
LIBS = -L$(VDIR)/lib -lvpopmail -lcrypt -L/usr/local/lib/mysql -lmysqlclient
INSTALL_DIR = /usr/local/www/cgi-bin/vqregister
编译安装
# make install