We are committed to provide service 24 X 7

Deals, Shopping, Training, Tools

Learn how to – Install Zimbra 8.8 on Ubuntu 20.04/18.04/16.04

Learn how to – Install Zimbra 8.8 on Ubuntu 20.04/18.04/16.04.

In this blog post, I’ll take you through the installation of the latest Zimbra Collaboration 8.8.x Community Edition release on an Ubuntu 20.04/18.04/16.04 LTS server. These steps are only for single server installation, for multi-server installation of Zimbra collaboration, see our guide Zimbra Multi-Server Installation on CentOS 7

For Zimbra 9 installation, refer to the guide in below link:

To use this guide, you should have the following;

  • Installed Ubuntu 20.04/18.04/16.04 server
  • SSH access to the server – user with sudo privileges
  • DNS server – Dnsmasq or Bind DNS server should be fine

The recommended system requirements for a Zimbra server which support up to 50 users are:

  • 4 vCPU or more depending on your available resources
  • 8 GB RAM or more
  • 50 GB available disk space
  • DNS Server

In this setup we’ll use the following DNS information for Zimbra 9 setup.

FQDN Name DNS Record Type Value
zimbra.ownyourlife.com.ng A 192.168.100.10
ownyourlife.com.ng MX zimbra.ownyourlife.com.ng

Follow steps below to install and configure Zimbra Collaboration server on your Ubuntu 20.04/18.04/16.04

Step 1: Install and Configure Bind DNS server

Zimbra requires A and MX records configured in your DNS server. If you don’t have an active DNS server we’ve simplified the process of setting up DNS server using Bind. The process is scripted for easy usage by the user.

Update your system before performing any other operation.

# Ubuntu
sudo apt update && sudo apt -y full-upgrade
[ -f /var/run/reboot-required ] && sudo reboot -f

Also install git required to download setup automation scripts

sudo apt install git -y

Option 1: Using Bind DNS server

We have bash scripts available on Github repository that you can use to configure Bind DNS server. Use git to clone the repo to your system.

cd ~/
git clone https://github.com/jmutai/scripts.git

Navigate to scripts/zimbra folder.

cd scripts/zimbra/

Run the script called zimbra_bind_setup_ubuntu.sh to configure Bind DNS server on your system.

$ ./zimbra_bind_setup_ubuntu.sh

Begin installation and configuration by pressing <Enter>

Internet connectivity is required for packages installation...

Press key enter to continue <Enter>

Input your Zimbra server Domain, short version of hostname, and its IP address. These details are used to configure DNS server.

Input Zimbra Base Domain. E.g example.com : ownyourlife.com.ng
Input Zimbra Mail Server hostname (first part of FQDN). E.g mail : zimbra
Input Zimbra Server IP Address : 192.168.100.10

Test DNS server works

$ dig A zimbra.ownyourlife.com.ng @127.0.0.1 +short
192.168.100.10

$ dig MX ownyourlife.com.ng @127.0.0.1 +short
zimbra.ownyourlife.com.ng.

You can now use configured DNS server in your Zimbra installation – A and MX records are the only configurations required for the setup.

Option 2: Using Dnsmasq as your DNS server

If you’re interested in using Dnsmasq as opposed to Bind, follow this guide Install and Configure Dnsmasq on Ubuntu for the installation process.

Set Zimbra Domain, DNS server forwarder, and the MX records.

$ sudo vim /etc/dnsmasq.conf
server=8.8.8.8
listen-address=127.0.0.1
domain=example.com   # Define domain
mx-host=example.com,mail.example.com,0  # Set MX record for the domain, preference is 0
address=/mail.example.com/192.168.100.10 # Send example.com to 192.168.100.10

Set server hostname:

sudo hostnamectl set-hostname mail.example.com

Add Server name and IP address to /etc/hosts file.

$ sudo vim /etc/hosts
192.168.100.10 mail.example.com

Restart dnsmasq  service and test.

sudo systemctl restart dnsmasq

Dig for an A record of Zimbra Server.

$ dig A zimbra.ownyourlife.com.ng
 ; <<>> DiG 9.11.3-1ubuntu1.3-Ubuntu <<>> A zimbra.ownyourlife.com.ng @127.0.0.1
 ;; global options: +cmd
 ;; Got answer:
 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 14888
 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
 ;; OPT PSEUDOSECTION:
 ; EDNS: version: 0, flags:; udp: 4096
 ;; QUESTION SECTION:
 ;zimbra.ownyourlife.com.ng.    IN  A
 ;; ANSWER SECTION:
 zimbra.ownyourlife.com.ng. 0    IN  A   192.168.100.10
 ;; Query time: 0 msec
 ;; SERVER: 127.0.0.1#53(127.0.0.1)
 ;; WHEN: Mon Apr 01 21:58:39 CEST 2019
 ;; MSG SIZE  rcvd: 73

Also, query MX record of your domain. Should return Zimbra server IP Address.

$ dig MX ownyourlife.com.ng
 ; <<>> DiG 9.11.3-1ubuntu1.3-Ubuntu <<>> MX zimbra.ownyourlife.com.ng @127.0.0.1
 ;; global options: +cmd
 ;; Got answer:
 ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 25343
 ;; flags: qr aa rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 2
 ;; OPT PSEUDOSECTION:
 ; EDNS: version: 0, flags:; udp: 4096
 ;; QUESTION SECTION:
 ;zimbra.ownyourlife.com.ng.    IN  MX
 ;; ANSWER SECTION:
 zimbra.ownyourlife.com.ng. 0    IN  MX  0 zimbra.ownyourlife.com.ng.
 ;; ADDITIONAL SECTION:
 zimbra.ownyourlife.com.ng. 0    IN  A   192.168.100.10
 ;; SERVER: 127.0.0.1#53(127.0.0.1)
 ;; WHEN: Mon Apr 01 21:59:40 CEST 2019
 ;; MSG SIZE  rcvd: 117

Now that we have both A record and MX, let’s begin the installation of Zimbra 8.8 on Ubuntu 20.04/18.04/16.04.

Step 2: Install dependency packages

Ensure git is installed.

sudo apt install git

Clone repository scripts from Github repo

cd ~
git clone https://github.com/jmutai/scripts.git

Enter the directory and install required dependency packages.

cd scripts/zimbra/
./zimbra_bind_setup_ubuntu.sh

Input Zimbra domain, hostname(short version), and IP address of the server.

Input Zimbra Base Domain. E.g example.com : ownyourlife.com.ng
Input Zimbra Mail Server hostname (first part of FQDN). E.g mail : zimbra
Input Zimbra Server IP Address : 192.168.100.10

Step 3: Download Zimbra Collaboration Open Source Edition

As of this writing, the latest release of Zimbra is 8.8.15. Let’s download the file to our local server.

# Ubuntu 20.04
cd ~/
wget https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_4179.UBUNTU20_64.20211118033954.tgz

# Ubuntu 18.04
cd ~/
wget https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_3869.UBUNTU18_64.20190918004220.tgz

# Ubuntu 16.04
cd ~/
wget https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_3869.UBUNTU16_64.20190918004220.tgz

Extract the file once it’s downloaded.

tar xvf zcs-8.8.15_GA_*.tgz

Change to zcs-* directory,

cd zcs*/

Step 4: Install Zimbra Collaboration on Ubuntu 20.04/18.04/16.04

We are ready to start the installation of Zimbra Collaboration Open Source Edition on Ubuntu 20.04/18.04/16.04.

Run the installer script – This is an all in one server installation.

$ sudo ./install.sh
Operations logged to /tmp/install.log.DM7y8xw8
Checking for existing installation...
    zimbra-drive...NOT FOUND
    zimbra-imapd...NOT FOUND
    zimbra-patch...NOT FOUND
    zimbra-mta-patch...NOT FOUND
    zimbra-proxy-patch...NOT FOUND
    zimbra-license-tools...NOT FOUND
    zimbra-license-extension...NOT FOUND
    zimbra-network-store...NOT FOUND
    zimbra-network-modules-ng...NOT FOUND
    zimbra-chat...NOT FOUND
    zimbra-talk...NOT FOUND
    zimbra-ldap...NOT FOUND
    zimbra-logger...NOT FOUND
    zimbra-mta...NOT FOUND
    zimbra-dnscache...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-core...NOT FOUND
----------------------------------------------------------------------
PLEASE READ THIS AGREEMENT CAREFULLY BEFORE USING THE SOFTWARE.
SYNACOR, INC. ("SYNACOR") 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 this Zimbra Collaboration Suite Software:
https://www.zimbra.com/license/zimbra-public-eula-2-6.html
----------------------------------------------------------------------

1. Type “Y” to accept license terms and start the installation.

Do you agree with the terms of the software license agreement? [N] Y

2. Agree to use Zimbra package repository.

Use Zimbra's package repository [Y] Y
Warning: apt-key output should not be parsed (stdout is not a terminal)
Importing Zimbra GPG key
Configuring package repository
Checking for installable packages
Found zimbra-core (local)
Found zimbra-ldap (local)
Found zimbra-logger (local)
Found zimbra-mta (local)
Found zimbra-dnscache (local)
Found zimbra-snmp (local)
Found zimbra-store (local)
Found zimbra-apache (local)
Found zimbra-spell (local)
Found zimbra-memcached (repo)
Found zimbra-proxy (local)
Found zimbra-drive (repo)
Found zimbra-imapd (local)
Found zimbra-patch (repo)
Found zimbra-mta-patch (repo)
Found zimbra-proxy-patch (repo)

3. Select the packages to install

Install zimbra-ldap [Y]
Install zimbra-logger [Y]
Install zimbra-mta [Y] 
Install zimbra-dnscache [Y] N
Install zimbra-snmp [Y] 
Install zimbra-store [Y] 
Install zimbra-apache [Y] 
Install zimbra-spell [Y] 
Install zimbra-memcached [Y] 
Install zimbra-proxy [Y] 
Install zimbra-drive [Y] 
Install zimbra-imapd (BETA - for evaluation only) [N] 
Install zimbra-chat [Y] 

Checking required space for zimbra-core
Checking space for zimbra-store
Checking required packages for zimbra-store
zimbra-store package check complete.

Installing:
    zimbra-core
    zimbra-ldap
    zimbra-logger
    zimbra-mta
    zimbra-dnscache
    zimbra-snmp
    zimbra-store
    zimbra-apache
    zimbra-spell
    zimbra-memcached
    zimbra-proxy
    zimbra-drive
    zimbra-patch
    zimbra-mta-patch
    zimbra-proxy-patch
    zimbra-chat

4. Agree to system modification.

The system will be modified.  Continue? [N] Y

Download and installation of Zimbra packages will start.

Downloading packages (12):
   zimbra-core-components
   zimbra-ldap-components
   zimbra-mta-components
   zimbra-dnscache-components
   zimbra-snmp-components
   zimbra-store-components
   zimbra-jetty-distribution
   zimbra-apache-components
   zimbra-spell-components
   zimbra-memcached
   zimbra-proxy-components
   zimbra-mta-patch
     ...done

Removing /opt/zimbra
Removing zimbra crontab entry...done.
Cleaning up zimbra init scripts...done.
Cleaning up /etc/security/limits.conf...done.

Finished removing Zimbra Collaboration Server.

Installing repo packages (12):
   zimbra-core-components
   zimbra-ldap-components
   zimbra-mta-components
   zimbra-dnscache-components
   zimbra-snmp-components
   zimbra-store-components
   zimbra-jetty-distribution
   zimbra-apache-components
   zimbra-spell-components
   zimbra-memcached
   zimbra-proxy-components
   zimbra-mta-patch
      ...

Set Admin account password – 7>4

7) zimbra-store:                            Enabled                       
        +Create Admin User:                    yes                           
        +Admin user to create:                 admin@zimbra.ownyourlife.com.ng
******* +Admin Password                        UNSET                         
        +Anti-virus quarantine user:           virus-quarantine.pynmkvgruh@zimbra.ownyourlife.com.ng
        +Enable automated spam training:       yes                           
        +Spam training user:                   spam.ab7ufdyr@zimbra.ownyourlife.com.ng
        +Non-spam(Ham) training user:          ham.l4s_ar23@zimbra.ownyourlife.com.ng
        +SMTP host:                            zimbra.ownyourlife.com.ng  
        +Web server HTTP port:                 8080                          
        +Web server HTTPS port:                8443                          
        +Web server mode:                      https                         
        +IMAP server port:                     7143                          
        +IMAP server SSL port:                 7993                          
        +POP server port:                      7110                          
        +POP server SSL port:                  7995                          
        +Use spell check server:               yes                           
        +Spell server URL:                     //zimbra.ownyourlife.com.ng:7780/aspell.php
        +Enable version update checks:         TRUE                          
        +Enable version update notifications:  TRUE                          
        +Version update notification email:    admin@zimbra.ownyourlife.com.ng
        +Version update source email:          admin@zimbra.ownyourlife.com.ng
        +Install mailstore (service webapp):   yes                           
        +Install UI (zimbra,zimbraAdmin webapps): yes 
.....
Password for admin@zimbra.ownyourlife.com.ng (min 6 characters): [8441mra12P] MyAdminPassw0rd                      

Complete configuration and apply.

Main menu
 1) Common Configuration:                                                  
    2) zimbra-ldap:                             Enabled                       
    3) zimbra-logger:                           Enabled                       
    4) zimbra-mta:                              Enabled                       
    5) zimbra-dnscache:                         Enabled                       
    6) zimbra-snmp:                             Enabled                       
    7) zimbra-store:                            Enabled                       
    8) zimbra-spell:                            Enabled                       
    9) zimbra-proxy:                            Enabled                       
   10) Default Class of Service Configuration:                                
    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] <Enter>  
 Save config in file: [/opt/zimbra/config.24171] 
 Saving config in /opt/zimbra/config.24171…done.
 The system will be modified - continue? [No] Yes

The installer script will start to configure Zimbra server. When done you should get output like below.

Starting servers...done.
Installing common zimlets...
	com_zimbra_cert_manager...done.
	com_zimbra_adminversioncheck...done.
	com_zimbra_attachcontacts...done.
	com_zimbra_viewmail...done.
	com_zimbra_attachmail...done.
	com_zimbra_url...done.
	com_zimbra_webex...done.
	com_zimbra_bulkprovision...done.
	com_zimbra_proxy_config...done.
	com_zimbra_mailarchive...done.
	com_zextras_chat_open...done.
	com_zimbra_ymemoticons...done.
	com_zimbra_clientuploader...done.
	com_zimbra_date...done.
	com_zimbra_srchhighlighter...done.
	com_zimbra_tooltip...done.
	com_zextras_drive_open...done.
	com_zimbra_phone...done.
	com_zimbra_email...done.
Finished installing common zimlets.
Restarting mailboxd...done.
Creating galsync account for default domain...done.

You have the option of notifying Zimbra of your installation.
This helps us to track the uptake of the Zimbra Collaboration Server.
The only information that will be transmitted is:
	The VERSION of zcs installed (8.8.12_GA_3794_UBUNTU18_64)
	The ADMIN EMAIL ADDRESS created (admin@zimbra.ownyourlife.com.ng)

Notify Zimbra of your installation? [Yes]
Checking if the NG started running...done. 
Setting up zimbra crontab...done.

Moving /tmp/zmsetup.20190401-221739.log to /opt/zimbra/log
Configuration complete - press return to exit 

Confirm Zimbra services status.

$ sudo su - zimbra -c "zmcontrol status"
Host zimbra.ownyourlife.com.ng
     amavis                  Running
     antispam                Running
     dnscache                Running
     ldap                    Running
     logger                  Running
     mailbox                 Running
     memcached               Running
     mta                     Running
     opendkim                Running
     proxy                   Running
     service webapp          Running
     snmp                    Running
     spell                   Running
     stats                   Stopped
     zimbra webapp           Running
     zimbraAdmin webapp      Running
     zimlet webapp           Running
     zmconfigd               Running

Step 5: Accessing Zimbra Admin Dashboard

If you have an active firewall, configure it for Zimbra using our guide below:

Access Admin interface using https://ipaddres_or_hostname:7071

Login with Username admin and Password configured earlier.

Step 6: Monitoring Zimbra Server

For Zimbra server monitoring follow our guide on how to Monitor Zimbra Server with Grafana, Influxdb and Telegraf

Other Zimbra guides:

Cart

Your Cart is Empty

Back To Shop