Installing Zimbra Email 8.6 on CentOS 7
-
Zimbra is possibly the most popular free and open source enterprise email and collaboration suite. It is mature and advanced and has, at times, been part of both the Yahoo! and VMware families. The suite has remained open source since the beginning and was one of the earliest drivers of enterprise AJAZ interface designs. Development of the suite is active and Zimbra 8.6 is the most recent release. While a major product suite, installation of Zimbra is relatively straightforward.
At this time Zimbra 8.6 officially supports CentOS (and RHEL) 7 and CentOS (and RHEL) 6, Ubuntu 14.04 and Ubuntu 12.04 (partially.) Support for SLES is being discontinued. Unlike in the past (around Zimbra 5 era) CentOS support is official and is not a technicality riding on RHEL's coattails. CentOS 7 represents the recommended installation target for Zimbra for many reasons, maturity and most up to date supported platform being key.
The Zimbra installer handles many of our tasks for us, there is little that needs to be done to prepare our environment although a few steps are needed. We will start by creating a minimal CentOS 7 server install (in my example, by cloning my minimal template on a Scale HC3 cluster.)
I use 1GB as a default, but for a large email platform likely you will want a minimum of 2GB of RAM and quite likely rather a bit more. I'll use 4GB in this example. If you have run Zimbra on CentOS 7, you will likely notice that 2GB is the absolute minimum for an idle Zimbra system.
Adding an additional block device will be common for a production installation. Putting your email store onto its own XFS block device would be advised. For a lab or test installation this would not be necessary at all. But for production, it is likely that you will want an XFS filesystem on an LVM logical volume. As this is email, it is common to have 20GB - 100GB per mailbox, so this can scale up quickly.
Now we can log in and run our installation. Take note that in our one step we need to manually edit our /etc/hosts file. We need that entry to match our
hostname
or the Zimbra installer will halt and make you fix it and run the installation program again:yum -y install perl wget nmap-ncat perl-core unzip firewalld net-tools cd /tmp wget https://files.zimbra.com/downloads/8.6.0_GA/zcs-8.6.0_GA_1153.RHEL7_64.20141215151110.tgz tar -xzvf zcs-8.6.0_GA_1153.RHEL7_64.20141215151110.tgz cd zcs-8.6.0_GA_1153.RHEL7_64.2014121515111 vi /etc/hosts #Add IP and FQDN of the local host, must match hostname firewall-cmd --zone=public --add-port=8443/tcp --permanent firewall-cmd --reload ./install.sh
And that is it. If all went well, you can point a web browser to https://your.fqnd.com:8443/ and you will log in to your email desktop!
-
The Zimbra installer is a bit of a beast. It does a ton of validations and installations for us. Thankfully it uses RPM under the hood so does not violate good practices on CentOS. For those wanting a little hand holding, here is the output of the installer:
Operations logged to /tmp/install.log.2008 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. 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-5.html Do you agree with the terms of the software license agreement? [N] y Checking for prerequisites... FOUND: NPTL FOUND: nmap-ncat-6.40-7 FOUND: sudo-1.8.6p7-16 FOUND: libidn-1.28-4 FOUND: gmp-6.0.0-12 FOUND: libaio-0.3.109-13 FOUND: libstdc++-4.8.5-4 FOUND: unzip-6.0-15 FOUND: perl-core-5.16.3-286 Checking for suggested prerequisites... FOUND: perl-5.16.3 FOUND: sysstat FOUND: sqlite Prerequisite check complete. 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 Select the packages to install Install zimbra-ldap [Y] y Install zimbra-logger [Y] y Install zimbra-mta [Y] y Install zimbra-dnscache [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 [Y] y Install zimbra-proxy [Y] 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 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 Server. Installing packages zimbra-core......zimbra-core-8.6.0_GA_1153.RHEL7_64-20141215151110.x86_64.rpm...done zimbra-ldap......zimbra-ldap-8.6.0_GA_1153.RHEL7_64-20141215151110.x86_64.rpm...done zimbra-logger......zimbra-logger-8.6.0_GA_1153.RHEL7_64-20141215151110.x86_64.rpm...done zimbra-mta......zimbra-mta-8.6.0_GA_1153.RHEL7_64-20141215151110.x86_64.rpm...done zimbra-dnscache......zimbra-dnscache-8.6.0_GA_1153.RHEL7_64-20141215151110.x86_64.rpm...done zimbra-snmp......zimbra-snmp-8.6.0_GA_1153.RHEL7_64-20141215151110.x86_64.rpm...done zimbra-store......zimbra-store-8.6.0_GA_1153.RHEL7_64-20141215151110.x86_64.rpm...done zimbra-apache......zimbra-apache-8.6.0_GA_1153.RHEL7_64-20141215151110.x86_64.rpm...done zimbra-spell......zimbra-spell-8.6.0_GA_1153.RHEL7_64-20141215151110.x86_64.rpm...done zimbra-memcached......zimbra-memcached-8.6.0_GA_1153.RHEL7_64-20141215151110.x86_64.rpm...done zimbra-proxy......zimbra-proxy-8.6.0_GA_1153.RHEL7_64-20141215151110.x86_64.rpm...done Operations logged to /tmp/zmsetup03042016-191044.log Installing LDAP configuration database...done. Setting defaults...sh: /sbin/ifconfig: No such file or directory No results returned for A lookup of mail.test.com Checked nameservers: 192.168.1.1 No results returned for AAAA lookup of mail.test.com Checked nameservers: 192.168.1.1 DNS ERROR resolving mail.test.com It is suggested that the hostname be resolvable via DNS Change hostname [Yes] No DNS ERROR resolving MX for mail.test.com It is suggested that the domain name have an MX record configured in DNS Change domain name? [Yes] No done. Checking for port conflicts sh: netstat: command not found 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: [email protected] ******* +Admin Password UNSET +Anti-virus quarantine user: [email protected] +Enable automated spam training: yes +Spam training user: [email protected] +Non-spam(Ham) training user: [email protected] +SMTP host: mail.test.com +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://mail.test.com:7780/aspell.php +Enable version update checks: TRUE +Enable version update notifications: TRUE +Version update notification email: [email protected] +Version update source email: [email protected] +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 Store configuration 1) Status: Enabled 2) Create Admin User: yes 3) Admin user to create: [email protected] ** 4) Admin Password UNSET 5) Anti-virus quarantine user: [email protected] 6) Enable automated spam training: yes 7) Spam training user: [email protected] 8) Non-spam(Ham) training user: [email protected] 9) SMTP host: mail.test.com 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://mail.test.com:7780/aspell.php 19) Enable version update checks: TRUE 20) Enable version update notifications: TRUE 21) Version update notification email: [email protected] 22) Version update source email: [email protected] 23) Install mailstore (service webapp): yes 24) Install UI (zimbra,zimbraAdmin webapps): yes Select, or 'r' for previous menu [r] 4 Password for [email protected] (min 6 characters): [uuoZlOq2L] Store configuration 1) Status: Enabled 2) Create Admin User: yes 3) Admin user to create: [email protected] 4) Admin Password set 5) Anti-virus quarantine user: [email protected] 6) Enable automated spam training: yes 7) Spam training user: [email protected] 8) Non-spam(Ham) training user: [email protected] 9) SMTP host: mail.test.com 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://mail.test.com:7780/aspell.php 19) Enable version update checks: TRUE 20) Enable version update notifications: TRUE 21) Version update notification email: [email protected] 22) Version update source email: [email protected] 23) Install mailstore (service webapp): yes 24) Install UI (zimbra,zimbraAdmin webapps): yes Select, or 'r' for previous menu [r] 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] Save config in file: [/opt/zimbra/config.11888] Saving config in /opt/zimbra/config.11888...done. The system will be modified - continue? [No] yes Operations logged to /tmp/zmsetup03042016-191044.log Setting local config values...done. Initializing core config...Setting up CA...done. Deploying CA to /opt/zimbra/conf/ca ...done. Creating SSL zimbra-store certificate...done. Creating new zimbra-ldap SSL certificate...done. Creating new zimbra-mta SSL certificate...done. Creating new zimbra-proxy SSL certificate...done. Installing mailboxd SSL certificates...done. Installing MTA SSL certificates...done. Installing LDAP SSL certificate...done. Installing Proxy SSL certificate...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 mail.test.com...done. Setting Zimbra IP Mode...done. Saving CA in ldap ...done. Saving SSL Certificate in ldap ...done. Setting spell check URL...done. Setting service ports on mail.test.com...done. Setting zimbraFeatureTasksEnabled=TRUE...done. Setting zimbraFeatureBriefcasesEnabled=TRUE...done. Setting Master DNS IP address(es)...done. Setting DNS cache tcp lookup preference...done. Setting DNS cache udp lookup preference...done. Setting DNS tcp upstream preference...done. Setting TimeZone Preference...done. Initializing mta config...done. Setting services on mail.test.com...done. Adding mail.test.com to zimbraMailHostPool in default COS...done. Creating domain mail.test.com...done. Setting default domain name...done. Creating domain mail.test.com...already exists. Creating admin account [email protected]. Creating root alias...done. Creating postmaster alias...done. Creating user [email protected]. Creating user [email protected]. Creating user [email protected]. Setting spam training and Anti-virus quarantine accounts...done. Initializing store sql database...done. Setting zimbraSmtpHostname for mail.test.com...done. Configuring SNMP...done. Setting up syslog.conf...done. Starting servers...done. Installing common zimlets... com_zimbra_adminversioncheck...done. com_zimbra_attachcontacts...done. com_zimbra_attachmail...done. com_zimbra_bulkprovision...done. com_zimbra_cert_manager...done. com_zimbra_clientuploader...done. com_zimbra_date...done. com_zimbra_email...done. com_zimbra_mailarchive...done. com_zimbra_phone...done. com_zimbra_proxy_config...done. com_zimbra_srchhighlighter...done. com_zimbra_tooltip...done. com_zimbra_url...done. com_zimbra_viewmail...done. com_zimbra_webex...done. com_zimbra_ymemoticons...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.6.0_GA_1153_RHEL7_64) The ADMIN EMAIL ADDRESS created ([email protected]) Notify Zimbra of your installation? [Yes] Notifying Zimbra of installation via http://www.zimbra.com/cgi-bin/notify.cgi?VER=8.6.0_GA_1153_RHEL7_64&[email protected] Notification complete Setting up zimbra crontab...done. Moving /tmp/zmsetup03042016-191044.log to /opt/zimbra/log Configuration complete - press return to exit
If it is not clear from the print out or from the menu, the reason that the system stops you is to force you to set the admin password. The menu option for this is: 7, 4, r, a.
-
If you want to additionally expose the web admin console:
firewall-cmd --zone=public --add-port=7071/tcp --permanent firewall-cmd --reload
https://mail.your.domain:7071/
Once you have logged into the admin console, the system wizard will step you through the installation of a certificate which will allow the MTA (Postfix) to start and the MTA cannot start error on the screen will clear.
-
-
My test install, even without DNA entries or MX entries was able to successfully send email out immediately and successfully to external systems.
-
As nice as the platform is, this comes back to why would you host email in-house?
Also is their Open Source system compatible with Outlok & ActiveSync ?
-
@dafyre said:
Also is their Open Source system compatible with Outlok & ActiveSync ?
Yes. Outlook via IMAP or ActiveSync. AS is not included but requires an external package, available from Zimbra.
But this often comes down to... why would you use Outlook when there are superior options for free?
-
@dafyre said:
As nice as the platform is, this comes back to why would you host email in-house?
Zimbra is where on premises email has a shot at being viable. Unlike on premises Exchange which incurs nearly all the cost of hosting plus loads of complexity, Zimbra removes the OS licensing cost, the per user licensing cost, the email server licensing cost, the AV and spam product licensing cost (it is included) and all of the cost and effort of managing those things which dramatically changed the equation.
For a normal shop, things like Rackspace hosted email still make way more sense, but for people on the fence or with special needs that make on premises email a need, Zimbra is far more useful than Exchange.
-
@scottalanmiller said:
@dafyre said:
Also is their Open Source system compatible with Outlok & ActiveSync ?
Yes. Outlook via IMAP or ActiveSync. AS is not included but requires an external package, available from Zimbra.
But this often comes down to... why would you use Outlook when there are superior options for free?
Despite all its problems, some of us like Outbreak -- I mean Outlook.
-
@dafyre said:
@scottalanmiller said:
@dafyre said:
Also is their Open Source system compatible with Outlok & ActiveSync ?
Yes. Outlook via IMAP or ActiveSync. AS is not included but requires an external package, available from Zimbra.
But this often comes down to... why would you use Outlook when there are superior options for free?
Despite all its problems, some of us like Outbreak -- I mean Outlook.
I see that Zimbra has their own email client as well. I may have to kick this around a little bit.
-
@dafyre said:
@dafyre said:
@scottalanmiller said:
@dafyre said:
Also is their Open Source system compatible with Outlok & ActiveSync ?
Yes. Outlook via IMAP or ActiveSync. AS is not included but requires an external package, available from Zimbra.
But this often comes down to... why would you use Outlook when there are superior options for free?
Despite all its problems, some of us like Outbreak -- I mean Outlook.
I see that Zimbra has their own email client as well. I may have to kick this around a little bit.
Yes, they added that over a decade ago now, I think.
-
@dafyre said:
@scottalanmiller said:
@dafyre said:
Also is their Open Source system compatible with Outlok & ActiveSync ?
Yes. Outlook via IMAP or ActiveSync. AS is not included but requires an external package, available from Zimbra.
But this often comes down to... why would you use Outlook when there are superior options for free?
Despite all its problems, some of us like Outbreak -- I mean Outlook.
It was 2003 when eWeek ran their article that the Zimbra web client had surpassed the Outlook fat client in looks and functionality. They did a test and the average user could not determine which was the web client and which was the fat one but were more likely to pick Zimbra as the advanced one! Thirteen years ago!
-
@scottalanmiller - all installed, had to open port for admin panel and had to install systat as a prereq, very impressed with the built in features. do you know if opensource edition has a limit on domains?
-
Open source has no limits. Limits are inherently not possibly with open source because you'd just modify the source to remove the limits
-
I always liked Zimbra and could never understand why people would use Exchange over it. The web interface was amazing in 2010 when I was running it personally.
-
@coliver said in Installing Zimbra Email 8.6 on CentOS 7:
I always liked Zimbra and could never understand why people would use Exchange over it. The web interface was amazing in 2010 when I was running it personally.
Even more dramatic going back to like 2007 or earlier.
-
Download link for 8.7.1:
https://files.zimbra.com/downloads/8.7.1_GA/zcs-8.7.1_GA_1670.RHEL7_64.20161025045328.tgz
-
@coliver said in Installing Zimbra Email 8.6 on CentOS 7:
I always liked Zimbra and could never understand why people would use Exchange over it. The web interface was amazing in 2010 when I was running it personally.
Zimbra's web GUI is amazing. I remember when we looked at going Zimbra over Exchange 2010. I had built a test VM to give it a proof of concept with a different e-mail domain. Though people liked it, they couldn't accept the death of Outlook. I was shot down by management and forced to go to Exchange 2010. There's no doubt it was great experience rolling out Exchange 2010 for the organization, but I sometimes wonder how things would be different to this day had we gone with Zimbra.
-
@NetworkNerd said in Installing Zimbra Email 8.6 on CentOS 7:
@coliver said in Installing Zimbra Email 8.6 on CentOS 7:
I always liked Zimbra and could never understand why people would use Exchange over it. The web interface was amazing in 2010 when I was running it personally.
Zimbra's web GUI is amazing. I remember when we looked at going Zimbra over Exchange 2010. I had built a test VM to give it a proof of concept with a different e-mail domain. Though people liked it, they couldn't accept the death of Outlook. I was shot down by management and forced to go to Exchange 2010. There's no doubt it was great experience rolling out Exchange 2010 for the organization, but I sometimes wonder how things would be different to this day had we gone with Zimbra.
You should have just connected Outlook to Zimbra and not even mentioned that it wasn't Exchange
-
@scottalanmiller said in Installing Zimbra Email 8.6 on CentOS 7:
@NetworkNerd said in Installing Zimbra Email 8.6 on CentOS 7:
@coliver said in Installing Zimbra Email 8.6 on CentOS 7:
I always liked Zimbra and could never understand why people would use Exchange over it. The web interface was amazing in 2010 when I was running it personally.
Zimbra's web GUI is amazing. I remember when we looked at going Zimbra over Exchange 2010. I had built a test VM to give it a proof of concept with a different e-mail domain. Though people liked it, they couldn't accept the death of Outlook. I was shot down by management and forced to go to Exchange 2010. There's no doubt it was great experience rolling out Exchange 2010 for the organization, but I sometimes wonder how things would be different to this day had we gone with Zimbra.
You should have just connected Outlook to Zimbra and not even mentioned that it wasn't Exchange
Their Outlook connector at the time didn't seem to sync properly with both Outlook and mobile devices. It didn't, at least, during my demo with the CEO.