Thursday, October 20, 2016

Mail Server - Install Zimbra Collaboration Suite 8.7 in Ubuntu 14.04 LTS

Install Zimbra Collaboration Suite 8.7 in Ubuntu 14.04 LTS


Zimbra collaboration suite, shortly ZCS, is a free, open source software suite that can be used for messaging and collaboration. It comes with two editions, open source edition which is free to use, and network edition which is commercial version, consists of some closed-source components. Zimbra supports Emails, Calendar, and contacts, and document sharing. For ore details, visit the official website, link given at the end of this article, to know more about Zimbra.
This tutorial describes how to install Zimbra collaboration suite in Ubuntu 14.04 LTS server. For the purpose of this guide, I will be using the two test boxes, running with Ubuntu 16.04 LTS and Ubuntu 14.04 LTS. Here is the details of each test box.
Zimbra server:
  • Operating System : Ubuntu 14.04 LTS
  • Hostname : zimbra.ostechnix.lan
  • IP address : 192.168.1.105/24
DNS server:
  • Operating system : Ubuntu 16.04 LTS
  • Hostname : pri.ostechnix.lan
  • IP address : 192.168.1.200/24
You should use separate systems for Zimbra and DNS servers. Here is the minimum requirement for Zimbra deployment.
  • Quad core or higher configuration CPU
  • 8GB RAM or more
  • 50GB hard disk
  • Fast Internet connectivity
  • A perfect DNS configuration
  • Firewall should be disabled
Let us get started.

First things first

Before installing Zimbra, you need to do the following prerequisites steps.
First of all, update the Ubuntu server:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
Install necessary dependencies:
sudo apt-get install build-essential
Edit /etc/hosts/ file, and add FQDN (fully qualified domain name) of your Ubuntu server as shown below.
sudo nano /etc/hosts
192.168.1.105 zimbra.ostechnix.lan zimbra
sk@ubuntuserver: ~_001
Save and close the file.
Then, we must add the DNS server IP address in your Ubuntu server’s network configuration file.
To do so, edit /etc/network/interfaces file:
sudo nano /etc/network/interfaces
Add DNS server IP address as shown below.
dns-nameservers 192.168.1.200
sk@ubuntuserver: ~_003
Then, edit /etc/resolv.conf file, and add DNS server IP address.
sudo nano /etc/resolv.conf
nameserver 192.168.1.200
Then, add the proper MX records in your DNS server. Go to your DNS server and add the Ubuntu server details as shown below. Please note that a separate DNS server is mandatory. You shouldn’t use single system for both DNS and Zimbra servers.

Reboot your system once to take effect the saved changes.
Edit the forward and reverse zone files, and add your Zimbra server’s details.
sudo nano /etc/bind/for.ostechnix.lan
Add the following lines. Replace the IP address and FQDN with your own values.
@ IN A 192.168.1.105
zimbra.ostechnix.lan. A 192.168.1.105
zimbra.ostechnix.lan. MX 0 zimbra.ostechnix.lan.
ostechnix.lan. MX 0 zimbra.ostechnix.lan.
ostechnix@pri: ~_004
Then, open the reverse zone files and add the same lines.
sudo nano /etc/bind/rev.ostechnix.lan
@ IN A 192.168.1.105
zimbra.ostechnix.lan. A 192.168.1.105
zimbra.ostechnix.lan. MX 0 zimbra.ostechnix.lan.
ostechnix.lan. MX 0 zimbra.ostechnix.lan.
ostechnix@pri: ~_005
Save and close the file. Restart DNS service to take effect the changes.
sudo systemctl restart bind9
Go back to your Zimbra server and test the DNS server settings using command:
nslookup zimbra.ostechnix.lan
Sample output:

Server: 192.168.1.200
Address: 192.168.1.200#53

Name: zimbra.ostechnix.lan
Address: 192.168.1.105
sk@zimbra: ~_006
If you an output something like above, it’s good to go.

Install Zimbra

Go to the Zimbra download page and download the latest version using command:
As of writing this, Zimbra 8.7.0 stable version is not yet available for Ubuntu 16.04 LTS. Installing beta version in production would be a bad idea. If you still want to deploy Zimbra in Ubuntu 16.04 LTS, you can go ahead. The installation instructions are same for all versions.
Download the latest ZCS from the following location depending upon the distribution you use. As of writing this guide, the latest stable version was 8.7.
wget https://files.zimbra.com/downloads/8.7.0_GA/zcs-8.7.0_GA_1659.UBUNTU14_64.20160628202701.tgz
Once downloaded, extract it suing command:
tar xvfz zcs-*
Go to the extracted folder:
cd zcs-*
Now, start the deploying Zimbra collaboration suite using command:
sudo ./install.sh
Type “Y” and press ENTER to accept the license agreement.
Operations logged to /tmp/install.log.2JeUNWmH
Checking for existing installation...
 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
----------------------------------------------------------------------



Do you agree with the terms of the software license agreement? [N]
Install Zimbra
Install Zimbra
Zimbra installer will ask you a series of yes or no type questions throughout the installation. Just read and answer them accordingly.
Press Y to add Zimbra package repository.
Checking for installable packages

Found zimbra-core
Found zimbra-ldap
Found zimbra-logger
Found zimbra-mta
Found zimbra-dnscache
Found zimbra-snmp
Found zimbra-store
Found zimbra-apache
Found zimbra-spell
Found zimbra-memcached
Found zimbra-proxy

Use Zimbra's package repository [Y] ## Press ENTER
sk@zimbra: ~-zcs-8.7.0_GA_1659.UBUNTU14_64.20160628202701_002
Next, you need to select Zimbra Packages you want to install. The installer will display the packages one by one. Just press ENTER to install the package of your choice.
For the purpose of this tutorial, I am going to install all components.
Select the packages to install

Install zimbra-ldap [Y]

Install zimbra-logger [Y]

Install zimbra-mta [Y]

Install zimbra-dnscache [Y]

Install zimbra-snmp [Y]

Install zimbra-store [Y]

Install zimbra-apache [Y]

Install zimbra-spell [Y]

Install zimbra-memcached [Y]
Type “Y” and press ENTER to install the selected packages.
Installing:
 zimbra-core
 zimbra-ldap
 zimbra-logger
 zimbra-mta
 zimbra-dnscache
 zimbra-snmp
 zimbra-store
 zimbra-apache
 zimbra-spell
 zimbra-memcached
 zimbra-proxy

The system will be modified. Continue? [N] Y ##Type Y to install the selected packages
sk@zimbra: ~-zcs-8.7.0_GA_1659.UBUNTU14_64.20160628202701_003
The installer will start to download and install the packages .
After few minutes, the Zimbra main menu will appear.
 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 
  +Create Admin User: yes 
  +Admin user to create: admin@zimbra.ostechnix.lan 
  ******* +Admin Password UNSET 
  +Anti-virus quarantine user: virus-quarantine.mz4gvqg5@zimbra.ostechnix.lan
  +Enable automated spam training: yes 
  +Spam training user: spam.xc6cq3n8fv@zimbra.ostechnix.lan
  +Non-spam(Ham) training user: ham.3gmvpkc8w@zimbra.ostechnix.lan
  +SMTP host: zimbra.ostechnix.lan 
  +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: http://zimbra.ostechnix.lan:7780/aspell.php
  +Enable version update checks: TRUE 
  +Enable version update notifications: TRUE 
  +Version update notification email: admin@zimbra.ostechnix.lan 
  +Version update source email: admin@zimbra.ostechnix.lan 
  +Install mailstore (service webapp): yes 
  +Install UI (zimbra,zimbraAdmin webapps): yes

 8) zimbra-spell: Enabled 
 9) zimbra-proxy: Enabled 
 10) Default Class of Service Configuration: 
 s) Save config to file 
 x) Expand menu 
 q) Quit

Address unconfigured (**) items (? - help)
sk@zimbra: ~-zcs-8.7.0_GA_1659.UBUNTU14_64.20160628202701_004
As you can see in the above output, It is obvious that I didn’t set password for the Zimbra admin account. So let us configure the unconfigured items. In this case, the unconfigured item (Admin password) is available under 7thsection, i.e under Zimbra Store section. So just type number 7 to configure this item.
Address unconfigured (**) items  (? - help) 7
A sub-menu will appear which shows the unconfigured item. As you see here, the unconfigured item no is 4. So, let us 4 to address this item.
Store configuration

 1) Status: Enabled 
 2) Create Admin User: yes 
 3) Admin user to create: admin@zimbra.ostechnix.lan 
** 4) Admin Password UNSET 
 5) Anti-virus quarantine user: virus-quarantine.mz4gvqg5@zimbra.ostechnix.lan
 6) Enable automated spam training: yes 
 7) Spam training user: spam.xc6cq3n8fv@zimbra.ostechnix.lan
 8) Non-spam(Ham) training user: ham.3gmvpkc8w@zimbra.ostechnix.lan
 9) SMTP host: zimbra.ostechnix.lan 
 10) Web server HTTP port: 8080 
 11) Web server HTTPS port: 8443 
 12) Web server mode: https 
 13) IMAP server port: 7143 
 14) IMAP server SSL port: 7993 
 15) POP server port: 7110 
 16) POP server SSL port: 7995 
 17) Use spell check server: yes 
 18) Spell server URL: http://zimbra.ostechnix.lan:7780/aspell.php
 19) Enable version update checks: TRUE 
 20) Enable version update notifications: TRUE 
 21) Version update notification email: admin@zimbra.ostechnix.lan 
 22) Version update source email: admin@zimbra.ostechnix.lan 
 23) Install mailstore (service webapp): yes 
 24) Install UI (zimbra,zimbraAdmin webapps): yes

 Select, or 'r' for previous menu [r] 4
sk@zimbra: ~-zcs-8.7.0_GA_1659.UBUNTU14_64.20160628202701_006
Next, enter a password to the Zimbra admin account. Make sure the password is very strong.
Set password for the admin user. Use any strong password. Press enter to update the password.
Password for admin@zimbra.ostechnix.lan (min 6 characters): [vduf1n6p]
sk@zimbra: ~-zcs-8.7.0_GA_1659.UBUNTU14_64.20160628202701_007
Then, type “r” to return back to main menu.
Select, or 'r' for previous menu [r] r
The unconfigured item is addressed and configured now.
Type a to apply the changes, and press ENTER to save the configuration file. Finally, type yes to continue and finish the installation.
*** CONFIGURATION COMPLETE - press 'a' to apply
Select from menu, or press 'a' to apply config (? - help) a ##Type 'a' and press ENTER
Save configuration data to a file? [Yes] ## Press ENTER 
Save config in file: [/opt/zimbra/config.15814] 
Saving config in /opt/zimbra/config.15814...done.
The system will be modified - continue? [No] yes ##Type yes and press ENTER.
Congratulations!
At this stage, you will have a working Zimbra collaboration suite in your Ubuntu server.

Log in to Zimbra Admin dashboard

Open your web browser and the URL: https://IP-Address:7071/ or https://domain-name:7071
Enter the user name and password. The default username is admin, and the password is the one that you created earlier while installing Zimbra.
Zimbra Administration - Chromium_009
Here it is how Zimbra admin dashboard looks like.
Menu_012
From here, you can do all kind of administration tasks, such as creating, editing and deleting users, domains, monitoring the zimbra server, managing Email accounts, and so on.
Creating new domain
Let us create a new domain. To do so, click on the Configure -> Domain button on the left menu bar. The list of available domains, including the default domain, will be found in this section.
To create a new domain, just click on the gear button on the top right side and click New.
Menu_013
Fill up the domain details and click Finish.
Zimbra Administration - Chromium_014
Creating new users
Click Manage button on the left menu bar. Then, click on the gear button on the top right corner and select New.
Menu_015
In the next screen, Enter the user details, such as first name, last name, and click Finish.
Similarly, you can create as many users as you want. Also, you can edit the user details, or delete them from here.

Log in to Zimbra Web client

Zimbra web client is the user’s personal mailbox where users can send, receive, delete mails, organize taks, manage their calendars etc.
To access, the Zimbra web console, just type https://IP-address or https://domain-name in the address bar.
The following screen should appear. Enter the user name and its password that we created earlier from the Admin console.
Zimbra Web Client Sign In - Chromium_017
Here it is how each user’s mailbox looks like.
Zimbra: Inbox - Chromium_018
From here, the user can send, receive mails to the other users.

Remove Zimbra Collaboration Suite

Not happy with ZCS? I hope you will like it. In case you don’t want to use ZCS remove it from your Ubuntu server as shown below.
Go the Zimbra directory:
cd zcs-*
Enter the following command to completely remove it:
sudo ./install.sh -u
Finally, delete Zimbra directory:
cd ..
sudo rm -rf zcs-*
That’s all for now guys. ZCS is one of the cool and worthy collaboration platform ever I have I tested. ZCS installation, configuration, and usage is absolutely easy. Anyone can easily install it with little Linux knowledge. If you ever wanted to setup a messaging and collaboration platform for your office, give ZCS a try. You will find it worth.
Further reading:

No comments: