所需软件: maildrop-1.5.2.20030423.tar.gz perl-Time-HiRes-1.38-3.i386.rpm clamav-0.65.tar.gz qmail-scanner-1.20.tgz
安装maildrop: tar zxvf maildrop-1.5.2.20030423.tar.gz cd maildrop-1.5.2.20030423 ./configure make make install-strip make install-man 安装 perl-Time-HiRes-1.38-3.i386.rpm rpm -ivh perl-Time-HiRes-1.38-3.i386.rpm
安装clamav-0.65.tar.gz groupadd clamav useradd –g clamav –s /bin/false clamav tar zxvf clamav-0.65.tar.gz cd clamav-0.65 ./configure make check make install
更新病毒库 运行freshclam 把freshclam加入crontab 定时更新病毒库, vi /usr/local/etc/clamav.conf 注释掉Example 执行clamscan 执行clamd 然后执行clamdscan
安装qmail-scanner-1.20.tgz groupadd qscand useradd -g qscand -s /bin/false qscand tar zxvf qmail-scanner-1.20.tgz cd qmail-scanner-1.20 ./configure --qmail-queue-binary /var/qmail/bin/qmail-queue --admin postmaster --domain nero.3322.org --notify sender,admin --local-domains nero.3322.org --lang en_GB --debug yes --unzip yes --scanners clamscan --install 在编译过程中需要安装perl-DB_File-x.x.x.rpm,在光盘中可找到。 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 如果没有Can't do setuid出现,恭喜你,如果有 回到安装文件目录,有个contrib目录, make make install
附加步骤: 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
然后用一个普通用户登陆,执行 /var/qmail/bin/qmail-scanner-queue -z /var/qmail/bin/qmail-scanner-queue -g 修改环境变量 1.在你的qmail启动脚本加入 QMAILQUEUE=/var/qmail/bin/qmail-scanner-queue.pl 如果作了附加步骤用下面的 QMAILQUEUE=/var/qmail/bin/qmail-scanner-queue export QMAILQUEUE 2.修改qmail-scanner-queue.pl中的 my $clamscan_options="-r --disable-summary --max-recursion=10 --max-space=1000000";为 my $clamscan_options="-r --mbox --disable-summary --max-recursion=10 --max-space=1000000";
重起qmail 测试 这里有测试程序 /software/qmail-scanner-1.20/contrib/test_installation.sh
主要的排错监测日志 /var/spool/qmailscan/quarantine.log /var/spool/qmailscan/qmail-queue.log /var/log/clamd.log /var/log/maillog
给qmail + vpopmail + igenus邮件服务器添加新功能
1.注册新用户和找回密码 建立数据库 mysql -u root -p mysql> use vpopmail; mysql> CREATE TABLE password ( id int(11) unsigned NOT NULL auto_increment, pw_name varchar(32) NOT NULL default '', pw_domain varchar(64) NOT NULL default '', problem varchar(32) NOT NULL default '', answer varchar(32) NOT NULL default '', PRIMARY KEY (id) ) TYPE=MyISAM PACK_KEYS=1;
安装软件包 password.rar其中有五个文件 signup.php,submit.php是注册用的 getpassword.php,getpassword2.php,getpassword3.php是找回密码用的. 中间有关默认域名的地方.自行修改为自己的默认域名. 如果igenus安装到/var/www/html/igenus的话,就把这五个文件解压缩到/var/www/html目录下,然后在首页的index.php文件中增加相应的链接就可以了.
2.自动转发 把发往自己邮箱的邮件定向到其他邮箱 mysql> use vpopmail; mysql> CREATE TABLE forword ( id int(11) unsigned NOT NULL auto_increment, pw_id int(5) NOT NULL default '0', email varchar(64) NOT NULL default '', success int(1) NOT NULL default '0', save int(1) NOT NULL default '0', PRIMARY KEY (id) ) TYPE=MyISAM PACK_KEYS=1;
3.个人资料 mysql> use vpopmail; mysql> CREATE TABLE personal ( id int(11) unsigned NOT NULL auto_increment, pw_id int(5) NOT NULL default '0', truename varchar(10) NOT NULL default '', fax varchar(20) NOT NULL default '', telephone varchar(15) NOT NULL default '', sex int(1) NOT NULL default '0', year int(4) NOT NULL default '', month int(2)NOT NULL default '', day int(2)NOT NULL default '', education varchar(4) NOT NULL default '', marital int(1) NOT NULL default '', occupation varchar(15) NOT NULL default '', companyname varchar(30) NOT NULL default '', province varchar(6) NOT NULL default '', PRIMARY KEY (id) ) TYPE=MyISAM PACK_KEYS=1;
4.通告栏 只有域管理员可以发给该域的所有用户通告,而该域的所有用户只可以查看通告 mysql> use vpopmail; mysql> CREATE TABLE board ( id int(11) unsigned NOT NULL auto_increment, num int(5) NOT NULL default '0', title varchar(50) NOT NULL default '', content varchar(255) NOT NULL default '', host varchar(50) NOT NULL default '', allhost int(1) NOT NULL default '0', PRIMARY KEY (id) ) TYPE=MyISAM PACK_KEYS=1;
5.收藏夹 mysql>use vpopmail; mysql>CREATE TABLE stow ( id int(11) unsigned NOT NULL auto_increment, pw_id int(5) NOT NULL default '0', name varchar(64) NOT NULL default '', http varchar(128) NOT NULL default '', memo varchar(255) NOT NULL default '', PRIMARY KEY (id) ) TYPE=MyISAM PACK_KEYS=1; 6.名片夹 mysql>use vpopmail; mysql>CREATE TABLE card ( id int(11) unsigned NOT NULL auto_increment, pw_id int(5) NOT NULL default '0', addrname varchar(10) NOT NULL default '', companyname varchar(30) NOT NULL default '', address varchar(255) NOT NULL default '', job varchar(255) NOT NULL default '', telephone varchar(20) NOT NULL default '', mobile varchar(15) NOT NULL default '', email varchar(50) NOT NULL default '', bearing varchar(4) NOT NULL default '', note varchar(255) NOT NULL default '', PRIMARY KEY (id) ) TYPE=MyISAM PACK_KEYS=1;
Linux+adsl+qdns
一、安装拨号软件包 为了以后的防火墙应用我安装了两块网卡要确保其工作正常: # ifconfig eth0 eth0接内网 # ifconfig eth1 eth1接ADSL 删除默认网关: 在文件 /etc/sysconfig/network 中删除 GATEWAY= 这一行,然后执行: # service network restart 安装pppd软件包。 如果存在文件 /usr/sbin/pppd,则说明已经安装了pppd; 如果未安装,从RedHatLinux安装光盘上可找到这个软件包。 # rpm –ivh rp-pppoe-3.5.2.i386.rpm
二、配置PPPOE客户端软件 adsl安装很简单我就不多说了 # adsl-setup 安装完软件包后配置/etc/sysconfig/network-scripts/ifcfg-ppp0 # vi /etc/sysconfig/network-scripts/ifcfg-ppp0,修改 PPPOE-TIMEOUT=0 CONECT-TIMEOUT=0 # cp /etc/sysconfig/network-scripts/ifcfg- ppp0 /etc/ppp/pppoe.conf
三、安装设置动态域名QDNS 登录www.3322.org网站,注册一个用户,申请一个动态域名 domain.3322.org, 并下载linux客户端软件:ez-ipupdate-3.0.10-linux-i386.tgz 安装软件: # tar zxvf ez-ipupdate-3.0.10-linux-i386.tgz # mv ez-ipupdate-3.0.10-linux-i386 /usr/local/ezip # chmod 755 /usr/local/ezip/ez-ipupdate # chmod 755 /usr/local/ezip/qdns.conf # cp /usr/local/ezip/qdns.conf /usr/local/bin # cp /usr/local/ezip/ez-ipupdate /usr/local/bin 编辑/usr/local/ezip/qdns.conf文件: # vi /usr/local/ezip/qdns.conf service-type=qdns user=your use rname:your password host=domain.3322.org interface=ppp0 max-interval=2073600 cache-file=/tmp/ez-ipupdate.cache 将当前ip更新到我们申请的域名: # /usr/local/ezip/ez-ipupdate –c qdns.conf 系统会提示数据更新成功。 实现拨号连接建立后自动更新域名: 修改/etc/ppp/ip-up脚本 # vi /etc/ppp/ip-up 在exit 0前增加一行: /usr/local/ezip/ez-ipupdate -c /usr/local/ezip/qdns.conf 设置每隔五分钟自动同步一下你的域名: # crontab -e然后加入下面一行: 0-59/50-59/5 * * * * /usr/local/bin/ez-ipupdate - c /usr/local/bin/qdns.conf
四、测试 # adsl-start # adsl-status 在输出中应该含有关于 ppp0 的信息,包括从dhcp得到的IP 地址。 # ping domain.3322.org 如果解析出正确的ip,说明拨号连接已经建立并且并且能正确的解析动 态域名。,
|