Sunday, April 7, 2013

Install Zimbra Open Source on Ubuntu 10.04 LTS






Linux
Zimbra is the Email Server software that rich of functions and can replace Exchange Server to reduce the cost. After bought by VMware and change the name to VMware Zimbra but the business model still the same. There is ZCS Open Source Edition that you can use without any cost. Also if you want more function like working with Outlook, iPhone, Android including large scale like clustering you can buy ZCS Network Edition that still cheaper than Exchange Server
This article will focus on install ZCS Open Source Edition on Ubuntu 10.04 LTS. These are requirement
  • Server with fresh install Ubuntu Server 10.04 LTS (Lucid Lynx) 64-bit
    • This server hostname will be webmail.zimbra.wingfoss.com
  • 1 Public IP
  • Domain that config DNS A and MX record to mapped with public IP on server
    • In this example will use @zimbra.wingfoss.com

Preparing before install Zimbra

sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get autoremove
sudo apt-get install openssh-server libperl5.10 sysstat sqlite3
sudo shutdown -r now
The latest version for now is Zimbra Collaboration Suite Open Source Edition 7.1.3 GA
wget http://files.zimbra.com/downloads/7.1.3_GA/zcs-7.1.3_GA_3346.UBUNTU10_64.20110928134610.tgz
tar xvfz zcs*.tgz
cd zcs*

Install BIND9 for NAT 1-1

In many case, your server didn't got public IP directly. But you got public IP by NAT by network device. In this condition you have to use Split DNS as Zimbra suggest
  • Install bind9
sudo apt-get install bind9
  • edit /etc/bind/named.conf.options by the line forwarders change to our DNS IP then append zone that the bottom of line
options {
        directory "/var/cache/bind";
 
        // If there is a firewall between you and nameservers you want
        // to talk to, you may need to fix the firewall to allow multiple
        // ports to talk.  See http://www.kb.cert.org/vuls/id/800113
 
        // If your ISP provided one or more IP addresses for stable
        // nameservers, you probably want to use them as forwarders.
        // Uncomment the following block, and insert the addresses replacing
        // the all-0's placeholder.
 
        forwarders {
                8.8.8.8;
        };
 
        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { any; };
};
 
zone "zimbra.wingfoss.com" {
        type master;
        file "db.zimbra.wingfoss.com";
};
  • then create /var/cache/bind/db.zimbra.wingfoss.com don't forget to change filename to match with zone file
$ttl 38400
@       IN      SOA     webmail.zimbra.wingfoss.com. webmail.zimbra.wingfoss.com. (
                        2011091202
                        10800
                        3600
                        604800
                        38400 )
        IN      NS      ns1.zimbra.wingfoss.com.
        IN      NS      ns2.zimbra.wingfoss.com.
        IN      A       192.168.100.20
        IN      MX      10 webmail.zimbra.wingfoss.com.
 
@       A       192.168.100.20
ns1     A       192.168.100.20
ns2     A       192.168.100.20
webmail A       192.168.100.20
  • Then edit /etc/resolv.conf and change nameserver to 127.0.0.1
search zimbra.wingfoss.com
nameserver 127.0.0.1
  • restart bind9
sudo /etc/init.d/bind9 restart
  • Test by dig command and it should return like below
dig zimbra.wingfoss.com mx
; <<>> DiG 9.7.0-P1 <<>> zimbra.wingfoss.com mx
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57886
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3
 
;; QUESTION SECTION:
;zimbra.wingfoss.com.           IN      MX
 
;; ANSWER SECTION:
zimbra.wingfoss.com.    38400   IN      MX      10 webmail.zimbra.wingfoss.com.
 
;; AUTHORITY SECTION:
zimbra.wingfoss.com.    38400   IN      NS      ns1.zimbra.wingfoss.com.
zimbra.wingfoss.com.    38400   IN      NS      ns2.zimbra.wingfoss.com.
 
;; ADDITIONAL SECTION:
webmail.zimbra.wingfoss.com. 38400 IN   A       192.168.100.20
ns1.zimbra.wingfoss.com. 38400  IN      A       192.168.100.20
ns2.zimbra.wingfoss.com. 38400  IN      A       192.168.100.20
 
;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri Nov  4 21:00:19 2011
;; MSG SIZE  rcvd: 145

Install Zimbra

sudo ./install.sh
Operations logged to /tmp/install.log.1615
Checking for existing installation...
    zimbra-ldap...NOT FOUND
    zimbra-logger...NOT FOUND
    zimbra-mta...NOT FOUND
    zimbra-snmp...NOT FOUND
    zimbra-store...NOT FOUND
    zimbra-apache...NOT FOUND
    zimbra-spell...NOT FOUND
    zimbra-convertd...NOT FOUND
    zimbra-memcached...NOT FOUND
    zimbra-proxy...NOT FOUND
    zimbra-archiving...NOT FOUND
    zimbra-cluster...NOT FOUND
    zimbra-core...NOT FOUND
 
 
PLEASE READ THIS AGREEMENT CAREFULLY BEFORE USING THE SOFTWARE.
ZIMBRA, INC. ("ZIMBRA") WILL ONLY LICENSE THIS SOFTWARE TO YOU IF YOU
FIRST ACCEPT THE TERMS OF THIS AGREEMENT. BY DOWNLOADING OR INSTALLING
THE SOFTWARE, OR USING THE PRODUCT, YOU ARE CONSENTING TO BE BOUND BY
THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS
AGREEMENT, THEN DO NOT DOWNLOAD, INSTALL OR USE THE PRODUCT.
 
License Terms for the Zimbra Collaboration Suite:
  http://www.zimbra.com/license/zimbra_public_eula_2.1.html
 
 
 
Do you agree with the terms of the software license agreement? [N] Y
 
Checking for prerequisites...
     FOUND: NPTL
     FOUND: netcat-openbsd-1.89-3ubuntu2
     FOUND: sudo-1.7.2p1-1ubuntu5.3
     FOUND: libidn11-1.15-2
     FOUND: libpcre3-7.8-3build1
     FOUND: libgmp3c2-2:4.3.2+dfsg-1ubuntu1
     FOUND: libexpat1-2.0.1-7ubuntu1
     FOUND: libstdc++6-4.4.3-4ubuntu5
     FOUND: libperl5.10-5.10.1-8ubuntu2.1
Checking for suggested prerequisites...
     FOUND: perl-5.10.1
     FOUND: sysstat
     FOUND: sqlite3
Prerequisite check complete.
 
Checking for installable packages
 
Found zimbra-core
Found zimbra-ldap
Found zimbra-logger
Found zimbra-mta
Found zimbra-snmp
Found zimbra-store
Found zimbra-apache
Found zimbra-spell
Found zimbra-memcached
Found zimbra-proxy
 
 
Select the packages to install
 
Install zimbra-ldap [Y] Y
 
Install zimbra-logger [Y] Y
 
Install zimbra-mta [Y] Y
 
Install zimbra-snmp [Y] Y
 
Install zimbra-store [Y] Y
 
Install zimbra-apache [Y] Y
 
Install zimbra-spell [Y] Y
 
Install zimbra-memcached [N] N
 
Install zimbra-proxy [N] N
Checking required space for zimbra-core
checking space for zimbra-store
 
Installing:
    zimbra-core
    zimbra-ldap
    zimbra-logger
    zimbra-mta
    zimbra-snmp
    zimbra-store
    zimbra-apache
    zimbra-spell
 
The system will be modified.  Continue? [N] Y
 
Removing /opt/zimbra
Removing zimbra crontab entry...done.
Cleaning up zimbra init scripts...done.
Cleaning up /etc/ld.so.conf...done.
Cleaning up /etc/security/limits.conf...done.
 
Finished removing Zimbra Collaboration Suite.
 
Installing packages
 
    zimbra-core......zimbra-core_7.1.3_GA_3346.UBUNTU10_64_amd64.deb...
    zimbra-ldap......zimbra-ldap_7.1.3_GA_3346.UBUNTU10_64_amd64.deb...done
    zimbra-logger......zimbra-logger_7.1.3_GA_3346.UBUNTU10_64_amd64.deb...done
    zimbra-mta......zimbra-mta_7.1.3_GA_3346.UBUNTU10_64_amd64.deb...done
    zimbra-snmp......zimbra-snmp_7.1.3_GA_3346.UBUNTU10_64_amd64.deb...done
    zimbra-store......zimbra-store_7.1.3_GA_3346.UBUNTU10_64_amd64.deb...done
    zimbra-apache......zimbra-apache_7.1.3_GA_3346.UBUNTU10_64_amd64.deb...
    zimbra-spell......zimbra-spell_7.1.3_GA_3346.UBUNTU10_64_amd64.deb...done
Operations logged to /tmp/zmsetup.11042011-195302.log
Installing LDAP configuration database...done.
Setting defaults...
 
DNS ERROR resolving MX for webmail.zimbra.wingfoss.com
It is suggested that the domain name have an MX record configured in DNS
Change domain name? [Yes]
Create domain: [webmail.zimbra.wingfoss.com] zimbra.wingfoss.com
        MX: webmail.zimbra.wingfoss.com (192.168.100.20)
 
        Interface: 192.168.100.20
        Interface: 127.0.0.1
done.
Checking for port conflicts
 
Main menu
 
   1) Common Configuration:
   2) zimbra-ldap:                             Enabled
   3) zimbra-store:                            Enabled
        +Create Admin User:                    yes
        +Admin user to create:                 admin@zimbra.wingfoss.com
******* +Admin Password                        UNSET
        +Anti-virus quarantine user:           virus-quarantine.87xyz2_zvy@zimbra.wingfoss.com
        +Enable automated spam training:       yes
        +Spam training user:                   spam.l1bceniwua@zimbra.wingfoss.com
        +Non-spam(Ham) training user:          ham.205v2giqh@zimbra.wingfoss.com
        +SMTP host:                            webmail.zimbra.wingfoss.com
        +Web server HTTP port:                 80
        +Web server HTTPS port:                443
        +Web server mode:                      http
        +IMAP server port:                     143
        +IMAP server SSL port:                 993
        +POP server port:                      110
        +POP server SSL port:                  995
        +Use spell check server:               yes
        +Spell server URL:                     http://webmail.zimbra.wingfoss.com:7780/aspell.php
        +Configure for use with mail proxy:    FALSE
        +Configure for use with web proxy:     FALSE
        +Enable version update checks:         TRUE
        +Enable version update notifications:  TRUE
        +Version update notification email:    admin@zimbra.wingfoss.com
        +Version update source email:          admin@zimbra.wingfoss.com
 
   4) zimbra-mta:                              Enabled
   5) zimbra-snmp:                             Enabled
   6) zimbra-logger:                           Enabled
   7) zimbra-spell:                            Enabled
   8) Default Class of Service Configuration:
   r) Start servers after configuration        yes
   s) Save config to file
   x) Expand menu
   q) Quit
 
Address unconfigured (**) items  (? - help)
  • Put number 3 to config Admin Password (Number 4) then put r to return and put a to apply Zimbra configuration
Main menu
 
   1) Common Configuration:
   2) zimbra-ldap:                             Enabled
   3) zimbra-store:                            Enabled
   4) zimbra-mta:                              Enabled
   5) zimbra-snmp:                             Enabled
   6) zimbra-logger:                           Enabled
   7) zimbra-spell:                            Enabled
   8) Default Class of Service Configuration:
   r) Start servers after configuration        yes
   s) Save config to file
   x) Expand menu
   q) Quit
 
*** CONFIGURATION COMPLETE - press 'a' to apply
Select from menu, or press 'a' to apply config (? - help) a
Save configuration data to a file? [Yes] Yes
Save config in file: [/opt/zimbra/config.8588]
Saving config in /opt/zimbra/config.8588...done.
The system will be modified - continue? [No] Yes
Operations logged to /tmp/zmsetup.11042011-205010.log
Setting local config values...done.
Setting up CA...done.
Deploying CA to /opt/zimbra/conf/ca ...done.
Creating SSL certificate...done.
Installing mailboxd SSL certificates...done.
Initializing ldap...done.
Setting replication password...done.
Setting Postfix password...done.
Setting amavis password...done.
Setting nginx password...done.
Setting BES searcher  password...done.
Creating server entry for webmail.zimbra.wingfoss.com...done.
Saving CA in ldap ...done.
Saving SSL Certificate in ldap ...done.
Setting spell check URL...done.
Setting service ports on webmail.zimbra.wingfoss.com...done.
Adding webmail.zimbra.wingfoss.com to zimbraMailHostPool in default COS...done.
Installing webclient skins...
        smoke...done.
        pebble...done.
        sky...done.
        sand...done.
        bones...done.
        lavender...done.
        tree...done.
        lemongrass...done.
        carbon...done.
        steel...done.
        bare...done.
        waves...done.
        lake...done.
        beach...done.
        twilight...done.
        hotrod...done.
        oasis...done.
Finished installing webclient skins.
Setting zimbraFeatureTasksEnabled=TRUE...done.
Setting zimbraFeatureBriefcasesEnabled=TRUE...done.
Setting MTA auth host...done.
Setting TimeZone Preference...done.
Initializing mta config...done.
Setting services on webmail.zimbra.wingfoss.com...done.
Creating domain zimbra.wingfoss.com...done.
Setting default domain name...done.
Creating domain zimbra.wingfoss.com...already exists.
Creating admin account admin@zimbra.wingfoss.com...done.
Creating root alias...done.
Creating postmaster alias...done.
Creating user spam.l1bceniwua@zimbra.wingfoss.com...done.
Creating user ham.205v2giqh@zimbra.wingfoss.com...done.
Creating user virus-quarantine.87xyz2_zvy@zimbra.wingfoss.com...done.
Setting spam training and Anti-virus quarantine accounts...done.
Initializing store sql database...done.
Setting zimbraSmtpHostname for webmail.zimbra.wingfoss.com...done.
Configuring SNMP...done.
Checking for default IM conference room...not present.
Initializing default IM conference room...done.
Setting up syslog.conf...done.
 
You have the option of notifying Zimbra of your installation.
This helps us to track the uptake of the Zimbra Collaboration Suite.
The only information that will be transmitted is:
        The VERSION of zcs installed (7.1.3_GA_3346_UBUNTU10_64)
        The ADMIN EMAIL ADDRESS created (admin@zimbra.wingfoss.com)
 
Notify Zimbra of your installation? [Yes] Yes
Notifying Zimbra of installation via http://www.zimbra.com/cgi-bin/notify.cgi?VER=7.1.3_GA_3346_UBUNTU10_64&MAIL=admin@zimbra.wingfoss.com
 
Notification complete
 
Starting servers...done.
Installing common zimlets...
        com_zimbra_bulkprovision...done.
        com_zimbra_attachcontacts...done.
        com_zimbra_linkedin...done.
        com_zimbra_cert_manager...done.
        com_zimbra_webex...done.
        com_zimbra_date...done.
        com_zimbra_social...done.
        com_zimbra_srchhighlighter...done.
        com_zimbra_phone...done.
        com_zimbra_email...done.
        com_zimbra_url...done.
        com_zimbra_adminversioncheck...done.
        com_zimbra_dnd...done.
        com_zimbra_attachmail...done.
Finished installing common zimlets.
Restarting mailboxd...done.
Setting up zimbra crontab...done.
 
 
Moving /tmp/zmsetup.11042011-205010.log to /opt/zimbra/log
 
 
Configuration complete - press return to exit
install-zimbra/zimbra-02.png
If success so we will enter to Administration page
install-zimbra/zimbra-03.png
Or you can test by go to Zimbra webmail http://webmail.zimbra.wingfoss.com then put the username admin and password
install-zimbra/zimbra-01.png
If success so you will see webmail interface
install-zimbra/zimbra-04.png

Install Zimbra patch

At the time of writing there is patch for 7.1.3 GA. You can install by
cd
wget http://files2.zimbra.com/downloads/7.1.3_GA/zcs-patch-7.1.3_GA_3374.tgz
tar xvfz zcs-patch-*.tgz
cd zcs-patch-*
sudo ./installPatch.sh
sudo su - zimbra
zmmailboxdctl restart
zmcontrol restart
exit

No comments:

Post a Comment