1、下载sasl库,该函数库提供了安全认证所需函数,下载地址是(ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ ),版本1.5.28 2、下载sendmail,测试时所用版本为8.12.11,本人测试8.13.1应该不行,欢迎大家再测试一下。 3、安装sasl bash-2.05# tar zxvf cyrus-sasl-1.5.28.tar bash-2.05# ./configure --enable-login --with-pwcheck --disable-gssapi --disable-digest --disable-cram --disable-krb4 --enable-plain --without-des bash-2.05# make bash-2.05# make install bash-2.05# ln -s /usr/local/lib/sasl /usr/lib/sasl bash-2.05# cp /usr/local/lib/libsasl* /usr/lib/ bash-2.05# mkdir /var/pwcheck 此目录供pwcheck命令使用,该命令是一个后台程序,负责检查用户的输入口令 在/usr/lib/sasl目录下建立文件Sendmail.conf,加入如下一行: pwcheck_method:pwcheck 4、安装sendmail bash-2.05# tar zxvf sendmail.8.12.11.tar.gz bash-2.05# cd sendmail.8.12.11 bash-2.05# vi devtools/site/config.m4 内容如下: APPENDDEF(`confENVDEF',`-DSASL') APPENDDEF(`conf_sendmail_LIBS',`-lsasl') bash-2.05# vi cf/cf/sendmail.mc 内容如下: divert(0)dnl VERSIONID(`$Id: generic-solaris.mc,v 8.13 2001/06/27 21:46:30 gshapiro Exp $') OSTYPE(solaris2)dnl DOMAIN(generic)dnl TRUST_AUTH_MECH(`LOGIN PLAIN DIGEST-MD5')dnl define(`confAUTH_MECHANISMS',`LOGIN PLAIN DIGEST-MD5')dnl FEATURE(`no_default_msa')dnl DAEMON_OPTIONS(`Port=25, Name=MTA')dnl DAEMON_OPTIONS(`Port=587,Name=MSA,M=a')dnl MAILER(local)dnl MAILER(smtp)dnl 其中两空行之间的五行是加入的内容,其他皆为拷贝的generic-solaris.mc的内容。 DAEMON_OPTIONS(`Port=587,Name=MSA,M=a')dnl这一行M=a可以迫使其采用认证,若不选需要服务器验证则无法发送邮件,若为M=Ea则选不选认证皆可 创建smmsp用户和smmsp组,并将smmsp用户分配到smmsp组。 bash-2.05# cd sendmail bash-2.05# sh Build (若已编译过一次则用sh Build -c) bash-2.05# cd ../cf/cf bash-2.05# sh Build sendmail.cf bash-2.05# sh Build install-cf bash-2.05# cd ../.. bash-2.05# sh Build install bash-2.05# pwcheck 至此,安装完毕,用telnet localhost 25测试,若出现AUTH LOGIN PLAIN则成功。 用foxmail或outlook试一下即可。 下面开始安装openwebmail 首先到http://openwebmail.nlcd.com.cn/download/packages/下载必需的软件,大体是以下这些: CGI.pm-3.05.tar.gz MIME-Base64-3.01.tar.gz libnet-1.19.tar.gz Digest-1.08.tar.gz Digest-MD5-2.33.tar.gz Text-Iconv-1.2.tar.gz libiconv-1.9.1.tar.gz 先安装以上软件,安装方式基本都是一样的,有三步: 先解压,然后perl Makefile.PL再make,最后make install搞定。 接着安装apache,我装的是apache-2.0.50,直接用pkgadd安装的,安装在/usr/local/apache2目录下。 接下来就要安装openwebmail了,我的是安装在/soft/openwebmail目录下,直接解压即可。 然后 bash-2.05# cd /soft/openwebmail bash-2.05# mv data/openwebmail htdocs/ bash-2.05# rmdir data 此时,要修改/usr/local/apache2/conf目录下的httpd.conf文件,主要有以下几个地方: DocumentRoot "/soft/openwebmail/htdocs" AddDefaultCharset off ScriptAlias /cgi-bin/ "/soft/openwebmail/cgi-bin/" AddHandler cgi-script .cgi .pl 其中,在AddHandler cgi-script .cgi .pl行下我又加了以下几行,这几行也可能没用,大家可以试试: <Directory "/soft/openwebmail/cgi-bin/openwebmail"> Options ExecCGI AllowOverride Limit Order allow,deny Allow from all </Directory> 具体上面三个参数的含义,大家可以看一下注释,很容易就能看懂。 接下来就是修改openwebmail.conf文件了。 bash-2.05# ln -s /usr/local/bin/perl /usr/bin/suidperl bash-2.05# cd /soft/openwebmail/cgi-bin/openwebmail/etc bash-2.05# vi openwebmail.conf 改以下几个地方: ow_cgidir /soft/openwebmail/cgi-bin/openwebmail ow_cgiurl /cgi-bin/openwebmail ow_htmldir /soft/openwebmail/htdocs ow_htmlurl / 大家可根据自己的安装目录适当调整。 bash-2.05# cd default/ bash-2.05# vi auth_unix.conf 修改以下几行: passwdfile_encrypted /etc/shadow passwdmkdb none 接下来是初始化: bash-2.05# /soft/openwebmail/cgi-bin/openwebmail/openwebmail-tool.pl --init 这个命令如果成功会出现一些提示,按提示修改/soft/openwebmail/cgi-bin/openwebmail/etc目录下的dbm.conf文件。 最后启动apache进程 bash-2.05# /usr/local/apache2/bin/apachectl start 到此终于大功告成了,赶紧用http://localhost/cgi-bin/openwebmail/openwebmail.pl测试一下吧,看看是不是成功了。 |