Jump to content

Qmail Postfix TrendMicro Integration At PAHWA Enterprises

From TetraWiki
Revision as of 03:47, 3 December 2012 by Biswajit (talk | contribs)


Qmail Postfix TrendMicro Integration At PAHWA Enterprises

1. Architecture of mail:

 front end postfix    port 25
 Proxy port of Trend 10024
 Downstream port     825  (qmail)
 Centralize DATABASE:  LDAP


2. Configuration of postfix

  1. vi main.cf
queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
mail_owner = postfix
myhostname = mail21c.pahwa.com
mydomain = pahwa.com
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, pahwa.com
unknown_local_recipient_reject_code = 550
mynetworks = 127.0.0.0/8, 192.168.0.3, 192.168.0.10, 210.211.174.225, 59.176.16.97, 219.65.189.118, 59.93.252.157, 122.164.56.219
debug_peer_level = 2
debugger_command = 
sendmail_path = /usr/sbin/sendmail.postfix
newaliases_path = /usr/bin/newaliases.postfix
mailq_path = /usr/bin/mailq.postfix
setgid_group = postdrop
html_directory = /usr/share/doc/postfix-2.4.1-documentation/html
manpage_directory = /usr/share/man
sample_directory = /etc/postfix
readme_directory = /usr/share/doc/postfix-2.4.1-documentation/readme
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_sasl_local_domain = 
accounts_server_host = localhost
accounts_search_base = dc=pahwa,dc=com
accounts_query_filter = (&(objectClass=qmailUser)(mail=%s))
accounts_result_attribute = mailMessageStore
accounts_result_format  =  %s/Maildir/
accounts_scope = sub
accounts_cache = yes
accounts_bind = yes
accounts_bind_dn = cn=Manager, dc=pahwa, dc=com
accounts_bind_pw = secretpahwa
accounts_version = 3
alternate_server_host = localhost
alternate_search_base = dc=pahwa,dc=com
alternate_query_filter = (&(objectClass=qmailUser)(mailAlternateAddress=%s))
alternate_result_attribute = mailMessageStore
alternate_result_format  =  %s/Maildir/
alternate_scope = sub
alternate_cache = yes
alternate_bind = yes
alternate_bind_dn = cn=Manager, dc=pahwa, dc=com
alternate_bind_pw = secretpahwa
alternate_version = 3
virtual_transport = virtual
virtual_uid_maps = static:508
virtual_gid_maps = static:503
virtual_mailbox_base = /home/vmail
virtual_mailbox_maps = ldap:accounts,ldap:alternate
virtual_create_maildirsize = yes
virtual_mailbox_extended = yes 
disable_dns_lookups = no
local_recipient_maps = $virtual_mailbox_maps
smtpd_client_restrictions = reject_rbl_client bl.spamcop.net,
 permit
disable_vrfy_command = yes
smtpd_recipient_restrictions=permit_mynetworks,
 permit_sasl_authenticated,
 reject_non_fqdn_sender,
 reject_non_fqdn_recipient,
 reject_unauth_destination,
 reject_unauth_pipelining
smtpd_sender_restrictions =
 permit_mynetworks,
 permit_sasl_authenticated,
 reject_unknown_sender_domain
default_process_limit=200
imss_timeout=10m
imss_connect_timeout=1s
content_filter = imss:localhost:10024
imss_destination_recipient_limit=200
imss_destination_concurrency_limit=20


  1. vi master.cf
smtp      inet  n       -       n       -       -       smtpd
imss unix - - n - - smtp
        -o disable_dns_lookups=yes
        -o smtp_connect_timeout=$imss_connect_timeout
        -o smtp_data_done_timeout=$imss_timeout
pickup    fifo  n       -       n       60      1       pickup
cleanup   unix  n       -       n       -       0       cleanup
qmgr      fifo  n       -       n       300     1       qmgr
tlsmgr    unix  -       -       n       1000?   1       tlsmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite
bounce    unix  -       -       n       -       0       bounce
defer     unix  -       -       n       -       0       bounce
trace     unix  -       -       n       -       0       bounce
verify    unix  -       -       n       -       1       verify
flush     unix  n       -       n       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
smtp      unix  -       -       n       -       -       smtp
relay     unix  -       -       n       -       -       smtp
       -o fallback_relay=
showq     unix  n       -       n       -       -       showq
error     unix  -       -       n       -       -       error
discard   unix  -       -       n       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
anvil     unix  -       -       n       -       1       anvil
scache    unix  -       -       n       -       1       scache
maildrop  unix  -       n       n       -       -       pipe
 flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
old-cyrus unix  -       n       n       -       -       pipe
 flags=R user=cyrus argv=/usr/lib/cyrus-imapd/deliver -e -m ${extension} ${user}
cyrus     unix  -       n       n       -       -       pipe
 user=cyrus argv=/usr/lib/cyrus-imapd/deliver -e -r ${sender} -m ${extension} ${user}
uucp      unix  -       n       n       -       -       pipe
 flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
ifmail    unix  -       n       n       -       -       pipe
 flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp     unix  -       n       n       -       -       pipe
 flags=Fq. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient


This postfix will pass mail to trend and trend will pass to qmail.


=  SMTP AUTH via postfix =
  1. vi /etc/saslauthd.conf
ldap_servers: ldap://localhost/
ldap_search_base: dc=pahwa, dc=com


Services to RUN

#/etc/init.d/postfix start
#/etc/init.d/saslauthd  start


IMSS login

https://ip:8445
   user: admin
   pass: imss7.0


One instance is also build for

1. config dir /var/qmail4 2. Latest Combined patch on qmail4 script to generate valid rcpt

  1. vi /root/validrcpt.sh
  2. !/bin/sh

cd /var/qmail4/control

ldapsearch -x | grep "mail:" > valid ; sed "s/mail: //g" valid > validrcptto.txt 
ldapsearch -x | grep "mailAlternateAddress:" > valid1 ; sed "s/mailAlternateAddress: //g" valid1 >> validrcptto.txt 
cdbmake-12 validrcptto.cdb validrcptto.tmp < validrcptto.txt 
 

In future if Postfix misbehave we need to change

#ln -s /var/qmail4/supervise/qmail4-send /service/
#ln -s /var/qmail4/supervise/qmail4-smtp /service/

restart the qmail

change port 825 for local users.