rhel+postfix+mysql+dovecot+extmail system

来源:互联网 发布:caj阅读软件打开 编辑:程序博客网 时间:2024/05/17 08:16

rhel+postfix+mysql+dovecot+extmail
1. installing mysql
1. yum install mysql mysqlserver
mysqldevel
php phpmysql
y
2. service mysqld start
2. postfix upgrade (系统自带的postfix不支持mysql 因此需要重新编译加载mysql的支持 这
里我用的是最新的稳定源码直接升级系统已有的postfix)
1. yum install postfix y
2. alternatives set
mta /usr/sbin/sendmail.postfix ; service sendmail stop
3. tar zxf postfix2.5.2.
tar.gz
4. cd postfix2.5.2
5. make f
Makefile.init makefiles 'CCARGS=DHAS_
MYSQL I/
usr/include/mysql
DUSE_
SASL_AUTH DUSE_
CYRUS_SASL I/
usr/include/sasl DUSE_
TLS'
'AUXLIBS=L/
usr/lib/mysql lmysqlclient
lz
lm
L/
usr/lib lsasl2
lssl
lcrypto'
6. modify /etc/postfix/main.cf looks like:
1. myhostname = mail.example.com
2. mydomain = example.com
3. myorigin = $mydomain
4. inet_interfaces = all
5. mydestination = $myhostname, $mydomain, localhost
7. service postfix start
3. support for mysql looks like:
1. cd /var/www/extsuite/extman/docs
2. cp mysql_virtual_alias_maps.cf mysql_virtual_domains_maps.cf
mysql_virtual_mailbox_maps.cf /etc/postfix (这三个文件是postfix从mysql中查询数据
用的 在extman中的docs目录中)
3. useradd g
600 virtual
4. postconf e
virtual_mailbox_base=/home/virtual
5. postconf e
virtual_uid_maps=static:600
6. postconf e
virtual_gid_maps=static:600
7. postconf e
virtual_alias_maps=mysql:/etc/postfix/mysql_virtual_alias_maps.cf
8. postconf e
virtual_mailbox_domains=mysql:/etc/postfix/mysql_virtual_domains_maps.cf
9. postconf e
virtual_mailbox_maps=mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
4. support for sasl looks like:
1. postconf e
smtpd_sasl_auth_enable=yes
2. postconf e
smtpd_sasl_security_options=noanonymous
3. postconf e
smtpd_sasl_type=dovecot
4. postconf e
smtpd_sasl_path=private/auth
5. postconf e
“smtpd_recipient_restrictions=permit_sasl_authenticated,
permit_tls_clientcerts,permit_mynetworks, reject_unauth_destination”
5. support for tls looks like:
1. cd /etc/pki/tls/certs; ./makedummycert
mail.pem
2. postconf e
smtpd_tls_CApath=/etc/pki/tls/certs
3. postconf e
smtpd_tls_cert_file=/etc/pki/tls/certs/mail.pem
4. postconf e
smtpd_tls_key_file=/etc/pki/tls/certs/mail.pem
5. postconf e
smtpd_tls_loglevel=0
6. postconf e
smtpd_tls_received_header=yes
7. postconf e
smtpd_tls_security_level=may
8. postconf e
smtpd_tls_session_cache_database=btree:/var/lib/postfix/smtpd_tls_session_cache.db
9. postconf e
tls_random_source=dev:/dev/urandom
6. configure the dovecot looks like: (对MUA收信的支持)
1. cd /etc/pki/tls/certs; make dovecot.pem; cp dovecot.pem ../../dovecot/certs/; cp dovecot.pem
../../dovecot/private/
2. modify the /etc/dovecot.conf:
protocols = imap imaps pop3 pop3s
ssl_cert_file = /etc/pki/dovecot/certs/dovecot.pem
ssl_key_file = /etc/pki/dovecot/private/dovecot.pem
mail_location = maildir:/home/virtual/%d/%n/Maildir
first_valid_uid = 600
auth default {
mechanisms = plain login digestmd5
crammd5
ntlm rpa gssapi
passdb sql {
args = /etc/dovecotsql.
conf
}
userdb sql {
args = /etc/dovecotsql.
conf
}
user = nobody
socket listen {
client {
path = /var/spool/postfix/private/auth
mode = 0660
user = postfix
group = postfix
}
}
}
3. modify the /etc/dovecotsql.
conf: (收信是要对用户进行验证 下面的配置是让dovecot 从
mysql中查询相应的数据)
cp /usr/share/doc/dovecot1.0/
examples/dovecotsql.
conf /etc
driver = mysql
connect = host=localhost dbname=extmail user=extmail password=extmail
default_pass_scheme = PLAIN
password_query = SELECT username as user, password FROM mailbox WHERE username
= '%u'
user_query = SELECT maildir, 500 AS uid, 500 AS gid FROM mailbox WHERE username =
'%u'
7. installing extmail and extman (http://www.extmail.org/cgibin/
download.cgi)
1. mkdir /var/www/extsuite
2. tar zxf extmail1.0.4.
tar.gz C
/var/www/extsuite
3. tar zxf extman0.2.4.
tar.gz C
/var/www/extsuite
4. cd /var/www/extsuite; mv extmail1.0.4
extmail; mv extman0.2.4
extman
5. cd extmil; cp webmail.cf.default webmail.cf
6. modify webmail.cf looks like:
1. SYS_MAILDIR_BASE = /home/virtual
2. SYS_CRYPT_TYPE = plain
3. SYS_MYSQL_USER = extmail
4. SYS_MYSQL_PASS = extmail
7. cd ../extman ; modify webman.cf looks like:
1. SYS_MAILDIR_BASE = /home/virtual
2. SYS_CAPTCHA_LEN = 4
3. SYS_CRYPT_TYPE = plain
8. mkdir /tmp/extman; chown virtual /tmp/extman
9. configure mysqld for extmail
1. cd docs
2. mysql < extmail.sql (向mysql中添加若干表,是extmail需要的)
3. mysql < init.sql(添加用户)
10. configure httpd add following lines:
1. NameVirtualHost *:80
2. <VirtualHost *:80>
ServerName extmail.example.com
DocumentRoot /var/www/extsuite/extmail/html/
ScriptAlias /extmail/cgi /var/www/extsuite/extmail/cgi
ScriptAlias /extman/cgi /var/www/extsuite/extman/cgi
Alias /extman /var/www/extsuite/extman/html
Alias /extmail /var/www/extsuite/extmail/html
SuexecUserGroup virtual virtual
</VirtualHost>
11. rpm ivh
perlGD2.351.
el5.rf.i386.rpm
12. tar zxf TimeHiRes1.9715.
tar.gz
1. cd TimeHiRes1.9715
2. perl Makefile.PL && make && make test && make install
13. tar zxf FileTail0.99.3.
tar.gz
1. cd FileTail0.99.3
2. perl Makefile.PL && make && make test && make install
14. yum install libart_lgpl libart_lgpldevel
freetype freetypedevel
tcl tcldevel
libpng libpngdevel
python pythondevel
ruby rubydevel
y
15. tar zxf rrdtool1.2.26.
tar.gz
1. cd rrdtool1.2.26
2. ./configure –prefix=/usr/local/rrdtool
3. make && make install
4. ln s
/usr/local/rrdtool/lib/perl/5.8.8/RRDp.pm /usr/lib/perl5/5.8.8/
5. ln s
/usr/local/rrdtool/lib/perl/5.8.8/i386linuxthreadmulti/
RRDs.pm /usr/lib/perl5/5.8.8/
6. ln s
/usr/local/rrdtool/lib/perl/5.8.8/i386linuxthreadmulti/
auto/RRDs/RRDs.so
/usr/lib/perl5/5.8.8/i386linuxthreadmulti/
16. cd /var/www/extsuite/extman/addon
17. cp r
mailgraph_ext/ /usr/local/
18. /usr/local/mailgraph_ext/mailgraphinit
start
19. /usr/local/mailgraph_ext/qmonitorinit
start
8.
9. ok! you can test via firefox!
Installing antivirus antispam for postfix
1. Install Spamassassin
a) yum install spamassassin y
b) wget N
P
/usr/share/spamassassin www.ccert.edu.cn/spam/sa/Chinese_rules.cf
c) Service spamassassin start
2. Install Fprot
a)
fplinuws.
rpm
b) rpm ivh
fplinuxws.
rpm
c) /usr/local/fprot/
tools/checkupdates.
pl ( edit crontab if you want it to auto update)
3. Install MailScanner
a) Download
b) tar zxvf MailScanner4.69.93.
rpm.tar.gz
c) cd MailScanner
d) ./install.sh
e) mkdir /var/spool/MailScanner/spamassassin; chown postfix.postfix /var/spool/MailScanner/*
f) vi /etc/MailScanner/MailScanner.conf (change follow lines, like so)
Run As User = postfix
Run As Group = postfix
Incoming Queue Dir = /var/spool/postfix/hold
Outgoing Queue Dir = /var/spool/postfix/incoming
MTA = postfix
Virus Scanners = fprot
Always Include Spamassassin report = yes
Use Spamassassin = yes
SpamAssassin User State Dir = /var/spool/MailScanner/spamassassin
g) echo /^Received:/ HOLD >>/etc/postfix/header_checks
postmap /etc/postfix/header_checks
(make sure uncomment header_checks in /etc/postfix/main.cf)
h) postfix stop; chkconfig postfix off
i) service MailScanner start
j) chkconfig MailScanner on
4. Virus test
a) Download “eicar.com”
b) mail test include “eicar.com”.
ADDITIONAL SECTION:
1. 加强贝式分析广告信件需要安装密码学演算和特征比对的 Razor Pyzor Dcc
1. Install Razor and Razoragent
tar jxvf razoragentssdk2.07.
tar.bz2
cd razoragentssdk2.07
perl Makefile.PL && make && make install
tar jxvf razoragents2.84.
tar.bz2
cd razoragents2.84
perl Makefile.PL && make && make install
razoradmin
register
user=
test@westos.org pass=
test
2. Install Pyzor
tar.bz2
tar jxvf pyzor0.4.0.
tar.bz2
cd pyzor0.4.0
python setup.py build && python setup.py install
chmod R
a+rX /usr/share/doc/pyzor /usr/lib/python2.4/sitepackages/
pyzor /usr/bin/pyzor
/usr/bin/pyzord
3. Install DCC
dcc/source/dcc.tar.Z
tar zxvf dcc.tar.Z
cd dcc1.3.90
./configure && make && make install

原创粉丝点击