How to Install Zimbra Mail Server on CentOS 7

Zimbra Collaboration Suite (ZCS) is a collaborative software suite that includes a mail & chat server with a web client.

Zimbra Collaboration Suite (ZCS) is a collaborative software suite that includes a mail & chat server with a web client. Zimbra is developed and maintained by Synacor. Zimbra is available in two editions one as Zimbra Network Edition (Commercial version) and the other as Zimbra Open Source Edition (Community supported version).

In this tutorial, we are installing Zimbra Mail Server on CentOS 7. To configure a Zimbra mail server, we will install Zimbra Collaboration Suite software and then we will configure Zimbra mail server.

We will install and set up a Zimbra Mail Server on Alibaba Cloud Elastic Compute Service (ECS) with CentOS 7installed.

Zimbra Collaboration Suite (ZCS) is a large software with a lots of features and functionality. We are only covering the installation and initial configuration of Zimbra Collaboration Suite (ZCS). However, For more information you can refer to Zimbra documentation.

Prerequisites

  • You must have Alibaba Cloud Elastic Compute Service (ECS) activated and verified your valid payment method. If you are a new user, you can get $300 – $1200 worth in Alibaba Cloud credits for your new account. If you don’t know how to setup your ECS instance, you can refer to this tutorial or quick-start guide.
  • domain name registered from Alibaba Cloud. If you have already registered a domain from Alibaba Cloud or any other host, you can update its domain nameserver records.
  • Domain name must be pointed to your Alibaba Cloud ECS’s IP address
  • Access to VNC console in your Alibaba Cloud or SSH client installed in your PC
  • Set up your server’s hostname and create a user with root privileges.

Environment Specification:

We have configured a CentOS 7 virtual machine with following specifications.

  • CPU – 3.4 Ghz (2 cores)
  • Memory – 2 GB
  • Storage – 40 GB
  • Operating System – CentOS 7.6
  • Hostname – webmail.example.com
  • IP Address – 192.168.116.6/24

Verify DNS Settings for Zimbra Mail Server:

Connect with webmail.example.com using ssh as root user.

Before configuring a private mail server, it is mandatory to have an Authoritative DNS Server. This DNS server is required to answer MX (Mail Exchange) queries, so the emails should be redirected to our Zimbra mail server.

If you have a DNS Server then you can add MX and A record of webmail.example.com therein.

To verify that we have configured our DNS settings for our Zimbra mail server correctly, we can use dig command.

[[email protected] ~]# dig -t MX example.com

; <<>> DiG 9.9.4-RedHat-9.9.4-74.el7_6.2 <<>> -t MX example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 65089
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;example.com.                   IN      MX

;; ANSWER SECTION:
example.com.            3600    IN      MX      0 webmail.example.com.

;; AUTHORITY SECTION:
example.com.            3600    IN      NS      dns-01.example.com.

;; ADDITIONAL SECTION:
webmail.example.com.  3600    IN      A       192.168.116.6

;; Query time: 1 msec
;; SERVER: 192.168.116.6#53(192.168.116.6)
;; WHEN: Mon Aug 12 18:02:16 PKT 2019
;; MSG SIZE  rcvd: 96

From the above output, we can see that, the MX and A records for our Zimbra mail server has been defined correctly.

Besides DNS settings, we are required to include it in our local DNS resolver.

[[email protected] ~]# echo "192.168.116.6 webmail.example.com webmail" >> /etc/hosts

Stop Existing MTA service on the server:

By default CentOS 7 installs Postfix as MTA (Mail Transfer Agent). We need to disable it before moving on to Zimbra Collaboartion Suite (ZCS) installation.

Stop and disable postfix.service.

[[email protected] ~]# systemctl stop postfix.service 
[[email protected] ~]# systemctl disable postfix.service 
Removed symlink /etc/systemd/system/multi-user.target.wants/postfix.service. 
[[email protected] ~]# systemctl mask postfix.service 
Created symlink from /etc/systemd/system/postfix.service to /dev/null.

Installing Prerequisite Packages for Zimbra Mail Server:

Install required software packages using yum command.

[[email protected] ~]# yum install -y libidn gmp perl perl-core ntpl nmap sudo sysstat sqlite libaio libstdc++ wget unzip
...
Installed:
nmap.x86_64 2:6.40-16.el7               perl.x86_64 4:5.16.3-294.el7_6
perl-core.x86_64 0:5.16.3-294.el7_6     sysstat.x86_64 0:10.1.5-17.el7_6.1
unzip.x86_64 0:6.0-19.el7               wget.x86_64 0:1.14-18.el7_6.1
Dependency Installed:
gdbm-devel.x86_64 0:1.10-8.el7
glibc-devel.x86_64 0:2.17-260.el7_6.6
glibc-headers.x86_64 0:2.17-260.el7_6.6
kernel-headers.x86_64 0:3.10.0-957.27.2.el7
libdb-devel.x86_64 0:5.3.21-24.el7
libpcap.x86_64 14:1.5.3-11.el7
lm_sensors-libs.x86_64 0:3.4.0-6.20160601gitf9185e5.el7
nmap-ncat.x86_64 2:6.40-16.el7
perl-Archive-Extract.noarch 1:0.68-3.el7
perl-Archive-Tar.noarch 0:1.92-2.el7
perl-B-Lint.noarch 0:1.17-3.el7
perl-CGI.noarch 0:3.63-4.el7
perl-CPAN.noarch 0:1.9800-294.el7_6
perl-CPAN-Meta.noarch 0:2.120921-5.el7
perl-CPAN-Meta-Requirements.noarch 0:2.122-7.el7
perl-CPAN-Meta-YAML.noarch 0:0.008-14.el7
perl-CPANPLUS.noarch 0:0.91.38-4.el7
perl-CPANPLUS-Dist-Build.noarch 0:0.70-3.el7
perl-Carp.noarch 0:1.26-244.el7
perl-Compress-Raw-Bzip2.x86_64 0:2.061-3.el7
perl-Compress-Raw-Zlib.x86_64 1:2.061-4.el7
perl-DBD-SQLite.x86_64 0:1.39-3.el7
perl-DBI.x86_64 0:1.627-4.el7
perl-DBIx-Simple.noarch 0:1.35-7.el7
perl-DB_File.x86_64 0:1.830-6.el7
perl-Data-Dumper.x86_64 0:2.145-3.el7
perl-Digest.noarch 0:1.17-245.el7
perl-Digest-MD5.x86_64 0:2.52-3.el7
perl-Digest-SHA.x86_64 1:5.85-4.el7
perl-Encode.x86_64 0:2.51-7.el7
perl-Env.noarch 0:1.04-2.el7
perl-Exporter.noarch 0:5.68-3.el7
perl-ExtUtils-CBuilder.noarch 1:0.28.2.6-294.el7_6
perl-ExtUtils-Embed.noarch 0:1.30-294.el7_6
perl-ExtUtils-Install.noarch 0:1.58-294.el7_6
perl-ExtUtils-MakeMaker.noarch 0:6.68-3.el7
perl-ExtUtils-Manifest.noarch 0:1.61-244.el7
perl-ExtUtils-ParseXS.noarch 1:3.18-3.el7
perl-FCGI.x86_64 1:0.74-8.el7
perl-File-CheckTree.noarch 0:4.42-3.el7
perl-File-Fetch.noarch 0:0.42-2.el7
perl-File-Path.noarch 0:2.09-2.el7
perl-File-Temp.noarch 0:0.23.01-3.el7
perl-Filter.x86_64 0:1.49-3.el7
perl-Getopt-Long.noarch 0:2.40-3.el7
perl-HTTP-Tiny.noarch 0:0.033-3.el7
perl-IO-Compress.noarch 0:2.061-2.el7
perl-IO-Zlib.noarch 1:1.10-294.el7_6
perl-IPC-Cmd.noarch 1:0.80-4.el7
perl-JSON-PP.noarch 0:2.27202-2.el7
perl-Locale-Codes.noarch 0:3.26-2.el7
perl-Locale-Maketext.noarch 0:1.23-3.el7
perl-Locale-Maketext-Simple.noarch 1:0.21-294.el7_6
perl-Log-Message.noarch 1:0.08-3.el7
perl-Log-Message-Simple.noarch 0:0.10-2.el7
perl-Module-Build.noarch 2:0.40.05-2.el7
perl-Module-CoreList.noarch 1:2.76.02-294.el7_6
perl-Module-Load.noarch 1:0.24-3.el7
perl-Module-Load-Conditional.noarch 0:0.54-3.el7
perl-Module-Loaded.noarch 1:0.08-294.el7_6
perl-Module-Metadata.noarch 0:1.000018-2.el7
perl-Module-Pluggable.noarch 1:4.8-3.el7
perl-Net-Daemon.noarch 0:0.48-5.el7
perl-Object-Accessor.noarch 1:0.42-294.el7_6
perl-Package-Constants.noarch 1:0.02-294.el7_6
perl-Params-Check.noarch 1:0.38-2.el7
perl-Parse-CPAN-Meta.noarch 1:1.4404-5.el7
perl-PathTools.x86_64 0:3.40-5.el7
perl-Perl-OSType.noarch 0:1.003-3.el7
perl-PlRPC.noarch 0:0.2020-14.el7
perl-Pod-Checker.noarch 0:1.60-2.el7
perl-Pod-Escapes.noarch 1:1.04-294.el7_6
perl-Pod-LaTeX.noarch 0:0.61-2.el7
perl-Pod-Parser.noarch 0:1.61-2.el7
perl-Pod-Perldoc.noarch 0:3.20-4.el7
perl-Pod-Simple.noarch 1:3.28-4.el7
perl-Pod-Usage.noarch 0:1.63-3.el7
perl-Scalar-List-Utils.x86_64 0:1.27-248.el7
perl-Socket.x86_64 0:2.010-4.el7
perl-Storable.x86_64 0:2.45-3.el7
perl-Sys-Syslog.x86_64 0:0.33-3.el7
perl-Term-UI.noarch 0:0.36-2.el7
perl-Test-Harness.noarch 0:3.28-3.el7
perl-Test-Simple.noarch 0:0.98-243.el7
perl-Text-ParseWords.noarch 0:3.29-4.el7
perl-Text-Soundex.x86_64 0:3.04-4.el7
perl-Text-Unidecode.noarch 0:0.04-20.el7
perl-Thread-Queue.noarch 0:3.02-2.el7
perl-Time-HiRes.x86_64 4:1.9725-3.el7
perl-Time-Local.noarch 0:1.2300-2.el7
perl-Time-Piece.x86_64 0:1.20.1-294.el7_6
perl-Version-Requirements.noarch 0:0.101022-244.el7
perl-autodie.noarch 0:2.16-2.el7
perl-constant.noarch 0:1.27-2.el7
perl-devel.x86_64 4:5.16.3-294.el7_6
perl-libs.x86_64 4:5.16.3-294.el7_6
perl-local-lib.noarch 0:1.008010-4.el7
perl-macros.x86_64 4:5.16.3-294.el7_6
perl-parent.noarch 1:0.225-244.el7
perl-podlators.noarch 0:2.5.1-3.el7
perl-threads.x86_64 0:1.87-4.el7
perl-threads-shared.x86_64 0:1.43-6.el7
perl-version.x86_64 3:0.99.07-3.el7
pyparsing.noarch 0:1.5.6-9.el7
systemtap-sdt-devel.x86_64 0:3.3-3.el7
Updated:
libstdc++.x86_64 0:4.8.5-36.el7_6.2
Dependency Updated:
glibc.x86_64 0:2.17-260.el7_6.6     glibc-common.x86_64 0:2.17-260.el7_6.6
Complete!

Installing Zimbra Mail Server on CentOS 7:

Zimbra Collaboration Suite – Open Source Edition can be downloaded from Zimbra Official download page.

[[email protected] ~]# cd /tmp
[[email protected] tmp]# wget https://files.zimbra.com/downloads/8.8.12_GA/zcs-8.8.12_GA_3794.RHEL7_64.20190329045002.tgz
--2019-08-14 13:40:21--  https://files.zimbra.com/downloads/8.8.12_GA/zcs-8.8.12_GA_3794.RHEL7_64.20190329045002.tgz
Resolving files.zimbra.com (files.zimbra.com)... 13.35.207.223
Connecting to files.zimbra.com (files.zimbra.com)|13.35.207.223|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 254480139 (243M) [binary/octet-stream]
Saving to: âzcs-8.8.12_GA_3794.RHEL7_64.20190329045002.tgzâ
100%[======================================>] 254,480,139  594KB/s   in 9m 47s
2019-08-14 13:50:10 (423 KB/s) - âzcs-8.8.12_GA_3794.RHEL7_64.20190329045002.tgzâ saved [254480139/254480139]

Extract downloaded TAR file.

[[email protected] tmp]# tar xvf zcs-8.8.12_GA_3794.RHEL7_64.20190329045002.tgz
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/bin/
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/bin/checkLicense.pl
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/bin/checkService.pl
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/bin/get_plat_tag.sh
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/bin/zmValidateLdap.pl
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/bin/zmdbintegrityreport
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/data/
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/data/versions-init.sql
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/docs/
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/docs/en_US/
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/docs/en_US/admin.pdf
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/docs/en_US/Fedora Server Config.pdf
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/docs/en_US/Import_Wizard_Outlook.pdf
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/docs/en_US/Migration_Exch_Admin.pdf
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/docs/en_US/MigrationWizard_Domino.pdf
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/docs/en_US/MigrationWizard.pdf
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/docs/en_US/OSmultiserverinstall.pdf
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/docs/en_US/quick_start.pdf
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/docs/en_US/RNZCSO_2005Beta.pdf
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/docs/en_US/User Instructions for ZCS Import Wizard.pdf
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/docs/en_US/Zimbra iCalendar Migration Guide.pdf
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/docs/en_US/zimbra_user_guide.pdf
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/docs/zcl.txt
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/lib/
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/lib/jars/
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-apache-8.8.12_GA_3794.RHEL7_64-20190329045002.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-core-8.8.12_GA_3794.RHEL7_64-20190329045002.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-dnscache-8.8.12_GA_3794.RHEL7_64-20190329045002.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-imapd-8.8.12_GA_3794.RHEL7_64-20190329045002.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-ldap-8.8.12_GA_3794.RHEL7_64-20190329045002.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-logger-8.8.12_GA_3794.RHEL7_64-20190329045002.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-mta-8.8.12_GA_3794.RHEL7_64-20190329045002.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-proxy-8.8.12_GA_3794.RHEL7_64-20190329045002.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-snmp-8.8.12_GA_3794.RHEL7_64-20190329045002.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-spell-8.8.12_GA_3794.RHEL7_64-20190329045002.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-store-8.8.12_GA_3794.RHEL7_64-20190329045002.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-common-core-jar-8.8.12.1553847719-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-common-core-libs-8.8.12.1552967720-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-common-mbox-conf-8.8.12.1552977309-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-common-mbox-conf-attrs-8.8.12.1537865556-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-common-mbox-conf-msgs-8.8.12.1539627833-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-common-mbox-conf-rights-8.8.12.1487328490-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-common-mbox-db-8.8.12.1552977309-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-common-mbox-docs-8.8.12.1552677786-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-common-mbox-native-lib-8.8.12.1521095672-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-mbox-admin-console-war-8.8.12.1545138776-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-mbox-conf-8.8.12.1539627833-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-mbox-service-8.8.12.1553847719-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-mbox-store-libs-8.8.12.1552967720-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-mbox-war-8.8.12.1553847719-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-mbox-webclient-war-8.8.12.1552555301-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/packages/zimbra-timezone-data-1.0.1+1545139791-1.r7.x86_64.rpm
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/util/
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/util/modules/
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/util/modules/getconfig.sh
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/util/modules/packages.sh
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/util/modules/postinstall.sh
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/util/addUser.sh
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/util/globals.sh
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/util/utilfunc.sh
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/README.txt
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/install.sh
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/readme_binary_en_US.txt
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/.BUILD_TYPE
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/.BUILD_NUM
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/.BUILD_PLATFORM
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/.BUILD_RELEASE_NO
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/.BUILD_RELEASE_CANDIDATE
zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/.BUILD_TIME_STAMP

Go to Zimbra Collaboration Suite setup directory and start installation.

[[email protected] tmp]# cd zcs-8.8.12_GA_3794.RHEL7_64.20190329045002/
[[email protected] zcs-8.8.12_GA_3794.RHEL7_64.20190329045002]# ./install.sh
Operations logged to /tmp/install.log.3sG1LbQb
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
----------------------------------------------------------------------
Do you agree with the terms of the software license agreement? [N] Y
Use Zimbra's package repository [Y] Y
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)
Select the packages to install
Install zimbra-ldap [Y] Y
Install zimbra-logger [Y] Y
Install zimbra-mta [Y] Y
Install zimbra-dnscache [Y] N
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
Install zimbra-drive [Y] Y
Install zimbra-imapd (BETA - for evaluation only) [N] N
Install zimbra-chat [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-snmp
zimbra-store
zimbra-apache
zimbra-spell
zimbra-memcached
zimbra-proxy
zimbra-drive
zimbra-patch
zimbra-mta-patch
zimbra-proxy-patch
zimbra-chat
The system will be modified.  Continue? [N] Y
Beginning Installation - see /tmp/install.log.3sG1LbQb for details...
zimbra-core-components will be downloaded and installed.
zimbra-timezone-data will be installed.
zimbra-common-core-jar will be installed.
zimbra-common-mbox-conf will be installed.
zimbra-common-mbox-conf-attrs will be installed.
zimbra-common-mbox-conf-msgs will be installed.
zimbra-common-mbox-conf-rights will be installed.
zimbra-common-mbox-db will be installed.
zimbra-common-mbox-docs will be installed.
zimbra-common-mbox-native-lib will be installed.
zimbra-common-core-libs will be installed.
zimbra-core will be installed.
zimbra-ldap-components will be downloaded and installed.
zimbra-ldap will be installed.
zimbra-logger will be installed.
zimbra-mta-components will be downloaded and installed.
zimbra-mta will be installed.
zimbra-snmp-components will be downloaded and installed.
zimbra-snmp will be installed.
zimbra-store-components will be downloaded and installed.
zimbra-jetty-distribution will be downloaded and installed.
zimbra-mbox-conf will be installed.
zimbra-mbox-war will be installed.
zimbra-mbox-service will be installed.
zimbra-mbox-webclient-war will be installed.
zimbra-mbox-admin-console-war will be installed.
zimbra-mbox-store-libs will be installed.
zimbra-store will be installed.
zimbra-apache-components will be downloaded and installed.
zimbra-apache will be installed.
zimbra-spell-components will be downloaded and installed.
zimbra-spell will be installed.
zimbra-memcached will be downloaded and installed.
zimbra-proxy-components will be downloaded and installed.
zimbra-proxy will be installed.
zimbra-drive will be downloaded and installed (later).
zimbra-patch will be downloaded and installed (later).
zimbra-mta-patch will be downloaded and installed.
zimbra-proxy-patch will be downloaded and installed (later).
zimbra-chat will be downloaded and installed (later).
Downloading packages (11):
zimbra-core-components
zimbra-ldap-components
zimbra-mta-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
Installing local packages (25):
zimbra-timezone-data
zimbra-common-core-jar
zimbra-common-mbox-conf
zimbra-common-mbox-conf-attrs
zimbra-common-mbox-conf-msgs
zimbra-common-mbox-conf-rights
zimbra-common-mbox-db
zimbra-common-mbox-docs
zimbra-common-mbox-native-lib
zimbra-common-core-libs
zimbra-core
zimbra-ldap
zimbra-logger
zimbra-mta
zimbra-snmp
zimbra-mbox-conf
zimbra-mbox-war
zimbra-mbox-service
zimbra-mbox-webclient-war
zimbra-mbox-admin-console-war
zimbra-mbox-store-libs
zimbra-store
zimbra-apache
zimbra-spell
zimbra-proxy
...done
Installing extra packages (4):
zimbra-drive
zimbra-patch
zimbra-proxy-patch
zimbra-chat
...done
Running Post Installation Configuration:
Operations logged to /tmp/zmsetup.20190817-132218.log
Installing LDAP configuration database...done.
Setting defaults...sh: /sbin/ifconfig: No such file or directory
DNS ERROR resolving MX for webmail.example.com
It is suggested that the domain name have an MX record configured in DNS
Change domain name? [Yes] Yes
Create domain: [webmail.example.com] example.com
MX: webmail.example.com (192.168.116.6)
Interface: 127.0.0.1
Interface: ::1
Interface: 192.168.116.6
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-snmp:                             Enabled
6) 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:                            webmail.example.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://webmail.example.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
7) zimbra-spell:                            Enabled
8) zimbra-proxy:                            Enabled
9) Default Class of Service Configuration:
s) Save config to file
x) Expand menu
q) Quit
Address unconfigured (**) items  (? - help)

You can see that, the Admin user password is not set for Zimbra mail server.

To set Zimbra’s Admin password press 6 and <ENTER>.

Address unconfigured (**) items  (? - help) 6
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:                               webmail.example.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://webmail.example.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]

Now press 4 and <ENTER>. At the password prompt set a new password of Zimbra Admin user.

Select, or 'r' for previous menu [r] 4
Password for [email protected] (min 6 characters): [sICqjq5vZM] ahmer1234
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:                               webmail.example.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://webmail.example.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]

Press r and <ENTER> to go back to previous menu.

Select, or 'r' for previous menu [r] r
Main menu
1) Common Configuration:
2) zimbra-ldap:                             Enabled
3) zimbra-logger:                           Enabled
4) zimbra-mta:                              Enabled
5) zimbra-snmp:                             Enabled
6) zimbra-store:                            Enabled
7) zimbra-spell:                            Enabled
8) zimbra-proxy:                            Enabled
9) 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)

Press a and <ENTER> to apply changes.

*** 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.15688]
Saving config in /opt/zimbra/config.15688...done.
The system will be modified - continue? [No] Yes
Operations logged to /tmp/zmsetup.20190817-132218.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 webmail.example.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 webmail.example.com...done.
Setting zimbraFeatureTasksEnabled=TRUE...done.
Setting zimbraFeatureBriefcasesEnabled=TRUE...done.
Checking current setting of zimbraReverseProxyAvailableLookupTargets
Querying LDAP for other mailstores
Searching LDAP for reverseProxyLookupTargets...done.
Adding webmail.example.com to zimbraReverseProxyAvailableLookupTargets
Updating zimbraLDAPSchemaVersion to version '1537783098'
Setting TimeZone Preference...done.
Disabling strict server name enforcement on webmail.example.com...done.
Initializing mta config...done.
Setting services on webmail.example.com...done.
Adding webmail.example.com to zimbraMailHostPool in default COS...done.
Creating domain example.com...done.
Setting default domain name...done.
Creating domain example.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 webmail.example.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.
com_zextras_drive_open...done.
com_zextras_chat_open...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_RHEL7_64)
The ADMIN EMAIL ADDRESS created ([email protected])
Notify Zimbra of your installation? [Yes] No
Notifying Zimbra of installation via http://www.zimbra.com/cgi-bin/notify.cgi?VER=8.8.12_GA_3794_RHEL7_64&[email protected]
ERROR: Notification failed
Checking if the NG started running...done.
Setting up zimbra crontab...done.
Moving /tmp/zmsetup.20190817-132218.log to /opt/zimbra/log
Configuration complete - press return to exit

Zimbra Collaboration Suite has been installed on our CentOS 7 server.

 

Zimbra Collaboration Suite – Post Installation Configurations:

Zimbra Collaboration Suite creates an operating system user zimbra with disabled password. Zimbra Collaborative Suite connects with this user using ssh keys. Therefore, we need to configure ssh keys as follows.

[[email protected] ~]# sudo -u zimbra -i
[[email protected] ~]$ zmupdateauthkeys
Updating keys for webmail.example.com
Fetching key for webmail.example.com
Updating keys for webmail.example.com
Updating /opt/zimbra/.ssh/authorized_keys

In order to display server statistics on Administration console, the syslog configuration files must be modified as follows.

Connect as root user and execute following command.

[[email protected] ~]# /opt/zimbra/libexec/zmsyslogsetup
updateSyslog: Updating /etc/rsyslog.conf...done.

Enabling automatic scanning of email attachments using ClamAV antivirus.

[[email protected] ~]# su - zimbra
[[email protected] ~]$ zmprov mcf zimbraAttachmentsScanURL clam://localhost:3310/
[[email protected] ~]$ zmprov mcf zimbraAttachmentsScanEnabled TRUE

Allow Zimbra Admin Panel’s service ports in Linux firewall.

[[email protected] ~]# firewall-cmd --permanent --add-port=7071/tcp
success
[[email protected] ~]# firewall-cmd --reload
success

Open URL https://webmail.example.com:7071/ in a client’s browser.

Note: Browser displays a warning due to self signed SSL certificate, you must ignore it to continue.

Zimbra Mail Server Admin Login

Login with Admin user credentials.

Zimbra Mail Server Admin Panel Dashboard

You are now at the dashboard of Zimbra admin panel, many options are available here. You can explore it by your own. We are now adding an email account here.

Click on Add Account.

Zimbra Mail Server Add Email Account

Add information about Email User Account and click on Finish.

Zimbra Mail Server Admin Panel Dashboard

Again at the dashboard of Zimbra admin console, Click on Logout.

Allow Zimbra Web mail service port in Linux firewall.

[[email protected] ~]# firewall-cmd --permanent --add-service=https
success
[[email protected] ~]# firewall-cmd --reload
success

Browse URL https://webmail.example.com using a client’s browser.

Zimbra Mail Server webmail Login

Login using newly created email user.

Zimbra Mail Server webmail Account

We have been login as a user.

Similarly, we can configure desktop based email clients like Outlook, Thunderbird, etc. for our users. But, before doing that, we required to allow relevant services in our CentOS 7 server’s firewall.

[[email protected] ~]# firewall-cmd --permanent --add-service={pop3,pop3s,imap,imaps,smtp,smtps}
success
[[email protected] ~]# firewall-cmd --reload
success

We have successfully installed Zimbra Collaboration Suite to configure a mail and chat server on CentOS 7.

Subscribe to our newsletter
Sign up here to get the latest news, updates and special offers delivered directly to your inbox.
You can unsubscribe at any time
Comments

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More