基于Posfix的邮件服务器维护总结
前言:
这个就是使用EMOS(postfix+extmail+mysql or LDAP)这个系统的一个维护总结。也符合使用其他webmail的postfix系统的维护。一些奇怪的毛病可以从中找到答案,另外大家从这文章的内容里也可以找到一些解决故障的办法。
1. 分区需增加 BACK备份区
2. 关闭验证码
编辑/var/www/extsuite/extman/webman.cf
将SYS_CAPTCHA_ON=1改为0
3.EMOS内网服务器的路由端口映射25 80 110 22(SSH)
4.备份与恢复
MYSQL备份:mysqldump - u root - p extmail > /back/extmail.sql
MYSQL恢复:mysql -u root -p extmail < /back/extmail.sql
备份邮件:
tar - zcvf /back/shuiyong.tar.gz /home/domains/shuiyong.com
恢复邮件:
tar -zxvf shuiyong.tar.gz
5. 查看邮件日志 tail - f /var/log/maillog
6. Temperature above threshold报警解决CPU0: temperature above threshold
CPU0: Running in modulated clock mode关闭的解决办法如下:
vi /etc/syslog.conf
注释掉 *.emerg 这一行
/etc/init.d/syslog restart
7. EMOS1.2如何限制用户邮件附件的大小?
/etc/postfix/main.cf和 /var/www/ex*/extmail/webmail.cf 中
message_size_limit 修改附件值10M(10485760) 20M(20971520)
/sbin/service postfix restart
8.定时关机crontab -e(为用户变量){vi /etc/crontab 为全局变量具体时间可以自行修改)
0 7 * * * /var/www/extsuite/extman/tools/expireusers.pl -all [email protected] 发送日志时间
30 7 * * * /var/www/extsuite/extman/tools/reportusage.pl -all /home/domains [email protected] 发送日志时间
0 0 1 * * wget -N -P /usr/share/spamassassin www.ccert.edu.cn/spam/sa/Chinese_rules.cf
0 5 * * sun /usr/local/slockd/tools/log-rotate /usr/bin/gzip
0 23 * * * /sbin/shutdown -h now(定时关机)
设定后 pgrep crond--》pkill crond--》pgrep crond--》/usr/sbin/crond--》pgrep crond 重启CRON服务生
效
9. 修改MYSQL密码:mysqladmin -u root -p password xxxxxxxx(ENTER后再次输入密码)
10. 管理服务器软件 F-Secure SSH File Transfer
防火墙/etc/sysconfig/iptables
11. 用date -s的命令将邮件服务器时间调整到北京时间。客户端时间如果和服务器时间差太多,是登录不了后台的。所以最起码服务器时间要是对的。
比如将系统时间设定成2007年7月26日的命令如下。
#date -s 07/26/2007
将系统时间设定成下午11点12分0秒的命令如下。
#date -s 11:12:00
12 首先要解决服务器安全问题,堵上最最明显的漏洞(升级我就没升了,怕升坏了)。
进入EXTMAN,点索引,选中root用户,把密码找回问题和答案这两项全改了,保存。
进入域列表,选中下面你建立的域,把容许自由注册的勾去掉,保存。
进入域列表,点右边的单个小人进去后可以看到已经存在的用户列表,把postmaster的密码也改了,保存。
保护MYSQL
1. 删除test0数据库
后台:http://mail.yourdomain.com/phpmyadmin/。进入后台后,选中左侧test数据库,然后右侧会出现红色删除标记,点一下,确认。
2. 在命令行下修改user表的root用户口令(你可以将test改为你要的口令)
mysql> use mysql;
mysql> update user set password=password('test') where user='root';
mysql> flush privileges;
这样,MySQL数据库root用户的口令也被改成test了。其中最后一句命令flush privileges的意思是强制刷新内存授权表,否则用的还是缓冲中的口令,这时非法用户还可以用root用户及空口令登陆,直到重启MySQL服务器。
3.修改LDAP密码
先进入/var/www/extsuite/phpldapadmin/config,将config.php.example复制为config.php
这时候,LDAP后台test.i-zq.com/phpldapadmin可以登陆了,接着修改LDAP的登陆密码:
进入/etc/openldap后,编辑slapd.conf修改以下3项:
suffix "dc=test.ibm.com"
rootdn "cn=Manager,dc=test.ibm.com"
rootpw IBM008
这时候,用户名是cn=Manager,dc=test.ibm.com,密码ibm008
重启LDAP服务 service ldap restart
输入ntsysv,选中LDAP,可以让计算机重启后自动运行LDAP(我没注意LDAP是不是自动运行的,应该是的吧)。
LDAP的后台页面上有匿名登陆选项,可以匿名登陆,关闭方法如下:
在slapd.conf文件内加入disallow bind_anon即可。
关闭匿名访问的影响还不清楚,反正WEBMIN好像无法访问LDAP了
13. 编辑/etc/postfix/main.cf中加入一行 smtpd_peername_lookup = no然后重启POSTFIX : service postfix restar可以解决连接时间过长的问题。你会发现你telnet服务器25等端口,速度快了很多。
14. Spamassassin是LINUX下的反垃圾邮件软件,EMOS里默认不启动。
启动方法:service spamassassin start
开机启动SPAMASSASSIN的方法:
输入ntsysv,然后选中SPAMASSASSIN服务,保存退出。
15. 进入/var/www/extsuite/extmail,修改SYS_SESS_TIMEOUT = 15m,即15分钟不操作,超时。
然后重启服务。但我不知道是哪个服务,所以我重启服务器了。。。。
这样进入EXTMAIL后,不会频繁地被系统踢掉。
限制用户邮件附件大小
修改/etc/postfix/main.cf 中message_size_limit
message_size_limit = 20971520 (没记错的话,这好像表示限额为20M,要限到几M,就按比例修改)
重启服务
service postfix restart
16. 启用WEBMIN
IPTABLES默认开这,但10000端口不开,所以要在IPTABLES里开启10000端口。
千万别输入SETUP,然后在图形界面下开启10000端口。这样的话,系统会把以前容许的25,110等端口几乎全部去掉,只容许10000端口。你就会发现邮件系统完全不能工作了。只能关闭IPTABLES才能恢复。
所以还是编辑文件比较保险:
编辑/etc/sysconfig/iptables,使以下几行出现在该文件内
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 143 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 110 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 10000 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
17. 容许发送压缩格式的附件
如果要允许扩展名为exe|zip|rar|arc|arj|zoo通过,则需要修改/etc/amavisd.conf,把
# [ qr'^\.(zip|rar|arc|arj|zoo)$'=> 0 ], # allow any within such archives
前的#去掉就行了。如果需要其他扩展名,例如exe,则只要加入即可。(一般建议别这么干,容易中毒的)
用EXTMAN创建完邮箱新用户后,让这个用户在EXTMAIL上登录一次,以自动创建邮箱。