mail服务器初级 安装

      linux apache php mysql qmail vpopmail qmaliadmin

单位需要,我用了五一休息的时间折腾这个玩意对原理不太明白,就说下我安装的顺序,自己也做个记录
不过可能我的补丁打的不全。真正做服务器使用慎重。
1 安装linux ,这个不用说了,您就自己弄吧。
2 安装mysql5 , 这个拒绝经验主义,一定要按照规范来,要不你应该会有麻烦,我就有麻烦了。
安装顺序
shell> groupadd mysql                   建立组
shell> useradd -g mysql mysql  建立用户
shell> gunzip < mysql-VERSION.tar.gz | tar -xvf - 解压
shell> cd mysql-VERSION                           进入目录
shell> ./configure --prefix=/usr/local/mysql   预编译 参数自己加
shell> make
shell> make install
shell> cp support-files/my-medium.cnf /etc/my.cnf  配置mysql的配置文件
shell> cd /usr/local/mysql      权限修改  
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> bin/mysql_install_db --user=mysql     初始数据库
shell> chown -R root .               
shell> chown -R mysql var
shell> bin/mysqld_safe --user=mysql &               后台启动

如果出现问题,一般都是权限发生的问题
3,安装apache
进入目录
 ./configure --prefix=/usr/local/apache --enable-shared=max --enable-module=rewrite --enable-module=so
 make
 make install
 启动
 cd /usr/local/apache/bin/apachectl start
4,安装php
下载解压安装
 ./configure
 make
 make install

5,整合 php跟apache
 vi /usr/local/apache/conf/httpd.conf
 LoadModule php5_module modules/libphp5.so
 AddType application/x-httpd-php .php
 AddType application/x-httpd-php-source .phps

好了现在 lamp安装完成了
不管什么版本,安装是基本一样的
下面进去mail服务器的安装
可以使用多种组合,不过偶还是采取比较普遍的那种方式 qmail

安装软件,不要问为什么,因为看网上就是那里安装的

6,安装daemontools
http://cr.yp.to/daemontools.html
tar -zxvf daemontools-0.76.tar.gz
解压
cd admin/daemontools-0.76
补丁
patch -p1 < /home/pkg/netqmail-1.05/other-patches/daemontools-0.76.errno.patch
安装
package/install
# 验证daemontools已经正常运行:
sleep 5
ps ax | grep svscan

7,安装ucspi-tcp
tar zxvf ucspi-tcp-0.88.tar.gz
cd ucspi-tcp-0.88
patch -p1 < ../ucspi-tcp-0.88.errno.patch  //我没成功,直接条过
make
make setup check

8,qmail安装
#创建所需要的用户
mkdir /var/qmail
groupadd nofiles
useradd alias -g nofiles -d /var/qmail/alias -s /sbin/nologin
useradd qmaild -g nofiles -d /var/qmail -s /sbin/nologin
useradd qmaill -g nofiles -d /var/qmail -s /sbin/nologin
useradd qmailp -g nofiles -d /var/qmail -s /sbin/nologin
groupadd qmail
useradd qmailq -g qmail -d /var/qmail -s /sbin/nologin
useradd qmailr -g qmail -d /var/qmail -s /sbin/nologin
useradd qmails -g qmail -d /var/qmail -s /sbin/nologin

#顺便添加vpopmail用户
groupadd vchkpw -g 89
useradd vpopmail -u 89 -g vchkpw

#准备安装qmail

cd /home/pkg

tar -xzf toaster-scripts-0.7.tar.gz

cd netqmail-1.05/netqmail-1.05/

 

# 搜索函数straynewline中的451改为553 

vi qmail-smtpd.c

# 当你的服务器收到无效格式的邮件时,会发送:"I am not going to accept that message at the moment,you can try again later",对方服务器收到后,几秒钟后又会发送同样的邮件给你,造成多次的重复。 

# 改为553后,你的服务器将直接发送:"I am not going to accept that message,don't try sending it again.",告诉对方的服务器不要再发这封无效的信件。 

 

# RedHat/Fedora用户可能需要为TLS补丁链接一个include文件

# 输入如下命令:

ln -s /usr/kerberos/include/com_err.h /usr/include/

 

# 删除sendmail的链接

rm -rf /usr/sbin/sendmail

 

#qmail编译安装

make

make setup check

#注:qmail的补丁在vpopmail安装之后再打。 

 

# 用你自己的主机名代替下面的mail.domain.com

./config-fast mail.domain.com 

 

#设置管理员的邮箱地址。

#发往root/postmaster/mailer-daemon地址的邮件将会由定义的管理员邮箱接收。

#将如下的“admin@domain.com"替换成你的管理员邮箱。

cd /var/qmail/alias

echo "admin@domain.com" >; .qmail-postmaster

echo "admin@domain.com" >; .qmail-mailer-daemon

echo "admin@domain.com" >; .qmail-root

chmod 644 /var/qmail/alias/.qmail*

 

#开启SPF设置

echo ./Maildir/ >;/var/qmail/control/defaultdelivery 

echo 3 >; /var/qmail/control/spfbehavior

 

#添加qmail的帮助手册

echo MANPATH /var/qmail/man >;>; /etc/man.config

 

#为qmail服务建立监控目录和日志文件:

mkdir -p /var/qmail/supervise/qmail-send/log

mkdir -p /var/qmail/supervise/qmail-smtpd/log

mkdir -p /var/qmail/supervise/qmail-pop3d/log

mkdir -p /var/qmail/supervise/qmail-pop3ds/log

cp /home/pkg/toaster-scripts-0.7/send.run /var/qmail/supervise/qmail-send/run

cp /home/pkg/toaster-scripts-0.7/send.log.run /var/qmail/supervise/qmail-send/log/run

cp /home/pkg/toaster-scripts-0.7/smtpd.run /var/qmail/supervise/qmail-smtpd/run

cp /home/pkg/toaster-scripts-0.7/smtpd.log.run /var/qmail/supervise/qmail-smtpd/log/run

cp /home/pkg/toaster-scripts-0.7/pop3d.run /var/qmail/supervise/qmail-pop3d/run

cp /home/pkg/toaster-scripts-0.7/pop3d.log.run /var/qmail/supervise/qmail-pop3d/log/run

cp /home/pkg/toaster-scripts-0.7/pop3ds.run /var/qmail/supervise/qmail-pop3ds/run

cp /home/pkg/toaster-scripts-0.7/pop3ds.log.run /var/qmail/supervise/qmail-pop3ds/log/run

echo 20 >; /var/qmail/control/concurrencyincoming

chmod 644 /var/qmail/control/concurrencyincoming

chmod 755 /var/qmail/supervise/qmail-send/run

chmod 755 /var/qmail/supervise/qmail-send/log/run

chmod 755 /var/qmail/supervise/qmail-smtpd/run

chmod 755 /var/qmail/supervise/qmail-smtpd/log/run

chmod 755 /var/qmail/supervise/qmail-pop3d/run

chmod 755 /var/qmail/supervise/qmail-pop3d/log/run

chmod 755 /var/qmail/supervise/qmail-pop3ds/run

chmod 755 /var/qmail/supervise/qmail-pop3ds/log/run

mkdir -p /var/log/qmail/smtpd

mkdir -p /var/log/qmail/pop3d

mkdir -p /var/log/qmail/pop3ds

chown -R qmaill /var/log/qmail

 

#启动脚本:

cd /home/pkg

cp toaster-scripts-0.7/rc /var/qmail/rc

chmod 755 /var/qmail/rc

cp toaster-scripts-0.7/qmailctl /var/qmail/bin/

chmod 755 /var/qmail/bin/qmailctl

ln -s /var/qmail/bin/qmailctl /usr/bin

ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail

rm -rf /usr/lib/sendmail

ln -s /var/qmail/bin/sendmail /usr/lib/sendmail 

 

# 用daemontools来启动qmail-send和qmail-smtpd

ln -s /var/qmail/supervise/qmail-send /var/qmail/supervise/qmail-smtpd /service 

 

#命令:

# 启动,停止,重启,查看队列等

qmailctl start|stop|restart|doqueue|flush|reload|stat|pause|cont|cdb|queue|help 

 

# 检查服务

netstat -an | grep 25

ps -ef | grep qmail

ps -efl | grep "service errors" | grep -v grep 

 

 

#日志:

/var/log/maillog

/var/log/qmail/current

/var/log/qmail/pop3d/current

/var/log/qmail/pop3ds/current

/var/log/qmail/smtpd/current

网上找的,安装顺利完成

9,安装vpopmail
http://vpopmail.sf.net
建议安装
vpopmail-5.4.17.tar.gz

vpopmail-5.4.18.tar.gz 有点小的bug 不适合服务器使用

解压进入
./configure --enable-incdir=/usr/include/mysql --enable-libdir=/usr/lib/mysql --disable-roaming-users --enable-logging=p --disable-passwd --enable-clear-passwd --disable-domain-quotas --enable-auth-module=mysql --enable-auth-logging --enable-sql-logging --disable-valias --disable-mysql-limits --enable-learn-passwords

这里就有问题了,因为我们是自己编译的mysql
所以 --enable-incdir=/usr/include/mysql --enable-libdir=/usr/lib/mysql 目录要修改
--enable-incdir=/usr/local/mysql/include/mysql --enable-libdir=/usr/local/mysql/lib/mysql

如果编译不过,那就是这里的问题 主要是make不过
make
make install-strip

# 添加域,红色部份前面是域名,后面是管理员(postmaster)密码

vadddomain domain.com xukixu

 

# 添加用户,红色部份为注解,不用输入

vadduser -q 10485760S(邮箱大小) xukixu@domain.com(邮箱帐号) 1234(密码)

vmoduser -c 许靖(邮箱描述) xukixu@domain.com 

 

# 设置邮箱容量达到90%的警告信息

vi /home/vpopmail/domains/.quotawarn.msg 

 

From: 邮箱管理员 

Reply-To: postmaster@domain.com

To: 邮箱用户

Subject: 邮箱空间警告

Mime-Version: 1.0

Content-Type: text/html; charset=gb2312

Content-Transfer-Encoding: base64 

 

您的邮箱空间已经达到90%.如果想继续使用,请删除一些信件.

如果需要帮助,请联系邮箱管理员:

Email : postmaster@domain.com 

 

 

# 设置邮箱已满的警告信息

echo "邮件被拒绝,用户的邮箱空间已满." >; /home/vpopmail/domains/.over-quota.msg 

 

#启动脚本:

cp /home/pkg/toaster-scripts-0.7/vpopmailctl /var/qmail/bin

ln -s /var/qmail/bin/vpopmailctl /usr/bin

chmod 755 /var/qmail/bin/vpopmailctl 

使用网上的

10,安装Autorespond
tar -xvzf autorespond-2.0.5.tar.gz
cd autorespond-2.0.5
make 
make install

11,安装Ezmlm
tar -xvzf ezmlm-0.53.tar.gz
tar -xvzf ezmlm-idx-0.42.tar.gz
cp -rf ezmlm-idx-0.42/* ezmlm-0.53/
cd ezmlm-0.53
patch < idx.patch
chmod u+x makelang //这步现在的版本应该是不需要了,我没成功
make
make man
make setup

12,安装qmailadmin
tar -xvzf qmailadmin-1.2.9.tar.gz
cd qmailadmin-1.2.9 
./configure --enable-htmldir=/var/www/html --enable-cgibindir=/var/www/cgi-bin --enable-vpopuser=vpopmail --enable-autoresponder-bin=/usr/bin --disable-ezmlm-mysql --enable-maxusersperpage=20 --enable-maxaliasesperpage=20 --enable-modify-quota --enable-domain-autofill
make
make install-strip
cd /usr/local/share/qmailadmin/lang
mv en en.bak
cp zh-cn en 

到这里服务器就算安装完了,还少一个webmail的界面,这个就看您自己的爱好了,我到现在还没找到一个合适的。
可能您跟我有用样的一个想法,服务器我们是安装完了,但是用户注册,我们怎么同步啊?
不能每添加一个用户,我们就手动添加一次吧,我们也没那精力啊,没错,我有也有这样的想法
我分析了下vpopmail的表,我们可以通过程序推送用户到这张表里,就完成了,这个表里只保存了,基本的用户资料,特别少。如果要整合出其他的功能,估计还要进行其他的解决方案了。

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值