Zimbra is an easy to use piece of unified collaboration software. Being one of the best free, open source collaboration software available, Zimbra includes email, calendaring, file sharing, activity streams, social communities and much more! Zimbra comes in two different forms: a free open source edition and a paid version.
Zimbra runs on several different distributions of Linux. This makes it stable, scalable and secure. In this article, we’ll be using CentOS, specifically version 6.5 64-bit. The minimum system requirements for Zimbra are pretty high and will require a large droplet to be created. The system requirements are:
· A CPU of 1.5GHz.
· A minimum of 3GB or RAM (recommended 4GB RAM).
· 5GB free space for software and logs.
· Additional disk space for mail storage.
During testing, we couldn’t get Zimbra to install on a $5 or $10 VPS, most likely to due to the memory limitation. We started to get lucky on the $20 VPS; the system worked well, however, 2GB is below the minimum requirements. Therefore a $40 Droplet (4GB) is recommended when deploying Zimbra in a production environment.
When giving your Droplet a hostname, you’ll need to include a full FQDN, including the domain and tld. For example, I could call the droplet mail.example.com, if my main domain name was example.com (Obviously, you don’t have to call it mail if you don’t want to)!
Once you’ve created your Droplet, login via SSH with PuTTY.
First, we need to ensure that CentOS is up to date. Therefore, we’ll run the following command:
yum update –y
Next, we need to install some pre-requisites. Since there are 12 different applications required to install Zimbra, we can handle the installation in one single command:
yum install -y gmp libidn wget nano make nc sudo sysstat libtool-ltdl glibc perl ntp
Next, we’ll need to install check if postfix is running – if it is, disable it. Since we cannot have two different mail transfer agents running, postfix must go.
service postfix status
If postfix is running, we’ll need to disable it:
service postfix stop && chkconfig postfix off
Because Zimbra is a collaboration server, it includes a fully functional mail server. This means that we must configure the DNS for our domain name for use in Zimbra. There’s a few different ways of achieving this.
The firstly and easiest method is to use the DigitalOcean DNS tab in the control panel. What this requires is three name servers to be set in your domain panel. To setup DigitalOcean DNS for your domain, head over to the DNS tab in the DO control panel. Once there, add your domain.
Once you’ve added your domain, add the following records to your DNS settings. In this example, the IP address 146.185.157.211
is used for my DigitalOcean Droplet. However, yours will be different, so set this value to your Droplet IP. The second value should point to mail.example.com (your Droplet FQDN) with a high priority (lowest number).
You should now make a note of the DigitalOcean name servers for your domain. They can be seen by the yellow NS markings in your domain DNS. Keep this information handy, as you’ll need to configure it in your CentOS installation shortly. Please remember that your changes may take up to 48 hours to propagate.
If you’re using your own DNS panel, the same method still applies, however you’ll have a different layout of control panel and different name servers. You should still make a note of the name servers, as you’ll need to configure them in your CentOS installation as above.
Next, we’ll need to visit the following URL to get a download link for the latest version of Zimbra. The version being used in this article is the 8.0.7 GA release. To find the latest version of the software, simply head over to the Zimbra website.
Once there, you’ll need to copy the link for the Red Hat and CentOS install file by right clicking and copying the link. Keep the link handy, you’ll need it next.
Now, we’ll need to download the file from the Zimbra website and store it on our Droplet. But first, we’ll need to create a folder to store it in.
mkdir zcsinstall
Next, enter that directory:
cd zcsinstall
And then fetch the file from the Zimbra website. You can use wget to achieve this. Obviously, you’ll need to place the URL you copied earlier into this command rather than using the link here.
wget http://files2.zimbra.com/downloads/8.0.7_GA/zcs-8.0.7_GA_6020.RHEL6_64.20140321160526.tgz
This will download the file from the Zimbra website, saving it into the zcsinstall folder we created.
Now we’ll need to edit the hosts file in CentOS to contain the IP address of the Droplet, the FQDN, and name of the server. We can do this by typing:
nano /etc/hosts
Once opened, the hosts file should look similar to the following:
You’ll need to edit the file to contain another row with your Droplet’s IP address, FQDN and name. The line should look like the following:
123.123.123.123 mail.example.com mail
You’ll need to ensure that you replace the above with the actual data values for your Droplet. You should also make sure that you use a tabbed space between each value. This means that you’ll have a host file looking something similar to:
Once done, press CTRL+O
and then Enter
to save. Then press CTRL+X
to return.
The next stage is to unpack the tgz file we downloaded earlier. To do this, we can execute the following command:
tar zxvf zcs-*.tgz
Next, change directory into the folder that the files were extracted into:
cd zcs-*
Finally, we can run the installer.
./install.sh --platform-override
Once the installer starts, you’ll need to accept the license agreements by pressing Y
at each license prompt. When you reach the ‘select packages to install’ section, simply press enter at each of the options which will select the default value.
You may get the following error during installation:
This error is presented by Zimbra because it’s looking for an MX record for the domain ‘subdomain.example.com’. Instead, we want it to search for an MX record for ‘example.com’. This means that we should press `Y``, and change the domain name to just ‘example.com’.
If you get a port conflict error, you may need to exit the installer and resolve the issue before continuing.
You’ll soon reach the configuration page, similar to that below. First we should choose option 3 to allow us to enter the zimbra-store section.
Address unconfigured (**) items (? – help) 3
Next, choose 3 again. This will allow us to configure the admin username and password.
Select, or 'r' for previous menu [r] 3
Create admin user: [admin@example.com] admin@example.com
Password for admin@example.com (min 6 characters): [_6ty6y8ui] password
Next, choose r to return to the previous menu.
Select, or 'r' for previous menu [r] r
Then, choose 1 to go to the common configuration section.
*** CONFIGURATION COMPLETE - press 'a' to apply
Select from menu, or press 'a' to apply config (? - help) 1
After this, choose 6 to edit the time zone.
Select, or 'r' for previous menu [r] 6
Here, you should choose the number relative to the time zone you’re in. For example, you could type 83 to get the Europe/London time zone.
Enter the number for the local timezone: [39] 83
Then choose ‘r’ to return and ‘a’ to apply the configuration. You should also choose the log the installation to a file, in case any errors arise.
Select, or 'r' for previous menu [r] r
*** 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.7622] /root/zimbra-installation.txt
Saving config in /root/zimbra-installation.txt...done.
The system will be modified - continue? [No] yes
The system will then continue the installation. Setup of Zimbra should take about 20 minutes, depending on the Droplet size you selected.
Finally, you’ll be given the option of notifying Zimbra of the installation, which allows them to track the uptake of their products. You can either type ‘yes’ or ‘no’ here, either way, this is the final step of the installation. You can make sure that the installation was successful from the final confirmation message:
Configuration complete – press return to exit
It is recommended that you reboot your Droplet.
The control panel can be easily accessed by visiting the following URL:
https://mail.example.com:7071/zimbraAdmin
If there are any issues with your installation, please comment below.
<div class=“author”>Submitted by: <a href=" http://www.benstechtips.net/go/doarticle">Ben Johnson</a></div>
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
Sign up for Infrastructure as a Newsletter.
Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
hi i got error when trying to access the hostname for zimbra
HTTP ERROR 502
Problem accessing ZCS upstream server. Cannot connect to the ZCS upstream server. Connection is refused. Possible reasons:
upstream server is unreachable upstream server is currently being upgraded upstream server is down Please contact your ZCS administrator to fix the problem.
Powered by Nginx-Zimbra://
any advice would be a great help.
when i try use an smtp tester, shown this r*****@aol.com Relay access denied how to fix this?
I have a problem: my mails appears Received: from localhost [127.0.0.1]), and thats why marked as spam. Does anyone know how to resolve it?
I get so towards the end of the install before the following error, any suggestions?!
/usr/bin/perl: symbol lookup error: /opt/zimbra/zimbramon/lib/x86_64-linux-thread-multi/auto/Socket/Socket.so: undefined symbol: Perl_Istack_sp_ptr
This comment has been deleted
Hello,
I have setup correctly, but i am getting these errors on my webpanel. screenshot : http://gyazo.com/1a9e1da89c8a7f1a7885dd1b20fd36e2
please help me regarding this.
The rest of the tutorial should work properly on Ubuntu 14.04 and Zimbra 8.6.
What part(s) of Zimbra makes that it requires 4G of memory?
@ourkollywood: You can replace the
yum
commands with:You will need to remove AppArmor as well:
The rest of the tutorial should work properly on Ubuntu 12.04.
how to work out this for Ubuntu 12.04 server? pls help.