由 xuki 在 10-29-2004 11:50 发表:
在RHAS3下安装mail服务器2.1-许靖
在Linux下安装邮件服务器
(RHAS3+Qmail+Apache+PHP+smtp-auth+Vpopmail+MySQL+Igenus+ezmlm+autorespond+qmailadmin)
许靖
mail:xuki_[email protected]
QQ:19852439
MSN:seawolf_[email protected]
版本:2.1
最后更新日期: 2004年10月29日
功能列表
SMTP服务器:SMTP-AUTH认证(Plain,Login,CRAM-MD5),TLS(SSL)支持,病毒和垃圾邮件检测
POP3服务器:CRAM-MD5,APOP,和SSL支持
IMAP服务器:TLS(SSL)支持
自动回复
邮件列表
Web管理
WebMail
--------------------------------------------------------------------------------
安装准备
安装环境
这个安装过程基本上你只需要复制粘贴就可以完成.我在RedHat上安装成功,其他系统还没试过.
为了方便安装我在安装Redhat3.0时选了apache、php、mysql,注意mysql-devel和mysql-server开发包一定要装上.另外大家在安装LINUX时一定要装上软件开发和内核开发两个软件组,这样可以避免不必要的由于编译环境的问题而导致的安装问题,这点对于LINUX新手犹为重要。安装系统后,一般另需安装php-mysql这个包,在安装光碟第三张。AS3.0安装后,并没有mysql-server软件包,需自行下载安装,为方便大家,mysql-server软件包我已经与所有软件放在一个包中。
要确认下面的软件是否已经安装:
rpm -q httpd
rpm -q php
rpm -q php-mysql
rpm -q mysql
rpm -q mysql-server
rpm -q mysql-devel
rpm -q gdbm
rpm -q gdbm-devel
rpm -q openssl
rpm -q openssl-devel
rpm -q stunnel
rpm -q krb5-devel
如果你还没有安装, 请先安装它们. 你可以到安装光盘或是在这里找到它们的RPM包 http://www.rpmfind.net.
启动mysql server:
/etc/rc.d/init.d/mysqld start
设置mysql root口令:
mysqladmin -u root password ‘xukixu’(设置你的密码)
Enter passwod 直接回车)
mysql的头文件和库文件分别在/usr/include/mysql和/usr/lib/mysql。
安装完Redhat3.0后,修改/etc/httpd/conf/httpd.conf,使web服务正常启用,为mysql添加root用户的密码。如果设置了防火墙,要打开服务器的www 80、smtp 25和pop3 110三个端口。
检查DNS设置
在开始之前,确保正确设置了DNS MX记录.例如使用"domain.com"作为邮件域,对MX记录进行测试:
在Linux下:
host -t mx domain.com
domain.com. mail is handled by 10 mail.domain.com.
host -t a mail.domain.com
mail.domain.com. has address xxx.xxx.xxx.xxx
在Windows下:
C:>nslookup
Default Server: ns.domain.com
Address: xxx.xxx.xxx.xxx
>set type=mx
>domain.com
domain.com MX preference = 10, mail exchanger = mail.domain.com
mail.domain.com internet address = xxx.xxx.xxx.xxx
>exit
卸载已有的邮件系统
确认没有SMTP/POP/IMAP服务在运行:
/etc/init.d/sendmail stop
netstat -na | grep 25
netstat -na | grep 110
netstat -na | grep 143
ntsysv
删除已有的SMTP/POP/IMAP软件:
rpm -e --nodeps sendmail
rpm -e --nodeps postfix
下载软件
文中所用的软件:
netqmail-1.05.tar.gz
daemontools-0.76.tar.gz
daemontools-0.76.errno.patch
autorespond-2.0.5.tar.gz
toaster-scripts-0.6.tar.gz
qmail-toaster-0.6-1.patch.bz2
ezmlm-0.53.tar.gz
ezmlm-idx-0.42.tar.gz
courier-imap-2.2.2.20040207.tar.bz2
igenus_2.0.2_20040901_release.tgz
mysql-server-3.23.58-1.i386.rpm
qmailadmin-1.2.3.tar.gz
chkuser-0.6.mysql.patch
ucspi-tcp-0.88.a_record.patch
ucspi-tcp-0.88.errno.patch
ucspi-tcp-0.88.nobase.patch
ucspi-tcp-0.88.tar.gz
vpopmail-5.4.7.tar.gz
qmailadmin-1.2.3.tar.gz
vqadmin-2.3.6.tar.gz
Mail-SpamAssassin-3.0.1.tar.gz
clamav-0.80.tar.gz
qmail-scanner-1.22.tgz
qms-analog-0.3.4.tar.gz
maildrop-1.7.0.tar.bz2
tnef-1.2.3.1.tar.gz
qmailanalog-0.70.tar.gz
qmailanalog-0.70.errno.patch
qlogtools-3.1.tar.gz
qlogtools_errno.patch
zlib-1.1.4.tar.gz
libpng-1.2.7.tar.gz
gd-1.8.3.tar.gz
mrtg-2.10.15.tar.gz
qmailmrtg7-4.0.tar.gz
我把下文中所提到的软件打成了一个包,下载地址为: http://www.zioncom.net/qmail_2.0.tar.gz ;我一般把软件放在/home/pkg下面,根据个人习惯吧。
tar -xzf netqmail-1.05.tar.gz
cd netqmail-1.05
./collate.sh
注意:./collate.sh这一步不要忘
--------------------------------------------------------------------------------
安装软件
daemontools
daemontools是一个收集管理UNIX进程的工具.用它来监听qmail-send,qmail-smtpd,qmail-pop3d.
安装:
cd /home/pkg
tar -zxvf /home/pkg/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
--------------------------------------------------------------------------------
ucspi-tcp
ucspi-tcp包括tcpserver和tcpclient,一个命令行工具来建立client-server应用程序.
安装:
cd /home/pkg
tar zxvf ucspi-tcp-0.88.tar.gz
cd ucspi-tcp-0.88
patch -p1 < ../ucspi-tcp-0.88.a_record.patch
patch -p1 < ../ucspi-tcp-0.88.errno.patch
patch -p1 < ../ucspi-tcp-0.88.nobase.patch
make
make setup check
qmail
这个toaster补丁,是下面这几个补丁的组合:
smtp auth 0.4.2
qmail-queue (to allow for virus scanners)
maildir++ patch
support oversize dns packets (not necessary if you use dnscache)
mfcheck (check that the envelope sender has a dns entry)
tarpit delay
qregex (regular expression matching in badmailfrom and badmailto)
big concurrency (set the spawn limit above 255)
安装:
mkdir /var/qmail
groupadd nofiles
useradd -g nofiles -d /var/qmail/alias alias
useradd -g nofiles -d /var/qmail qmaild
useradd -g nofiles -d /var/qmail qmaill
useradd -g nofiles -d /var/qmail qmailp
groupadd qmail
useradd -g qmail -d /var/qmail qmailq
useradd -g qmail -d /var/qmail qmailr
useradd -g qmail -d /var/qmail qmails
在这里把vpopmail用户也加上
groupadd -g 89 vchkpw
useradd -u 89 -g vchkpw vpopmail
cd /home/pkg
tar -xzf toaster-scripts-0.6.tar.gz
cd netqmail-1.05/
bunzip2 -c ../qmail-toaster-0.6-1.patch.bz2 | patch -p0
cd netqmail-1.05
注:在RedHat上,需要为TLS补丁链接一个include文件:
ln -s /usr/kerberos/include/com_err.h /usr/kerberos/include/krb5.h \
/usr/kerberos/include/profile.h /usr/include/
make
make setup check
用你自己的主机名代替下面的mail.domain.com
./config-fast mail.domain.com
cd /var/qmail/alias
touch .qmail-postmaster .qmail-mailer-daemon .qmail-root
chmod 644 /var/qmail/alias/.qmail*
cd -
echo 1 > /var/qmail/control/mfcheck
echo ./Maildir/ >/var/qmail/control/defaultdelivery
make cert
按提示输入公司信息
make tmprsadh
注:这里可能要多等一会
用"crontab -e"在crontab里增加下面这条,每天晚上更新temp keys
01 01 * * * /var/qmail/bin/update_tmprsadh > /dev/null 2>&1
为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
chmod +t /var/qmail/supervise/qmail-send
chmod +t /var/qmail/supervise/qmail-smtpd
chmod +t /var/qmail/supervise/qmail-pop3d/log
chmod +t /var/qmail/supervise/qmail-pop3ds/log
cp /home/pkg/toaster-scripts-0.6/send.run /var/qmail/supervise/qmail-send/run
cp /home/pkg/toaster-scripts-0.6/send.log.run /var/qmail/supervise/qmail-send/log/run
cp /home/pkg/toaster-scripts-0.6/smtpd.run /var/qmail/supervise/qmail-smtpd/run
cp /home/pkg/toaster-scripts-0.6/smtpd.log.run /var/qmail/supervise/qmail-smtpd/log/run
cp /home/pkg/toaster-scripts-0.6/pop3d.run /var/qmail/supervise/qmail-pop3d/run
cp /home/pkg/toaster-scripts-0.6/pop3d.log.run /var/qmail/supervise/qmail-pop3d/log/run
cp /home/pkg/toaster-scripts-0.6/pop3ds.run /var/qmail/supervise/qmail-pop3ds/run
cp /home/pkg/toaster-scripts-0.6/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
启动脚本:
cp /home/pkg/toaster-scripts-0.6/rc /var/qmail/
cp /home/pkg/toaster-scripts-0.6/qmailctl /var/qmail/bin/
chmod 755 /var/qmail/rc
chmod 755 /var/qmail/bin/qmailctl
ln -s /var/qmail/bin/qmailctl /usr/bin
ln -s /var/qmail/bin/sendmail /usr/sbin/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
我建议重新回顾一下刚才我们所做的步骤以熟悉对qmail的安装. 下面我们将开始vpopmail的安装.
--------------------------------------------------------------------------------
vpopmail
vpopmail是一个以qmail为基础的虚拟域管理包
vpopmail的用户和组我们前边已经建立了
配置:
mkdir -p ~vpopmail/etc
设置默认域,红色部份改成你要设置的域。
echo "domain.com" > ~vpopmail/etc/defaultdomain
设置smtp规则,关闭open relays
echo '127.0.0.1:allow,RELAYCLIENT=""' > ~vpopmail/etc/tcp.smtp
cd ~vpopmail/etc ; tcprules tcp.smtp.cdb tcp.smtp.tmp < tcp.smtp
设置MySQL信息,第一个vpopmail是帐号,xukixu为密码,第二个vpopmail是数据库
echo "localhost|0|vpopmail|xukixu|vpopmail" > ~vpopmail/etc/vpopmail.mysql
chmod 640 ~vpopmail/etc/vpopmail.mysql
chown -R vpopmail.vchkpw ~vpopmail/etc
在MySQL里添加vpopmail的帐号
/usr/local/mysql/bin/mysql -uroot --pxukixu
CREATE DATABASE vpopmail;
GRANT select,insert,update,delete,create,drop ON vpopmail.*
TO vpopmail@localhost IDENTIFIED BY 'xukixu';
FLUSH PRIVILEGES;
QUIT
安装:
cd /home/pkg/
tar zxvf vpopmail-5.4.7.tar.gz
cd vpopmail-5.4.7
带数据库支持
./configure --enable-auth-module=mysql \
--enable-incdir=/usr/include/mysql \
--enable-libdir=/usr/lib/mysql \
--enable-mysql-logging \
--enable-mysql-limits \
--enable-valias \
--enable-logging=y
make
make install-strip
管理:
echo 'export PATH=$PATH:/home/vpopmail/bin' >> /etc/profile
source /etc/profile
添加域,红色部份前面是域名,后面是管理员(postmaster)密码
vadddomain domain.com xukixu
添加用户,红色部份为注解,不用输入
vadduser -q 10485760S(邮箱大小) [email protected] (邮箱帐号) 1234(密码)
vmoduser -c 许靖(邮箱描述) [email protected]
设置邮箱容量达到90%的警告信息
vi ~vpopmail/domains/.quotawarn.msg
From: 邮箱管理员
Reply-To: [email protected]
To: 邮箱用户
Subject: 邮箱空间警告
Mime-Version: 1.0
Content-Type: text/html; charset=gb2312
Content-Transfer-Encoding: base64
您的邮箱空间已经达到90%.如果想继续使用,请删除一些信件.
如果需要帮助,请联系邮箱管理员:
Email : [email protected]
设置邮箱已满的警告信息
echo "邮件被拒绝,用户的邮箱空间已满." > ~vpopmail/domains/.over-quota.msg
启动脚本:
cp /home/pkg/toaster-scripts-0.6/vpopmailctl /var/qmail/bin
ln -s /var/qmail/bin/vpopmailctl /usr/bin
chmod 755 /var/qmail/bin/vpopmailctl
用daemontools来启动qmail-pop3d和qmail-pop3ds
ln -s /var/qmail/supervise/qmail-pop3d /service
ln -s /var/qmail/supervise/qmail-pop3ds /service
命令:
启动,停止,重启,查看队列等
vpopmailctl start|stop|restart|stat|pause|cont|help
检查服务
netstat -an | grep 110
ps -ef | grep qmail
ps -efl | grep "service errors" | grep -v grep
用MySQL-Front查看数据库
补丁:
带数据库支持
cd /home/pkg/netqmail-1.05/netqmail-1.05
patch -p0 < /home/pkg/chkuser-0.6.mysql.patch
如果数据库是自定义安装的,还要把libmysqlclient.a复制到指定位置
mkdir -p /usr/local/mysql/lib/mysql/
cp /usr/local/mysql/lib/libmysqlclient.a /usr/local/mysql/lib/mysql/
make clean
make
qmailctl stop
make setup check
qmailctl start
安装选项参考:
vpopmail 5.4.5
------------------------------------
vpopmail directory = /home/vpopmail
uid = 89
gid = 89
roaming users = OFF --disable-roaming-users (default)
password learning = OFF --disable-learn-passwords (default)
md5 passwords = ON --enable-md5-passwords (default)
file locking = ON --enable-file-locking (default)
vdelivermail fsync = OFF --disable-file-sync (default)
make seekable = ON --enable-make-seekable (default)
clear passwd = ON --enable-clear-passwd (default)
user dir hashing = ON --enable-users-big-dir (default)
address extensions = OFF --disable-qmail-ext (default)
ip alias = OFF --disable-ip-alias-domains (default)
domain quotas = OFF --disable-domainquotas (default)
auth module = mysql --enable-auth-module=mysql
mysql replication = OFF --disable-mysql-replication (default)
mysql logging = ON --enable-mysql-logging
mysql limits = ON --enable-mysql-limits
MySQL valias = ON --enable-valias
auth inc = -I/usr/include/mysql
auth lib = -L/usr/lib/mysql -lmysqlclient -lz -lm
system passwords = OFF --disable-passwd (default)
pop syslog = log success and errors including passwords
--enable-logging=v
auth logging = ON --enable-auth-logging (default)
one domain per SQL table = --disable-many-domains
--------------------------------------------------------------------------------
courier-imap
Courier-IMAP支持IMAP/SIMAP访问
安装:
cd /home/pkg
tar -xjf courier-imap-2.2.2.20040207.tar.bz2
cd courier-imap-2.2.2.20040207
作为vpopmail用户进行安装
chown -R vpopmail:vchkpw ../courier-imap-2.2.2.20040207
su vpopmail
./configure --with-redhat
注:Redhat用户需要使用"--with-redhat"选项
make
exit
make install-strip
make install-configure
cp courier-imap.sysvinit /etc/rc.d/init.d/courier-imap
chmod 755 /etc/rc.d/init.d/courier-imap
chkconfig --add courier-imap
配置:
修改文件/usr/lib/courier-imap/etc/authdaemonrc
authmodulelist="authvchkpw"
修改文件/usr/lib/courier-imap/etc/imapd
IMAPDSTART=YES
修改文件/usr/lib/courier-imap/etc/imapd-ssl
IMAPDSSLSTART=YES
启动:
/etc/rc.d/init.d/courier-imap start
--------------------------------------------------------------------------------
autorespond
Autorespond是一个自动回复工具,可以很好的与qmailadmin配合使用
安装:
cd /home/pkg
tar -xvzf autorespond-2.0.5.tar.gz
cd autorespond-2.0.5
make
make install
ezmlm
exmlm是一个快速,强大的邮件列表程序,可以通过qmailadmin对其进行配置
1.注意:为了启用maillist的MySQL支持,你必须首先:
建立mysql管理用户:(Ex:user:ezmlm,pass:ezmlm)
mysql -u root –pxukixu
>use mysql;
>insert into user values('localhost','ezmlm','','y','y','y','y','y','y','y','y','y','y','y','y','y', 'y');
>update user set password=password('ezmlm') where user='ezmlm';
>FLUSH PRIVILEGES;
>exit;
建库:(Ex:database:ezmlm)
mysqladmin -u root -pxukixu create ezmlm
2.安装:
cd /home/pkg
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 mysql #MySQL 支持
make clean
make man
make ch_GB #汉字GB2312支持
修改conf-sqlcc文件
内容为:-I/usr/include/mysql
修改conf-sqlld
内容为: -L/usr/lib/mysql -lmysqlclient -lnsl -lm -lz
修改conf-bin
第一行:/var/qmail/bin/ezmlm
修改conf-man
第一行:/var/qmail/man
修改conf-qmail
第一行:/var/qmail
make setup
3.在你建立一个基于MySQL的maillist之前,你必须保证ezmlm库中已存在一个对应的表:
Ex:你想建一个基于MySQL的maillist:testlist
/var/qmail/bin/ezmlm/ezmlm-mktab -d testlist | mysql -uezmlm -pezmlm -f ezmlm
这样就在ezmlm库中为testlist建立了一系列相关表格:
+------------------------+
| Tables |
+------------------------+
| testlist |
| testlist_allow |
| testlist_allow_slog |
| testlist_cookie |
| testlist_deny |
| testlist_deny_slog |
| testlist_digest |
| testlist_digest_cookie |
| testlist_digest_mlog |
| testlist_digest_slog |
| testlist_mlog |
| testlist_mod |
| testlist_mod_slog |
| testlist_slog |
+------------------------+
你可以用一下命令察看!
mysqlshow -u root -pxukixu ezmlm
--------------------------------------------------------------------------------
qmailadmin
qmailadmin除了不能添加删除虚拟域外,几乎可以完成所有的虚拟域管理
安装:
cd /home/pkg
tar -xvzf qmailadmin-1.2.3.tar.gz
cd qmailadmin-1.2.3
./configure --enable-htmldir=/var/www/html \
--enable-cgibindir=/var/www/cgi-bin \
--enable-vpopuser=vpopmail \
--enable-autoresponder-bin=/usr/bin \
--enable-ezmlmdir=/var/qmail/bin/ezmlm \
--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
安装选项参考:
qmailadmin 1.2.3
---------------------------------------
cgi-bin dir = /var/www/cgi-bin
html dir = /var/www/html
image dir = /var/www/html/images/qmailadmin
image URL = /images/qmailadmin
template dir = /usr/local/share/qmailadmin
qmail dir = /var/qmail
vpopmail dir = /home/vpopmail
autorespond dir = /usr/bin
ezmlm dir = /usr/local/bin/ezmlm
ezmlm idx = yes
mysql for ezmlm = yes
help = no
modify quota = yes
domain autofill = yes
modify spam check = no
--------------------------------------------------------------------------------
安装并运行igenus
1.到 http://www.igenus.org下载最新的安装...901_release.tgz
#tar zxvf igenus_2.0.2_20040901_release.tgz -C /var/www/
#cd /var/www/
#rm -rf html/
#mv igenus html
2.建temp文件夹
cd /var/www/html/
#mkdir temp
#chmod -R 0755 temp
#chown -R vpopmail:vchkpw temp
#mkdir /home/netdisk
#chmod -R 0755 /home/netdisk
#chown -R vpopmail:vchkpw /home/netdisk
#chmod -R 0755 /var/www/html/
#chown -R vpopmail:vchkpw /var/www/html/
3.修改httpd.conf
#vi /etc/httpd/conf/httpd.conf
Group vchkpw
User vpopmail
DocumentRoot "/var/www/html/"
AddDefaultCharset GB2312 //使默认页面为中文
#/etc/rc.d/init.d/httpd restart //重启apache,使修改生效
4.修改config_inc.php文件
cd /var/www/html/igenus/config
vi config_inc.php
$CFG_BASEPATH = "/var/www/html/igenus"; \\改成你安装的目录
$CFG_MYSQL_HOST = 'localhost';
$CFG_MYSQL_USER = 'vpopmail'; \\vpopmail访问mysql的帐号
$CFG_MYSQL_PASS = 'xukixu'; \\vpopmail访问mysql的密码
$CFG_MYSQL_DB = 'vpopmail'; \\数据库
$CFG_TEMP = $CFG_BASEPATh."/temp"; \\改成你安装的目录的当前目录下
5.重新编制Mysql数据库表格
删除之前创建的域名
#/home/vpopmail/bin/vdeldomain domain.com
/usr/local/mysql/bin/mysql -uroot --pxukixu
alter table vpopmail.vpopmail drop primary key;
alter table vpopmail.vpopmail add column pw_id int(5) unsigned NOT NULL PRIMARY KEY auto_increment;
alter table vpopmail.vpopmail add KEY pw_name (pw_name,pw_domain);
编辑/var/www/html/docs/iGENUS.sql
phpMyAdmin SQL Dump# version 2.5.3# http://www.phpmyadmin.net## Host: localhost# Generation Time: Jun 04, 2004 at 11:26 AM# Server version: 3.23.55# PHP Version: 4.3.0# # Database : vpopmail
# # --------------------------------------------------------## Table structure for table address
#use vpopmail; //加入这一行CREATE TABLE address
( id
int(11) unsigned NOT NULL auto_increment, pw_id
int(5) NOT NULL default '0', name
varchar(64) NOT NULL default '', email
varchar(128) NOT NULL default '', UNIQUE KEY id
(id
), KEY pw_id
(pw_id
)) TYPE=MyISAM PACK_KEYS=1 ;# --------------------------------------------------------删除创建'lastauth'表部份。
运行
#mysql -u root -pxukixu ServerName mail.domain.net
DocumentRoot /var/www/htdocs/igenus 重启apache:
#service httpd restart
8. 修改index.php,signup.php,submit.php,help.php这几个文件中有关域名的地方,将它改成自己的域名.
9.如果需要,用vadddomain和vadduser添加新域名和新用户。
最后打开浏览器,输入 http://domain.com/,就可以访问网站了。
10.Qmail限制附件的大小
在/var/qmail/control/databytes 文件中设置附件的大小,可以实现对qmail附件大小的限制,一般安装完成后,这个文件是没有的,你可以自己创建。
smtp方式是以qmail的databytes作限制的
创建databytes并设置邮件最大为4m
echo 4000000 >/var/qmail/control/databyte
11.限制单域的邮箱数量
vi /home/vpopmail/domains/domain.com/.qmailadmin-limits
maxpopaccounts 200
default_quota 52428800s
chmod 700 /home/vpopmail/domains/domain.com/.qmailadmin-limits
chwod vpopmail:vchkpw /home/vpopmail/domains/domain.com/.qmailadmin-limits
这样就把邮箱总数限制在200个,每个邮箱为50M了
12.用qmail封mailfrom
vi/var/qmail/control/badmailfrom
这个控制文件实现拒收邮件功能的,每一个地址要单独一行。而且,不用重起qmail就能生效。例如:
[email protected] -----限制一个特定的用户
@sina.com -----限制整个域中的邮件
--------------------------------------------------------------------------------
vqadmin
vqadmin是一个基于web 的控制通道. 它允许系统管理员可以执行root用户才能进行的操作.
cd /home/pkg
tar -zxf vqadmin-2.3.6.tar.gz
cd vqadmin-2.3.6
vi db_owner.c
static const char *host="localhost";
static const char *user="vpopmail";
static const char passwd="xukixu"; / NULL for no password */
static const char *db="vpopmail";
./configure --enable-mysql=y
make
make install
编辑数据库,加入domain_owner表
mysql -uroot -pxukixu
use vpopmail;
CREATE TABLE domain_owner (
domain CHAR(64) NOT NULL,
owner CHAR(32) NOT NULL,
PRIMARY KEY(domain, owner)
);
现在我们需要将下面几行添加到httpd.conf文件中:
vi /etc/httpd/conf/httpd.conf
1<directory "="" cgi-bin="" var="" vqadmin"="" www="">
2
3deny from all
4
5Options ExecCGI
6
7AllowOverride AuthConfig
8
9Order deny,allow
10
11</directory>
保存文件并退出.
cd /var/www/cgi-bin/vqadmin
chown nobody .htaccess
chmod 600 .htaccess
创建一个管理帐号及密码
htpasswd -bc /etc/httpd/conf/vqadmin.passwd admin(帐号) adminpass(密码)
chown nobody.nobody /etc/httpd/conf/vqadmin.passwd
chmod 644 /etc/httpd/conf/vqadmin.passwd
chown -R vpopmail.vchkpw /var/www/cgi-bin
#编辑.htaccess
vi .htaccess
AuthType Basic
AuthUserFile /etc/httpd/conf/vqadmin.passwd
AuthName vQadmin
require valid-user
satisfy any
service httpd restart
在你的浏览器上测试一下安装结果:
http://www.domain.com/cgi-bin/vqadmin/vqadmin.cgi
--------------------------------------------------------------------------------
SpamAssassin
安装 SpamAssassin
Spam是一个让人讨厌的字眼. 大部分的人都不喜欢它. 如果你想保护自己免受spam, 你就需要安装SpamAssassin.
安装SpamAssassin 要用到Time-HiRes、Digest-SHA1、HTML-Parser和HTML-Tagset. 如果你没有安装的话,必须首先安装它,此文件均在RHAS3安装光盘第二和第三张中。对应的软件包为:
perl-Time-HiRes-1.38-3.i386.rpm
perl-Digest-SHA1-2.01-15.1.i386.rpm
perl-HTML-Parser-3.26-17.i386.rpm
perl-HTML-Tagset-3.03-28.noarch.rpm
安装SpamAssassin
groupadd spamd
useradd -g spamd -s /bin/false spamd
cd /home/pkg
tar -xzvf Mail-SpamAssassin-3.0.1.tar.gz
cd Mail-SpamAssassin-3.0.1
export LC_ALL=C
perl Makefile.PL
make
make install
#我们想要SpamAssassin 随系统自动启动,安装目录中提供了一个起动脚本
cp spamd/redhat-rc-script.sh /etc/rc.d/init.d/spamd
vi /etc/rc.d/init.d/spamd
SPAMDOPTIONS="-d -c -u spamd -H /home/spamd -m5 -H"
修改其中一行为上所示。
chmod 755 /etc/rc.d/init.d/spamd
chkconfig --add spamd
spamassassin的过滤模板在/etc/mail/spamassassin/local.cf,修改为:
required_hits 5.0
rewrite_subject 1
subject_tag SPAM
report_safe 1
defang_mime 0
rewrite_subject 0
report_header 1
use_terse_report 1
use_bayes 1
auto_learn 1
skip_rbl_checks 1
use_razor2 0
use_dcc 0
use_pyzor 0
score SUBJ_FULL_OF_8BITS 0.0
score BASE64_ENC_TEXT 0.0
score BAYES_99 0.1
score BAYES_90 0.1
score SUBJ_ILLEGAL_CHARS 0.1
score FROM_ILLEGAL_CHARS 0.5
score HEAD_ILLEGAL_CHARS 0.5
score MIME_BASE64_TEXT 0.5
ok_locales en zh
chmod 755 /etc/rc.d/init.d/spamd
chkconfig --add spamd
service spamd start
进行一个spam和non-spam的测试
spamassassin -t < sample-spam.txt > spamtest.txt
less spamtest.txt
spamassassin -t < sample-nonspam.txt > nospamtest.txt
less nospamtest.txt
spamtest.txt文件在主题一段中将包含"SPAM" 这一行, 而nospamtest.txt文件中则没有.
建立SpamAssassin的学习系统
#sa-learn --rebuild -D -p user_prefs
sa-learn --dump all可以查看自学习的数据信息
--------------------------------------------------------------------------------
Clamav
添加所需的组和用户
groupadd clamav
useradd -g clamav -s /bin/false clamav
安装软件
tar -xzvf clamav-0.80.tar.gz
cd clamav-0.80
./configure
make check
make install
测试Clamav
clamscan --recursive --log=/tmp/clamscan.log ./ //扫描当前目录,测试clamscn是否运行
cat /tmp/clamscan.log
升级clamscan病毒库
freshclam --verbose
更改/usr/local/etc/freshclam.conf文件,去掉下面选项前面的#:
vi /usr/local/etc/freshclam.conf
#Example \\前面加上#
UpdateLogFile /var/log/freshclam.log \\去掉前面的#
LogSyslog \\去掉前面的#
更改/usr/local/etc/clamav.conf文件,去掉下面选项前面的#:
vi /usr/local/etc/clam.conf
#Example \\前面加上#
LogFile /var/log/clamav/clamd.log \\去掉前面的#
LogFileMaxSize 2M \\去掉前面的#
LogTime \\去掉前面的#
PidFile /var/run/clamd.pid \\去掉前面的#
DataDirectory /var/lib/clamav \\去掉前面的#,并且修改路径为/usr/local/share/clamav
LogSyslog \\去掉前面的#
ScanMail \\去掉前面的#
把freshclam加入crontab 定时更新病毒库,自动扫描/home目录
crontab -e
0 1 * * * freshclam --quiet -l /var/log/freshclam.log
0 6 * * * /usr/local/bin/clamscan --recursive --infected --exclude /usr/local/share/clamav/viruses.db --exclude /usr/local/share/clamav/viruses.db2 --log=/var/log/clamscan.log /home
创建freshclam日志记录文件
mkdir -p /var/log/clamav
touch /var/log/clamav/clamd.log
chown clamav.clamav -R /var/log/clamav/
chmod 644 clamav.clamav -R /var/log/clamav/
touch /var/log/freshclam.log
chmod 644 /var/log/freshclam.log
chown clamav:clamav /var/log/freshclam.log
创建clamav启动脚本
vi /etc/rc.d/init.d/clamav
#!/bin/sh
Startup / shutdown script for Clam Antivirus
case "$1" in
start)
/usr/local/sbin/clamd && echo -n 'Clamd started'
/usr/local/bin/freshclam -d -c 2 -l /var/log/freshclam.log
echo -n ' freshclam started'
;;
stop)
/usr/bin/killall clamd > /dev/null 2>&1 && echo -n 'Clamd stoped'
/usr/bin/killall freshclam > /dev/null 2>&1 && echo -n ' freshclam Stoped'
;;
*)
echo ""
echo "Usage: basename $0
{ start | stop }"
echo ""
exit 64
;;
esac
使其能够执行
chmod 755 /etc/rc.d/init.d/clamav
随开机起动
echo /etc/rc.d/init.d/clamav start >/etc/rc.d/rc.local
--------------------------------------------------------------------------------
qmail-scanner&qms-analog
为了能够扫描邮件服务器中进出的邮件, 我们需要安装 qmail-scanner. 如果你之前没有安装perl-suidperl,我们还需要安装它
cd /home/pkg
rpm -Uvh perl-suidperl-5.8.0-88.3.i386.rpm
解开qmail-scanner...
tar zxvf qmail-scanner-1.22.tgz
解压qms-analog...
tar zxvf qms-analog-0.3.4.tar.gz
cd qms-analog-0.3.4
make all
下一步,我们拷贝所需要的qms-analog文件到qmail-scanner安装目录
cp qmail-scanner-1.22-st-qms-20040530.patch /home/pkg/qmail-scanner-1.22/
cp qms-config-script /home/pkg/qmail-scanner-1.22/
现在,让我们打上qms-analog补丁
cd /home/pkg/qmail-scanner-1.22
chmod 755 qms-config-script
patch -p1 < qmail-scanner-1.22-st-qms-20040530.patch
继续安装qmail-scanner,添加所需的组和用户
groupadd qscand
useradd -g qscand -s /bin/false qscand
我们通过qms-config-script脚本来安装qmail-scanner,编辑qms-config-script
vi qms-config-script
修改下面红色部份以达到我们的需求:
#!/bin/sh
if [ "$1" != "install" ]; then
INSTALL=
else
INSTALL="--install"
fi
./configure --domain domain.com \
--qmail-queue-binary /var/qmail/bin/qmail-queue \
--admin postmaster \
--local-domains "domain1.com,domain2.com,......" \
--add-dscr-hdrs yes \
--dscr-hdrs-text "X-Antivirus-MYDOMAIN" \
--ignore-eol-check yes \
--sa-quarantine 0 \
--sa-delete 0 \
--sa-reject no \
--sa-subject ":SPAM:" \
--sa-alt yes \
--sa-debug no \
--notify admin \
--redundant yes \
--lang en_GB \
--debug yes \
--unzip yes \
--scanners clamscan,verbose_spamassassin \
"$INSTALL"
注意: "--admin" 和 "--domain" 参数组成了帐号"user"@"domain name". 警告消息将通过qmail-scanner 发往这个邮件帐号, 所以必须确认这是一个管理级别的帐号. 另外,所有域的警告信息都会发给这个帐号, 所以一定要小心.
保存并退出。
现在我们测试qmail-scanner安装
./qms-config-script
在第一步时, 按y 允许qmail-scanner提前configure. 第二步时, 按y,建立 qmail-queue-scanner.pl 文件.
测试如果没有错误 ,就可以进行下一步安装
./qms-config-script install
看看/var/qmail/bin/qmail-scanner-queue.pl是否存在
chown qscand:qscand /var/qmail/bin/qmail-scanner-queue.pl
chmod 4755 /var/qmail/bin/qmail-scanner-queue.pl
然后用一个普通用户登陆,执行/var/qmail/bin/qmail-scanner-queue.pl -z
setuidgid qscand /var/qmail/bin/qmail-scanner-queue.pl -z //如果没有Can't do setuid出现,安装OK
setuidgid qscand /var/qmail/bin/qmail-scanner-queue.pl -r //查看qmailscan当前包含的特征
setuidgid qscand /var/qmail/bin/qmail-scanner-queue.pl -g //保存qmailscan定义特征的修改,使他生效。
chown qscand:qscand /var/qmail/bin/qmail-scanner-queue
chmod 4755 /var/qmail/bin/qmail-scanner-queue
chmod 0755 /var/qmail/bin/qmail-scanner-queue.pl
chown -R qscand:qscand /var/spool/qmailscan
vi /var/qmail/supervise/qmail-smtpd/run
在你的qmail启动脚本加入红色部份
#!/bin/sh
QMAILDUID=id -u vpopmail
NOFILESGID=id -g vpopmail
PATH=$PATH:/usr/local/bin:/var/qmail/bin
QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue.pl" export QMAILQUEUE
MAXSMTPD=cat /var/qmail/control/concurrencyincoming
exec /usr/local/bin/softlimit -m 40000000 \
/usr/local/bin/tcpserver -v -H -R -l 0 \
-x /home/vpopmail/etc/tcp.smtp.cdb -c "$MAXSMTPD" \
-u "$QMAILDUID" -g "$NOFILESGID" 0 smtp \
/var/qmail/bin/qmail-smtpd \
/home/vpopmail/bin/vchkpw /bin/true 2>&1
后重新启动smtp服务
qmailctl stop
qmailctl start
qmailctl stat
这里有测试程序
cd /home/pkg/qmail-scanner-1.23/contrib/
chmod 755 test_installation.sh
./test_installation.sh -doit
这个脚本会设定的管理员邮件地址发送3个邮件,第一个邮件是一般的正常邮件,第二个邮件中会包含eicar.com测试病毒,第三个邮件同样包含eicar.com测试病毒,不过所附带的文件名不是eicar.com。
如果qmail-scanner安装正确,管理员就应该可以收到关于后面的两个邮件的警告邮件。
如果系统出错,可以查看/var/spool/qmailscan/qmail-queue.log日志文件。
qmail-scanner的特征过滤在/var/spool/qmailscan/quarantine-atachments.txt
主要的排错监测日志
/var/spool/qmailscan/quarantine.log
/var/spool/qmailscan/qmail-queue.log
/var/spool/qmailscan/qms-events.log
/var/log/clamav/clamd.log
/var/log/maillog
--------------------------------------------------------------------------------
MailDrop and TNEF reader
TNEF是一个从"application/ms-tnef". 类型中找出MIME附件的程序.这仅仅是微软系统中的一种附件.
TNEF程序允许将封装成TNEF的附件提取出来. 安装TNEF并不是必须的, 但我强烈推荐安装它!
安装 maildrop
cd /home/pkg
tar -jzvf maildrop-1.7.0.tar.bz2
cd maildrop-1.7.0
./configure
make
make install-strip
make install-man
安装 the tnef
cd /home/pkg
tar -xzvf tnef-1.2.3.1.tar.gz
cd nef-1.2.3.1
./configure
make
make install
使用Maildrop调用SpamAssassin
在/home/vpopmail/domains/localhost.com(你创建的域)/ 建立mailfilter文件
touch mailfilter
chown vpopmail:vchkpw mailfilter
chmod 700 mailfilter
mailfilter内容如下:
VPOP="| /home/vpopmail/bin/vdelivermail '' bounce-no-mailbox"
VHOME=/home/vpopmail/bin/vuserinfo -d $EXT@$HOST
if ( $SIZE < 262144 )
{
exception {
xfilter "/usr/bin/spamc -f -u $EXT@$HOST"
}
}
if (/^X-Spam-Flag: YES/)
{
try filtering it using user-defined rules
exception {
include $VHOME/Maildir/.mailfilter
}
then try delivering it to a Spam folder
exception {
to "$VPOP"
to "$VHOME/Maildir/.Spam/"
}
ah well, I guess they'll just have to live with disappointment
exception {
to "$VPOP"
}
}
else
{
exception {
include $VHOME/Maildir/.mailfilter
}
exception {
to "$VPOP"
}
}
修改.qmail-default内容如下:
| /usr/local/bin/maildrop ./mailfilter
--------------------------------------------------------------------------------
QmailAnalog & qlogtools
Qmailanalog针对qmail的日志进行一些最基本的分析,并将结果发送到你指定的位置。在我的方案中,设置qmailanalog每天晚上运行,并将结果发送给管理员。 在使用qmailanalog时,我们还将会用到qlogtools软件包。qlogtools提供一系列分析qmail日志的工具,这些工具将文件中诲涩难懂的日志转换成便於我们阅读和能够理解的报告。当安装完成Qmailstats和Qlogtools后,我将会创建一个脚本让它每天晚上运行,并将报告发送到管理员邮箱。这个脚本也可用到我们先前安装的qms-analog,qms-analog将会提供qmail-scanner运行状态报告。
先安装qmailanalog
cd /home/pkg/
tar zxvf qmailanalog-0.70.tar.gz
cd qmailanalog-0.70
patch < /home/pkg/qmailanalog-0.70.errno.patch
make && make setup check
安装qlogtools
cd /home/pkg/
tar zxvf qlogtools-3.1.tar.gz
cd qlogtools-3.1
patch < /home/pkg/qlogtools_errno.patch
make
./installer
现在我们要创建一个脚本,并将它添加到cron,让其每天晚上运行并产生报告。
下面是一个可靠的脚本,它将会收集qmailanalog输出的信息并产生报告。
红色部份改成你的域名。
vi /var/qmail/bin/qmailstats
#!/bin/sh
Qmailanalog invocation script
PATH=/usr/local/qmailanalog/bin:/var/qmail/bin:/bin:/usr/bin:/usr/local/bin
QMAILSTATS="/tmp/q.$$"
EMAILMSG="/tmp/qms.$$"
umask 077
cat /var/log/qmail/* /var/log/qmail/pop3d/* /var/log/qmail/pop3ds/* /var/log/qmail/smtpd/* | tai64n2tai | awk '{$1=substr($1,1,index($1,".")+6);print}' | matchup > $QMAILSTATS 5>/dev/null
DATE=date +'%D'
echo "To: [email protected] " > $EMAILMSG
echo "From: [email protected] " >> $EMAILMSG
echo "Subject: Nightly Qmail Stats Report for $DATE" >> $EMAILMSG
echo "" >> $EMAILMSG
echo "" >> $EMAILMSG
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" >> $EMAILMSG
zoverall < $QMAILSTATS >> $EMAILMSG
echo "" >> $EMAILMSG
echo "" >> $EMAILMSG
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" >> $EMAILMSG
zfailures < $QMAILSTATS >> $EMAILMSG
echo "" >> $EMAILMSG
echo "" >> $EMAILMSG
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" >> $EMAILMSG
zdeferrals < $QMAILSTATS >> $EMAILMSG
echo "" >> $EMAILMSG
echo "" >> $EMAILMSG
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" >> $EMAILMSG
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~ L a s t 2 4 H o u r s ~~~~~~~~~~~~~~~~~~~~~~~~~~~" >> $EMAILMSG
cat /var/spool/qmailscan/qms-events.log | qms-analog 24 >> $EMAILMSG
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" >> $EMAILMSG
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~ A l l R e c o r d s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~" >> $EMAILMSG
cat /var/spool/qmailscan/qms-events.log | qms-analog 0 >> $EMAILMSG
cat $EMAILMSG | qmail-inject
rm -f $QMAILSTATS
rm -f $EMAILMSG
设置此脚本可执行
chmod 750 /var/qmail/bin/qmailstats
现在,让我们运行脚本
/var/qmail/bin/qmailstats
确认你的管理员邮箱,你将会收到一份非常详尽的报告。
如果测试运行正常,那就加入cron让其每天早上3点运行。
crontab -e
0 3 * * * /var/qmail/bin/qmailstats 1>/dev/null 2>/dev/null
--------------------------------------------------------------------------------
MRTG
安装 MRTG
多路由器通信监视器(MRTG)是在网络链路上监控通信负载的一件工具。 MRTG 产生包含图表的HTML网页,它可以将系统中的通信情况实时的显示在页面上。 我们可以在我们的系统上使用它来监控电子邮件和spam情况。
安装 zlib (压缩的图形文件包)
cd /home/pkg
tar -xzf zlib-1.1.4.tar.gz
mv zlib-1.1.4/ zlib
cd zlib
./configure
make
cd ..
安装 libpng (PNG图片格式包)
tar -xzf libpng-1.2.7.tar.gz
mv libpng-1.2.7/ libpng
cd libpng
make -f scripts/makefile.std CC=gcc ZLIBLIB=../zlib ZLIBINC=../zlib
rm .so. *.so
cd ..
安装 gd (制图软件包)
tar -xzf gd-1.8.3.tar.gz
mv gd-1.8.3/ gd
cd gd
make INCLUDEDIRS="-I. -I../zlib -I../libpng" LIBDIRS="-L../zlib -L. -L../libpng" LIBS="-lgd -lpng -lz -lm"
make install
cd ..
编译 MRTG
tar -xzf mrtg-2.10.15.tar.gz
cd mrtg-2.10.15/
./configure --prefix=/usr/local/mrtg-2 –-with-gd=/home/pkg/gd/ --with-z=/home/pkg/zlib/ --with-png=/home/pkg/libpng/
make
make install
所有MRTG需要的软件包都安装在了 /usr/local/mrtg-2 目录下. 你现在可以安全的删除上面编译的源码. 但是你最好留着,以便你编译下一个版本的MRTG时所需.
通过安装inter7的qmailmrtg ,我们将在我们的系统上安装MRTG
编译 qmailmrtg
cd /home/pkg
tar -xzf qmailmrtg7-4.0.tar.gz
cd qmailmrtg7-4.0
make
make install
mkdir /var/www/html/qmailmrtg
cp qmail.mrtg.cfg index.html /var/www/html/qmailmrtg
cd /usr/local/apache/htdocs/qmailmrtg/
修改 qmail.mrtg.cfg 和 index.html文件, 将所有出现FQDN 的地方都改成你的完整域名(例如: test.com). 如果你的HTTP MRTG目录并不是默认的 (例如: 你并没有把 /var/www/html/作为你的web根目录), 则必须在/var/www/html/qmailmrtg/qmail.mrtg.cfg 文件中修改WorkDir变量为正确的路径. 如果你不需要记录某项服务, 你可以在所不需要记录的服务每一行的前面加一个# 来注释掉它,并删除index.html中对应的服务项目。
你可以修改 pop3和smtp所在的行, 设置MaxBytes参数来重写tcpserver中-cX所在行.
你还可以修改concurrency来重写concurrencyremote或concurrencylocal 的值. 如果这些文件在/var/qmail/control 目录下并不存在,则qmail默认的值为20.
下面是我们的最后一步,将下面一段添加到crontab中, 以使我们能每五分钟升级一次MRTG数据. 运行如下命令:
crontab -e
添加下面一段 (使MRTG每五分钟运行一次) 然后退出crontab:
*/5 * * * * /usr/local/mrtg-2/bin/mrtg /var/www/html/qmailmrtg/qmail.mrtg.cfg 2>&1 > /dev/null
现在运行MRTG三次来安装它. 你将会收到3次警告消息. 之后,你将不会再收到警告了.
env LANG=C /usr/local/mrtg-2/bin/mrtg /var/www/html/qmailmrtg/qmail.mrtg.cfg
现在应该安装好了. 为了能显示些信息,我们等待15分钟的日志记录. 你可以通过下面的地址来检查图形监控情况:
http://your.host.name/qmailmrtg/
查看它们的图形监控情况!
--------------------------------------------------------------------------------
测试
测试igenus
测试qmailadmin
http://domain.com/cgi-bin/qmailadmin
测试vQadmin
http://domain.com/cgi-bin/vqadmin/vqadmin.cgi
测试SMTP认证
telnet localhost 25
Trying 127.0.0.1...
Connected to mail.domain.com (127.0.0.1).
Escape character is '^]'.
220 mail. domain.com ESMTP
EHLO hostname
250-mail.domain.com
250-AUTH LOGIN CRAM-MD5 PLAIN
250-AUTH