Pahwa Bryair Zimbra
Pahwa New Architecture
Installation :-
On IMSS server :- //Install Postfix Yum install postfix
// Install Trend IMSS Download IMSS_v7.1_Linux_1224_r2.tar.gz for Untar the file and run the installation script :- ./ isinst.sh Press y when ask for installation and confirm . It will ask for database server to install locally , press y and proceed .
Postfix Configuration.
cd /etc/postfix
- vim main.cf
//insert following entry
mydomain = pahwa.com myhostname = imss.pahwa.com mydestination = $myhostname, localhost.$mydomain, $mydomain default_process_limit=200 imss_timeout=10m imss_connect_timeout=1s content_filter = imss:localhost:10025 imss_destination_recipient_limit=200 imss_destination_concurrency_limit=200
smtpd_client_restrictions =
permit_mynetworks, reject_rbl_client bl.spamcop.net, reject_rbl_client b.barracudacentral.org, reject_rbl_client cbl.abuseat.org, reject_rbl_client dnsbl.sorbs.net, permit
disable_vrfy_command = yes smtpd_recipient_restrictions =
check_recipient_access hash:/etc/postfix/recipient_domains, permit_mynetworks, permit_sasl_authenticated, reject_unverified_recipient, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unauth_destination, reject_unauth_pipelining, reject
smtpd_sender_restrictions =
permit_mynetworks, permit_sasl_authenticated, check_sender_access hash:/etc/postfix/sender_access reject_unknown_sender_domain
mynetworks = 127.0.0.1, 192.168.0.5, 192.168.0.254, 192.168.0.2
//For recipent restriction
- vim recipient_domains
//Make Entry :- pahwa.com OK
//Now Postmap command to make db
- postmap recipient_domains
//For Sender restriction
- vim /etc/postfix/sender_access
pahwa.com REJECT postmaster@imss.pahwa.com REJECT
- postmap sender_access
//Also Edit master.cf
- vim master.cf
//IMSS: content filter smtp transport imss for IMSS
imss unix - - n - - smtp
-o disable_dns_lookups=yes
-o smtp_connect_timeout=$imss_connect_timeout
-o smtp_data_done_timeout=$imss_timeout
//IMSS: content filter loop back smtpd localhost:10026 inet n - n - 200 smtpd
-o content_filter=
-o smtpd_timeout=$imss_timeout
-o local_recipient_maps=
-o myhostname=postfix.imss71
-o smtpd_client_restrictions=
-o smtpd_enforce_tls=no
//IMSS Configuration Via Graphical Panel :- All the configurations are done by IT team of Pahwa like filters and rules for AV/AS . we have defined :-
IMSS configuration -> SMTP Routing -> Domain-based delivery
Domain IP Port pahwa.com 192.168.0.2 25
Fetch mail is also configured on this server, to download mails from mx2 in case of failure of mx1 http://192.168.1.15/wiki/index.php/Fetchmail Configuration of fetch mail was downloaded from old server
DRBD and HEARTBEAT configuration:-
Step :1 Download EPEL and ELRepo (epel is for heartbeat and elrepo is for DRBD)
vi /etc/yum.repos.d/elrepo.repo enabled=0
- yum --enablerepo=elrepo install drbd83-utils kmod-drbd83
rpm -Uvh http://download.fedora.redhat.com/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm
- vi /etc/yum.repos.d/epel.repo
enabled=0
- yum --enablerepo=epel install heartbeat
Same configyration in Node1 and Node2
vim /etc/hosts 192.168.0.5 node1.pahwa.com node1 192.168.0.2 mail21c.pahwa.com mail21c node2.pahwa.com need to be added later
- mv /etc/drbd.d/global_common.conf /etc/drbd.d/global_common.sample
and create a new file:
- vi /etc/drbd.d/global_common.conf
global { usage-count no; } common { syncer { rate 100M; } }
Create a new resource file that I called “main”, on both servers they have to be equal:
- vi /etc/drbd.d/main.res
resource main { protocol C; startup { wfc-timeout 0; degr-wfc-timeout 120; } disk { on-io-error detach; } on node1.pahwa.com { device /dev/drbd0; disk /dev/vg_pahwa/LogVol01; meta-disk internal; address 10.0.0.1:7788; on node2.pahwa.com { device /dev/drbd0; disk /dev/vg_pahwa/LogVol01; meta-disk internal; address 10.0.0.2:7788;
Now we have to create the metadata on both servers:
#dd if=/dev/zero of= /dev/vg_home1 bs=1M count=50
drbdadm create-md main (run on node1) drbdadm create-md main (run on node2) node 2 is not configured yet and need to be configured.
[root@node1 drbd.d]# service drbd start
Starting DRBD resources: [ d(main) s(main) n(main) ].
We will tell DRBD that server1 is the Primary server:
On node1:
- drbdsetup /dev/drbd0 primary -o
On node1:
- mkfs.ext4 /dev/drbd0
Now DRBD is configured , now you ready to mount your /dev/drbd0 to /opt On Node1
- mount –t ext4 /dev/drbd0 /opt
We will install heartbeat from the EPEL repository:
- rpm -Uvh http://download.fedora.redhat.com/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm
- vi /etc/yum.repos.d/epel.repo
enabled=0
- yum --enablerepo=epel install heartbeat
Create the following file on both servers with the exact same content:
- vi /etc/ha.d/ha.cf
keepalive 2 deadtime 30 bcast eth0 node node1.pahwa.com node2.pahwa.com
The next setp is to create the resource file for heartbeat on both servers with exact same content again:
- vi /etc/ha.d/haresources
node1.pahwa.com IPaddr::192.168.0.2/24/eth0 drbddisk::main Filesystem::/dev/drbd0::/opt::ext4 zimbra
- first word is the hostname of the primary server then the IP 192.168.0.2 is the one I choose to be the virtual IP to be moved to the slave in case of a failure.
The last thing is to create the authentication file on both servers again with the same content:
- vi /etc/ha.d/authkeys
auth 3
3 md5 asd1234f
This password file should only be readable by the root user:
- chmod 600 /etc/ha.d/authkeys
Need To Configure Same settings on node2.pahwa.com which will be provided later by Client. Currently IP Alias is Added Directly on eth0 for node1.pahwa.com
Zimbra Installation On node1.pahwa.com:-
Download zcs-8.6.0_GA_1153.RHEL6_64.20141215151155.tgz and untar the compressed file .
- cd zcs-8.6.0_GA_1153.RHEL6_64.20141215151155
now inside this directory run install.sh
./install.sh --platform-override
now follow the onscreen instructions and install zimbra .
Do not install zimbra-proxy and zimbra-memcahce , Just press [N] while setup prompts for install .
After Successful Installation we need to create users which was provided by IT team of pahwa with passwords .
//script location /root/Desktop/scripts
zmprov < /PATH_of_script
Now we want all external mails to go via IMSS server so we have Defined External Relay IP under Global Config via Admin Panel as 192.168.0.10:25
