精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>电脑技术>>● FreeBSD>>有待整理的文章-新加的文章都在这里>>安装qmail的文档(包括unix环境设置、proftp等相关软件的安装)

主题:安装qmail的文档(包括unix环境设置、proftp等相关软件的安装)
发信人: mylife(nayer)
整理人: hackerbay(2002-09-06 16:48:52), 站内信件
Step 1 系统环境设置
a. pw usermod root -s /usr/local/bin/bash
b. 修改/etc/rc.conf文件的如下项
linux_enable="NO" 
sendmail_enable="NO" 
gateway_enable="YES"
sshd_enable="YES"
inetd_enable="NO"   
usbd_enable="NO" 
ifconfig_fxp0="inet 172.16.100.1  netmask 255.255.0.0"
hostname="test.egotop.com"
defaultrouter="172.16.1.254"
注:其中ifconfig_fxp0\hostname\defaultrouter改为你所需要的值
c. 修改$HOME下的.login文件加入以下行用于支持中文
stty cs8 -istrip
stty pass8
bind 'set convert-meta off'
bind 'set meta-flag on'
bind 'set output-meta on'
export LANG=zh_CN.EUC
export LC_CTYPE=zh_CN.EUC        

Step 2 安装proftpd
a. 安装
tar xzvf proftpd-1.2.5rc2.tar.gz
cd proftpd-1.2.5rc2
./configure --enable-pam=no --prefix=/usr/local/proftp --exec-prefix=/usr/local/proftp
make 
make install
b. 启动
修改/etc/rc.local文件加入以下行
/usr/local/proftp/sbin/proftpd &             #start proftp

Step 3 编译内核
cp kernel4-2.conf /usr/src/sys/i386/conf/.
cd /usr/src/sys/i386/conf/.
config kernel4-2.conf
cd ../../compile/kernel4-2.conf/
make
make install
reboot

Setp 4 安装DNS
a. 安装
mkdir bind-8.3.1
tar xzvf bind-8.3.1.tar.gz -C bind-8.3.1
make
make install
tar xvf namedb.tar -C /
b. 配置
修改/etc/namedb下的172.16/test.com/named.conf这三个文件
cp /etc/namedb/named.conf /etc/named.conf
c. 启动
修改/etc/rc.local文件加入以下行
/usr/sbin/named & #start dns

Setp 5 安装mysql
a. 安装
tar xzvf mysql-3.23.49.tar.gz
cd mysql-3.23.49
pw groupadd mysql
pw useradd mysql -g mysql -m -d /data/mysql
passwd mysql 
./configure --prefix=/data/mysql --exec-prefix=/data/mysql
make
make install
scripts/mysql_install_db
chown -R root  /data/mysql/
chown -R mysql /data/mysql/var
chgrp -R mysql /data/mysql/
cp support-files/my-medium.cnf /etc/my.cnf
cp /data/mysql/lib/mysql/* /usr/libexec/.
cp /data/mysql/lib/mysql/* /usr/lib/. 
b. 配置
/data/mysql/bin/mysqladmin -uroot password gotop2000  //修改root密码
用以下语句增加一个可以远程访问数据库的账号
/data/mysql/bin/mysql -uroot -p
GRANT all
ON *.*
TO nayer@"172.16.2.76"
IDENTIFIED BY 'gotop2000';
注ON *.*为数据表、nayer@"172.16.2.76"为用户和访问主机的ip、IDENTIFIED BY 'gotop2000'为密码
c. 启动
修改/etc/rc.local文件加入以下行
/data/mysql/bin/safe_mysqld --user=mysql & #start mysql

Setp 6 安装openssl
a. 安装
tar xzvf openssl-engine-0.9.6d.tar.gz
cd openssl-engine-0.9.6d
./config
make
make install
b. 生成证书
openssl genrsa -des3 -out ca.key 1024
chmod 400 ca.key
openssl req -new -x509 -days 3650 -key ca.key -out ca.crt
chmod 400 ca.crt
cp ca.key ../.
cp ca.crt ../.

Setp 7 安装apache+modphp/imap/mysql+modssl
a. 安装
tar xzvf mod_ssl-2.8.10-1.3.26.tar.gz
tar xzvf apache_1.3.26.tar.gz
tar xzvf imap-2001a.tar.Z
tar xzvf zend_4.1.0_freebsd4.0-i386.tar.gz
tar xzvf php-4.1.2.tar.gz
cd mod_ssl-2.8.10-1.3.26
./configure \
--with-apache=../apache_1.3.26/ 
cd ../apache_1.3.26
./configure --prefix=/data/apache --exec-prefix=/data/apache
cd ../imap-2001a
make bsf
cd ../php-4.1.2
./configure \
--with-apache=../apache_1.3.26/ \
--with-mysql=/data/mysql \
--enable-memory-limit=yes \
--enable-debug=no \
--with-imap=../imap-2001a
make 
make install
cp php.ini-dist /usr/local/lib/php.ini
cd ../apache_1.3.26
SSL_BASE=/home/nayer/src/openssl-engine-0.9.6d
./configure \
--prefix=/data/apache \
--exec-prefix=/data/apache \
--enable-module=ssl \
--activate-module=src/modules/php4/libphp4.a \
--enable-module=php4
make
cp /home/nayer/src/ca.crt /home/nayer/src/apache_1.3.26/conf/ssl.crt/snakeoil-ca-rsa.crt
cp /home/nayer/src/ca.key /home/nayer/src/apache_1.3.26/conf/ssl.key/snakeoil-ca-rsa.key
make certificate
make install
cp ./conf/ssl.crt/server.crt /data/apache/conf/.
cp ./conf/ssl.key/server.key /data/apache/conf/.
cd ZendOptimizer-1.2.0-PHP_4.1.0-FreeBSD4.0-i386/data/
mkdir /usr/local/Zend
mkdir /usr/local/Zend/lib
cp ZendOptimizer.so /usr/local/Zend/lib
b. 配置
修改/usr/local/lib/php.ini文件
 加入
zend_optimizer.optimization_level=15
zend_extension="/usr/local/Zend/lib/ZendOptimizer.so"
 修改
max_execution_time = 300
upload_max_filesize = 12M
编辑httpd.conf文件修改或增加如下行:
AddType application/x-httpd-php .php
SSLCertificateFILE /usr/local/apache/conf/server.crt 
SSLCertificateKeyFile /usr/local/apache/conf/server.key
注:客户端浏览器中需要加载ca.crt证书
c. 启动
修改/etc/rc.local文件加入以下行
/data/apache/bin/apachectl startssl #start https
d. 测试
在/data/apache/htdocs/目录下增加文件info.php并加入一行<?phpinfo()?>,在用浏览器浏览该页面
echo '<?phpinfo()?>' > /data/apache/htdocs/info.php

setp 8 安装qmail+vpopmail+ucspi-tcp+cmd5checkpw+smtp/ssl
a 安装
tar xzvf qmail-1.03-auth-ssl-cn-freebsd.tar.gz
tar xzvf vpopmail-5.2.1.tar.gz
tar xzvf ucspi-tcp-0.88.tar.gz
tar xzvf cmd5checkpw-0.22.tar.gz
cd qmail-1.03
mkdir /var/qmail
pw groupadd nofiles
pw useradd alias -g nofiles -d /var/qmail/alias -s /nonexistent
pw useradd qmaild -g nofiles -d /var/qmail -s /nonexistent
pw useradd qmaill -g nofiles -d /var/qmail -s /nonexistent
pw useradd qmailp -g nofiles -d /var/qmail -s /nonexistent
pw groupadd qmail
pw useradd qmailq -g qmail -d /var/qmail -s /nonexistent
pw useradd qmailr -g qmail -d /var/qmail -s /nonexistent
pw useradd qmails -g qmail -d /var/qmail -s /nonexistent
make setup check
./config-fast test.test.com
./config
cd ~alias
touch .qmail-postmaster .qmail-mailer-daemon .qmail-root
chmod 644 ~alias/.qmail*
  生成SMTP证书
make cert
cp /var/qmail/boot/home /var/qmail/rc
cd /home/nayer/src/ucspi-tcp-0.88
make
make setup check
cd ../cmd5checkpw-0.22
make
make install
cd ../vpopmail-5.2.1
pw groupadd vchkpw -g 89
pw useradd vpopmail -g vchkpw -u 89 -d /data/vpopmail -m
  编辑vmysql.h文件中的以下几行
#define MYSQL_UPDATE_SERVER "localhost"
#define MYSQL_UPDATE_USER   "root"
#define MYSQL_UPDATE_PASSWD "12345" 
#define MYSQL_READ_SERVER   "localhost"
#define MYSQL_READ_USER     "root"
#define MYSQL_READ_PASSWD   "12345"
./configure --enable-mysql=y \
--enable-incdir=/data/mysql/include/mysql \
--enable-libdir=/data/mysql/lib/mysql \
--prefix=/data/vpopmail \
--exec-prefix=/data/vpopmail \
--enable-qmaildir=/var/qmail \
--enable-qmail-newu=/var/qmail/bin/qmail-newu \
--enable-qmail-inject=/var/qmail/bin/qmail-inject \
--enable-qmail-newmrh=/var/qmail/bin/qmail-newmrh \
--enable-clear-passwd=y \
--enable-auth-logging=y \
--enable-mysql-logging=y \
--enable-logging=y
make
make install-strip
b. 配置
  修改/data/qmail/rc文件中的./Mailbox为./Maildir/
  解决系统邮件的收发问题
rm /usr/sbin/sendmail  
ln -s /var/qmail/bin/sendmail /usr/lib/sendmail
ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
  解决smtp认证和SSL问题
chmod 6755 /data/vpopmail/bin/vchkpw
echo 'exec /usr/local/bin/tcpserver -H -P -u 1005 -g 1004 0 smtp /var/qmail/bin/qmail-smtpd /data/vpopmail/bin/vchkpw /bin /bin/cmd5checkpw /bin &' > /usr/local/sbin/smtpssl.sh
注:-u 1005 -g 1004的数值应根据qmaild的uid和gid设置
chmod 744 /usr/local/sbin/smtpssl.sh
  编辑/var/qmail/alias的以下文件,文件内容为邮件域内的某个帐号名,通常应为邮件系统的管理员的邮件地址,用来接收用户发给系统的、系统无法发出又无法退回的、邮件系统的检查日志邮件
.qmail-mailer-daemon
.qmail-postmaster
.qmail-root


c. 启动
修改/etc/rc.local文件加入以下行
csh -cf '/var/qmail/rc &' #start qmail
/usr/local/sbin/smtpssl.sh #start smtp+ssl
d. 管理
/data/vpopmail/bin/vadddomain test.test.com //添加域
/data/vpopmail/bin/vadduser [email protected] //添加用户
/data/vpopmail/bin/vpasswd [email protected] //改用户密码
/data/vpopmail/bin/vsetuserquota [email protected] 100000000 //限制用户空间

setp 9 安装Courier-imap
a. 安装
tar xzvf courier-imap-1.4.6.tar.gz
cd courier-imap-1.4.6
./configure \
--prefix=/usr/local/c-imap \
--exec-prefix=/usr/local/c-imap \
--without-authmysql \
--enable-unicode \
--disable-root-check
make
make install
cd /usr/local/c-imap/etc/
cp imapd-ssl.dist imapd-ssl         
cp authdaemonrc.dist authdaemonrc
cp pop3d-ssl.dist pop3d-ssl
cp imapd.dist imapd
cp pop3d.dist pop3d
b. 配置
  IMAP连接数,修改/usr/local/c-imap/etc/authdaemonrc文件中的
daemons=200     
  配置pop3-ssl服务,编辑/usr/local/c-imap/etc/pop3d.cnf,修改以下几行
[ req_dn ]
C=CN
ST=HB
L=WUHAN
O=Courier Mail Server
OU=Automatically-generated POP3 SSL key
CN=test.test.com
[email protected]
注:主要是CN字段,如你的邮件主机名为bsd.email.my,做了一个pop3的别名,那么就应该改为pop3.email.my
C代表国家,L代表位置,O代表组织名,OU代表组织单元名,CN代表主机名
  生成pop3d.pem证书文件
cd /usr/local/c-imap/share
./mkpop3dcert
  配置imap-ssl服务,编辑/usr/local/c-imap/etc/imapd.cnf,修改以下几行
[ req_dn ]
C=CN
ST=st
L=WuHan
O=Courier Mail Server
OU=Automatically-generated IMAP SSL key
CN=imap.email.my
[email protected]
  生成imapd.pem证书文件
cd /usr/local/c-imap/share
./mkimapdcert
c. 启动
修改/etc/rc.local文件加入以下行
/usr/local/c-imap/libexec/imapd.rc start            //start imap
/usr/local/c-imap/libexec/imapd-ssl.rc start        //start imap ssl
/usr/local/c-imap/libexec/pop3d.rc start            //start pop3
/usr/local/c-imap/libexec/pop3d-ssl.rc start        //start pop3 ssl


----
 明天会更美好

[关闭][返回]