中国网管论坛's Archiver

小小 发表于 2007-9-2 10:50

邮件服务器配置

> 一、基本系统准备
> 1、安装freebsd
> 选择全部安装,设置网卡地址:192.168.0.88,网关:192.168.0.1,dns:
> 202.102.192.68,本机名:mail,域名:chinake.com,开通ftp,增加一个用户:
> chaohu,密码:123456用户组:wheel,目录选根目录/,安装完成后添加cvsup和
> portupgrade,重启。
> 注:增加用户是因为ports安装下载太慢,将需要的软件在windows下使用下载工具下一
> 来后上传,另外可以用SSH登入主机,这样象我等windows用户也可熟练使用ee等编辑。
> 2、使用SecureCRT或者putty.exe登入,并su root用户。
> #chmod 777 /usr/ports/distfiles
> 现假设你已经将需要的软件下载了,打开ftp工具(如leaftp),登入192.168.0.88,
> 用户名chaohu和123456,上传文件。
> 3、更新ports
> #cd /usr/share/examples/cvsup/
> #/usr/local/bin/cvsup -g -L2 -h ftp.freebsdchina.org ports-supfile
> 同样可以更新stable-supfile和standard-supfile
> 到此基本系统安装结束。
>
> 二、web服务器准备
> 1、安装Apache-modssl
> #cd /usr/ports/www/apache13-modssl/
> #make install
> 根据提示:
> #ee /etc/rc.conf
> 增加:apache_enable=YES
> 如果想要自己制定SSL证书,先别make clean
> 增加php支持
> #cd /usr/ports/lang/php4
> #make install
> 根据提示
> #ee /usr/local/etc/apache/httpd.conf
> 增加:
> AddType application/x-httpd-php .php
> AddType application/x-httpd-php-source .phps
> #cd /usr/local/etc
> #cp php.ini-dist php.ini
> 增加Zend支持,只能手动安装,不过很简单,到Zend网站将其下载后
> #tar zxvf ZendOptimizer-2.5.5-freebsd4.3-i386.tar.gz
> #cd ZendOptimizer-2.5.5-freebsd4.3-i386
> #chmod 755 install.sh
> #./install .sh UNix下不允许在当前目录下运行程序的,所以要加./,按照提示,几
> 个回车就行了。
> 2、安装mysql
> # cd /usr/ports/databases/mysql323-server
> # make WITH_OPENSSL=yes WITH_LINUXTHREADS=yes BUILD_OPTIMIZED=yes
> install clean
> 3、用ports 来安装phpmyadmin
> #cd /usr/ports/databases/phpmyadmin
> # ee Makefile,将默认的安装路径改为www/data,
> 以后的sqwebmail,qmailadmin,vqregister等软件请自行检查默认web的cgi-bin路径
> #make install clean
> #cd /usr/local/www/data/phpMyAdmin
> #chmod 755 config.inc.php
> #ee config.inc.php
> 将
> $cfg['Servers'][$i]['auth_type'] = 'config'; // Authentication method
> (config, http or cookie based)?
> 改成
> $cfg['Servers'][$i]['auth_type'] = 'http'; // Authentication method (config,
> http or cookie based)?
> 4、增加expect的支持(sqwebmail修改密码要用的)
> #cd /usr/ports/lang/expect
> #make install clean
> 到此,web系统建成,如果还要优化,请参考有关mysql、apache网站,修改连接数,新
> 建立虚拟主机等,修改php.ini中有关参数。
> #reboot
>
> 三、qmail的安装
> 1、qmail
> #cd /usr/ports/mail/qmail-smtp_auth+tls
> #make WITH_BIG_TODO_PATCH=yes WITH_QMAILQUEUE_PATH=yes
> #make disable-sendmail
> #make enable-qmail
> #cd /var/qmail/configure
> #./config-fast mail.chinake.com
> 请将mail.chinake.com改成你自己的
> #ee /etc/rc.conf
> 检查增加
> sendmail_enable="NONE"
> sendmail_submit_enable="NO"
> sendmail_outbound_enable="NO"
> sendmail_msp_queue_enable="NO"
> 2、vpopmail
> #cd /usr/ports/mail/vpopmail
> #make WITH_MYSQL=yes WITH_MYSQL_SERVER=localhost WITH_MYSQL_USER=vpopmail
> WITH_MYSQL_PASSWD=vpopmail WITH_MYSQL_DB=vpopmail install clean
> 请自行修改其中的vpopmail为你自己的,通过[url]http://192.168.0.88/phpmyadmin/[/url]中的
> 权限修改root用户密码,增加vpopmail数据库,增加vpopmail用户及密码,并给
> vpopmail对数据库vpopmail所有权限。其命令模式为:
> #mysql
> mysql>SET PASSWORD FOR root=PASSWORD('password');(修改root的密码)
> mysql>CREATE DATABASE vpopmail;
> mysql>use mysql;
> mysql>GRANT USAGE ON * . * TO "vpopmail"@"localhost"IDENTIFIED BY "****";
> mysql>GRANT ALL PRIVILEGES ON `vpopmail` . * TO "vpopmail"@"localhost"WITH
> GRANT OPTION ;
> mysql>bye
> 3、ispell
> #cd /usr/ports/german/ispell-neu
> #make install clean
> 4、sqwebmail
> #cd /usr/ports/mail/sqwebmail
> #make WITH_VCHKPW=YES WITH_ISPELL=YES install
> 根据提示:
> #make configure
> #make clean
> #ee /etc/crontab
> 增加以下:
> 40 * * * * root /usr/local/share/sqwebmail/cleancache.pl
>
> #cd /usr/local/share/sqwebmail/
> #cp authdaemonrc.dist authdaemonrc
> #/usr/local/libexec/sqwebmail/authlib/authdaemond start
> 5、qmailadmin
> #cd /usr/ports/mail/qmailadmin
> #make install clean
>
> 好了,qmail前期准备工作就绪了,重启一服务器,看看authdaemond sqwebmaild有没
> 有正常启动,如果没有,请检查上述步骤,下面准备配置。
>
> 四、配置qmail服务器
> 1、测试vpopmail
> #cd /usr/local/vpopmail/bin
> #./vadddomain test.com
> #./vadduser [email]test@test.com[/email]
> 如果没有任何提示的话,那么就对了。
> 2、安装daemontools
> #cd /usr/ports/sysutils/daemontools
> #make install clean
> 3、配置daemontools
> 3.1建立路径并设置权限
> #mkdir -p /var/log/qmail/qmail-smtpd
> #mkdir -p /var/log/qmail/qmail-pop3d
> #mkdir -p /var/log/qmail/qmail-send
>
> #chmod -R 755 /var/log/qmail
> #chown -R qmaill:wheel /var/log/qmail
>
> 3.2 Svscan 启动
>
> mkdir /service
> chmod 755 /service
> mkdir /var/qmail/supervise
> chmod 755 /var/qmail/supervise
>
> mkdir /var/qmail/supervise/qmail-smtpd
> mkdir /var/qmail/supervise/qmail-smtpd/log
> chmod +t /var/qmail/supervise/qmail-smtpd
>
> mkdir /var/qmail/supervise/qmail-send
> mkdir /var/qmail/supervise/qmail-send/log
> chmod +t /var/qmail/supervise/qmail-send
>
> mkdir /var/qmail/supervise/qmail-pop3d
> mkdir /var/qmail/supervise/qmail-pop3d/log
> chmod +t /var/qmail/supervise/qmail-pop3d
>
> ln -s /var/qmail/supervise/* /service/
>
> 启动文件配置Qmail Control-File:
>
> #ee /var/qmail/rc
> env env - PATH="/var/qmail/bin:/usr/local/bin"
> qmail-start ./Maildir/
>
> POP3D:
>
> #ee /var/qmail/supervise/qmail-pop3d/run
> #!/bin/sh
> exec /usr/local/bin/tcpserver -H -R -v -c100 0 110
> /var/qmail/bin/qmail-popup mail.chinake.com /usr/local/vpopmail/bin/vchkpw
> /var/qmail/bin/qmail-pop3d Maildir 2>&1
>
> #chmod 755 /var/qmail/supervise/qmail-pop3d/run
>
> #ee /var/qmail/supervise/qmail-pop3d/log/run
> #!/bin/sh
> exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t s100000 n20
> /var/log/qmail/qmail-pop3d 2>&1
>
> #chmod 755 /var/qmail/supervise/qmail-pop3d/log
> #chmod 755 /var/qmail/supervise/qmail-pop3d/log/run
>
> 收信
> #ee cd /var/qmail/supervise/qmail-smtpd/run
> #!/bin/sh
> exec /usr/local/bin/tcpserver -p -R -x /etc/tcp.smtp.cdb -u92 -g91 -v -c100
> 0 smtp /usr/local/bin/rblsmtpd -r blackholes.easynet.nl -r relays.ordb.org
> /home/vpopmail/bin/vchkpw /bin/true 2>&1
>
> #chmod 755 /var/qmail/supervise/qmail-smtpd/run
>
> #ee /var/qmail/supervise/qmail-smtpd/log/run
> #!/bin/sh
> exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t s100000 n20
> /var/log/qmail/qmail-smtpd 2>&1
>
> #chmod 755 /var/log/qmail/qmail-smtpd/log
> #chmod 755 /var/log/qmail/qmail-smtpd/log/run
>
> 发信
> #ee /var/qmail/supervise/qmail-send/run
> #!/bin/sh
> exec /var/qmail/rc
>
> #chmod 755 /var/qmail/supervise/qmail-send/run
>
> #cd /var/qmail/supervise/qmail-send/log/run
> #!/bin/sh
> exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t s100000 n20
> /var/log/qmail/qmail-send 2>&1
>
> #chmod 755 /var/qmail/supervise/qmail-send/log/
> #chmod 755 /var/qmail/supervise/qmail-send/log/run
>
> #rm /usr/local/etc/rc.d/qmail.sh
> #ee /usr/local/etc/rc.d/qmail.sh
>
> #!/bin/sh
> case "$1" in
> start)
> echo -n "Starting qmail: svscan"
> if cd /var/qmail/supervise; then
> env - PATH="/var/qmail/bin:/usr/local/bin:/usr/bin:/bin" svscan &
> echo $! > /var/run/svscan.pid
> fi
> echo "."
> ;;
> stop)
> echo -n "Stopping qmail: svscan"
> kill `cat /var/run/svscan.pid`
> echo -n " qmail"
> svc -dx /var/qmail/supervise/*
> echo -n " logging"
> svc -dx /var/qmail/supervise/*/log
> echo "."
> ;;
> stat)
> cd /var/qmail/supervise
> svstat * */log
> ;;
> doqueue|alrm)
> echo "Sending ALRM signal to qmail-send."
> svc -a /var/qmail/supervise/qmail-send
> ;;
> queue)
> qmail-qstat
> qmail-qread
> ;;
> reload|hup)
> echo "Sending HUP signal to qmail-send."
> svc -h /var/qmail/supervise/qmail-send
> echo "Sending HUP signal to qmail-pop3d."
> svc -h /var/qmail/supervise/qmail-pop3d
> ;;
> pause)
> echo "Pausing qmail-send"
> svc -p /var/qmail/supervise/qmail-send
> echo "Pausing qmail-smtpd"
> svc -p /var/qmail/supervise/qmail-smtpd
> echo "Pausing qmail-pop3d"
> svc -p /var/qmail/supervise/qmail-pop3d
> ;;
> cont)
> echo "Continuing qmail-send"
> svc -c /var/qmail/supervise/qmail-send
> echo "Continuing qmail-smtpd"
> svc -c /var/qmail/supervise/qmail-smtpd
> echo "Continuing qmail-pop3d"
> svc -c /var/qmail/supervise/qmail-pop3d
> ;;
> restart)
> echo "Restarting qmail:"
> echo "* Stopping qmail-smtpd."
> svc -d /var/qmail/supervise/qmail-smtpd
> echo "* Sending qmail-send SIGTERM and restarting."
> svc -t /var/qmail/supervise/qmail-send
> echo "* Restarting qmail-smtpd."
> svc -u /var/qmail/supervise/qmail-smtpd
> echo "* Sending qmail-pop3d SIGTERM and restarting."
> svc -t /var/qmail/supervise/qmail-pop3d
> ;;
> cdb)
> tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
> chmod 644 /etc/tcp.smtp*
> echo "Reloaded /etc/tcp.smtp."
> ;;
> *)
> echo "Usage: $0
> {start|stop|restart|doqueue|reload|stat|pause|cont|cdb|queue}"
> exit 1
> esac
> exit 0
> #chmod 755 /usr/local/etc/rc.d/qmail.sh
>
> #ee /etc/tcp.smtp
> 127.0.0.1:allow,RELAYCLIENT=""
> :allow
>
> #/usr/local/bin/tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
> #chmod 644 /etc/tcp.smtp.cdb
> 启动qmail
> #/usr/local/etc/rc.d/qmail.sh start
> 如果没有错误的话,那么你成功了,如何有错误码,请检查以上编辑的文件,是否有空
> 格或者其它格上的错误。
> 选择Qmail的主要原因是因为有用户注册,下面我们来安装它
> 1、安装qmailadmin
> cd /usr/ports/mail/qmailadmin
> make -DWITH_MODIFY_QUOTA
> make install clean
> 2、安装vqregister
> #cd /usr/ports/mail/vqregister
> #make install clean
> #ee /usr/local/www/cgi-bin-dist/vqregister/vqregister.conf
>
> # vQregister configuration file
> # ADMINEMAIL
> #AdminEmail [email]mh@myfreebsd.org[/email]
> # REGISTERUSER
> # Syntax: RegisterUser
> #RegisterUser emaildomain
> # SUBJECT
> #
> # Syntax: Subject
> #
> Subject Your new email account at emaildomain
> # VERIFY
> #
> # Syntax: Verify
> # Default: off
> #
> Verify off
> # ALLOWPASSWORD
> #
> # Syntax: AllowPassword
> # Default: off
> #
> AllowPassword on
> # ALLOWDOMAIN
> #
> # Syntax: AllowDomain
> #
> AllowDomain chinake.com
> # REDIRECT
> #
> # Syntax: Redirect
> #
> Redirect [url]http://mail.chinake.com/cgi-bin/sqwebmail/sqwebmail[/url]
> # PASSWORD
> #
> # Syntax: Password
> #
>
> # PASSWORDLEN
> #
> # Syntax: PasswordLen
> # Default: 8
> #
> PasswordLen 8
> # BADHOSTS
> #
> #BadHosts badhosts
> # DB_Host
> #
> # Syntax: DB_Host
> #
> DB_Host localhost
> # DB_Name
> #
> # Syntax: DB_Name
> #
> DB_Name vpopmail
> # DB_USER
> #
> # Syntax: DB_User
> #
> DB_User vpopmail
> # DB_PASSWORD
> #
> # Syntax: DB_Password
> #
> DB_Password vpopmail
> # DB_FIELDS
> #
> # Syntax: DB_Fields
> [, [, ]]
> #
> DB_Fields user_info user,dom,pass,cemail,fname
> # ADVERTISE
> #
> # Syntax: Advertise
> #
> Advertise off
> 安装杀毒软件
>
> FreeBSD下的杀病毒软件很少,但是McAfee却一直为FreeBSD的stable版本(包括3.x
> 和4.x)提供了McAfee VirusScan Command Line版本进行病毒防护。 安装也非常的简
> 单:
>
> cd /usr/ports/security/vscan
> make install clean
>
> ##################################(我加的部分)
>
> 安装 Qmail-scanner
> cd /usr/port/mail/qmail-scanner
> make install clean
>
> 修改刚才的smtpd启动文件
>
> #ee cd /var/qmail/supervise/qmail-smtpd/run
> #!/bin/sh
> export QMAILQUEUE="/usr/local/bin/qmail-scanner-queue.pl"
> /usr/local/bin/softlimit -m 1500000000 \n> /usr/local/bin/tcpserver -p -R -x
> /etc/tcp.smtp.cdb -qmaild -gnofiles -v -c100 0 \n> smtp /usr/local/bin/rblsmtpd -r blackholes.easynet.nl -r relays.ordb.org
> \n> /home/vpopmail/bin/vchkpw /bin/true 2>&1
>
> 安装p5-Mail-SpamAssassin(反垃圾邮件的)
> cd /usr/port/mail/p5-Mail-SpamAssassin
> make install clean
>
> 重启tcpserver进程

shenhua_sjp 发表于 2007-9-25 16:58

顶起,看来是不错的邮件服务器帖。

15996665128 发表于 2007-10-6 20:57

:lol

页: [1]

Powered by Discuz! Archiver 6.1.0  © 1999-2008 bbs.bitsCN.com