Learn how to – Install Zimbra 9 Mail Server on Rocky Linux 8|AlmaLinux 8|RHEL 8.
Zimbra is an open-source Synacor product used to collaborate, email chat, calendar, chat as well as video conferencing. Zimbra comes in two editions:
- Free open-source edition.
- Enterprise Edition/Network Edition with a 60-days free trial.
During the installation, Zimbra automatically installs the below packages:
- Nginx webserver to serve the admin console and webmail. It will also be used as an IMAP/POP3 proxy.
- MariaDB database
- Zimbra-drive: cloud storage.
- Zimbra-talk for group messaging and video conferencing with screen sharing and file sharing functionality.
- mailboxd: Its own developed IMAP/POP3 server.
- zimbra-chat: text chat.
- Jetty: web application server that runs Zimbra software.
- Postfix SMTP server
- Lucene: open-source full-featured text and search engine
- Apache JSieve: email message filter
- LibreOffice for high fidelity document preview
- OpenDKIM for DKIM signing and verification
- SpamAssassin for anti-spam
- unbound: lightweight and fast DNS resolver.
The latest release Zimbra 9, comes with amazing features such as:
- A modern and responsive UI -users are able to toggle between the modern and classic UI. It also allows users to move seamlessly between desktop, mobile, and tablet browsers with a consistent email and collaboration experience.
- Customization – it is highly customizable to meet the user’s requirements.
- Easy Upgrade, No Migration Needed – It is easy to migrate to Zimbra 9 with no data migration required.
- Improved Security, Privacy & Data Sovereignty
- Extensibility – It offers out-of-the-box integrations with Slack, Zoom and Dropbox, and many others.
This guide seeks to demonstrate how the Zimbra 9 Mail Server can be installed and configured on Rocky Linux 8|AlmaLinux 8|RHEL 8.
System Requirements
Your system is required to meet the below specifications:
- A fresh Rocky Linux 8|AlmaLinux 8|RHEL 8 without any mail, databases, LDAP, DNS, or HTTP servers up and running.
- Minimum of 8GB of RAM.
- Intel/AMD w/ PassMark CPU Mark > 7,000 (e.g., Dual Intel Xeon E5-2407 @ 2.2GHz = 7,303)
- Not less than 10GB free on /opt
- A Fully Qualified Domain Name(FQDN) for your Zimbra server
- An external DNS server with both A and MX valid records to point to your Zimbra mail server IP Address.
- Set timezone and NTP
Step 1 – Update your system
Ensure that all the packages are updated to their latest available versions.
sudo yum update -y
sudo yum upgrade -y
For the new updates to take effect, it is highly recommended you restart your server.
sudo reboot
Set the correct timezone for your Server and NTP
sudo yum -y install chrony
sudo timedatectl set-timezone Africa/Nairobi
sudo chronyc sources
Configure A record and MX DNS records for your Zimbra Server:
- A record – mail.ownyourlife.com.ng points to 192.168.205.2
- MX for ownyourlife.com.ng is handled by mail.ownyourlife.com.ng
Step 2 – Zimbra server Preparation
Install the EPEL repo and the required packages on Rocky Linux 8|AlmaLinux 8|RHEL 8.
sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo yum -y install wget screen git
We will first download and use the script below to automatically configure the /etc/hosts, hostname, and local DNS using BIND and installs dependencies required by Zimbra
screen -S install-zimbra
cd ~/
git clone https://github.com/jmutai/scripts.git
Navigate to the file.
cd scripts/zimbra/
The screen command is used for background processes. This can be used when SSH access is lost, one can reconnect and check processes using the screen -x
command.
Start the Zimbra automatic configuration by installing the required packages.
sudo ./zimbra_install_prereqs_rhel.sh
Proceed as below:
Complete!
[INFO] : Configuring Firewall
success
success
usage: see firewall-cmd man page
firewall-cmd: error: unrecognized arguments: -add-port 8443/tcp
success
Input Zimbra Base Domain. E.g example.com : ownyourlife.com.ng
Input Zimbra Mail Server hostname (first part of FQDN). E.g mail : mail
Please insert your IP Address : 192.168.205.2
....
[INFO] : Disable mail services if active
Input your timezone value, example Africa/Nairobi: Africa/Nairobi
Now, run the below script to configure Bind DNS server.
sudo ./zimbra_bind_setup_rhel.sh
Proceed as below.
Press key enter
[INFO] : Configuring Firewall & Selinux
Redirecting to /bin/systemctl stop firewalld.service
Redirecting to /bin/systemctl stop iptables.service
Failed to stop iptables.service: Unit iptables.service not loaded.
Redirecting to /bin/systemctl stop ip6tables.service
Failed to stop ip6tables.service: Unit ip6tables.service not loaded.
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Failed to disable unit: Unit file iptables.service does not exist.
Failed to disable unit: Unit file ip6tables.service does not exist.
......
Complete!
Input Zimbra Base Domain. E.g example.com : ownyourlife.com.ng
Input Zimbra Mail Server hostname (first part of FQDN). E.g mail: mail
Input Zimbra Server IP Address : 192.168.205.2
........
Once complete, verify if the IP is resolving:
$ dig A mail.ownyourlife.com.ng
; <<>> DiG 9.11.26-RedHat-9.11.26-6.el8 <<>> A mail.ownyourlife.com.ng
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62667
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
; COOKIE: dee3d6f31fd9ad3f4029c99161f27aa0dff52db3e46b7072 (good)
;; QUESTION SECTION:
;mail.ownyourlife.com.ng. IN A
;; ANSWER SECTION:
mail.ownyourlife.com.ng. 86400 IN A 192.168.205.2
;; AUTHORITY SECTION:
ownyourlife.com.ng. 86400 IN NS ns1.ownyourlife.com.ng.
;; ADDITIONAL SECTION:
ns1.ownyourlife.com.ng. 86400 IN A 192.168.205.2
;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Jan 27 05:57:36 EST 2022
;; MSG SIZE rcvd: 133
Also, verify that the MX records are resolving:
$ dig MX ownyourlife.com.ng
; <<>> DiG 9.11.26-RedHat-9.11.26-6.el8 <<>> MX ownyourlife.com.ng
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62575
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 3
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
; COOKIE: 2a5cc7d70703223271640a8061f27ac6c02a1e75e9228dcc (good)
;; QUESTION SECTION:
;ownyourlife.com.ng. IN MX
;; ANSWER SECTION:
ownyourlife.com.ng. 86400 IN MX 0 mail.ownyourlife.com.ng.
;; AUTHORITY SECTION:
ownyourlife.com.ng. 86400 IN NS ns1.ownyourlife.com.ng.
;; ADDITIONAL SECTION:
mail.ownyourlife.com.ng. 86400 IN A 192.168.205.2
ns1.ownyourlife.com.ng. 86400 IN A 192.168.205.2
;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Jan 27 05:58:14 EST 2022
;; MSG SIZE rcvd: 149
Step 4 – Download Zimbra 9 on Rocky Linux 8|AlmaLinux 8|RHEL 8
This guide provides several methods on how to Download Zimbra 9.
Option 1 – Download Zimbra 9 from the Official page
The first option is to pull the Network Edition with a 60-days free trial from the official Zimbra downloads page. Remember to obtain the free trial license key.
Alternatively, you can pull the file as shown below.
##On RHEL 8
wget https://files.zimbra.com/downloads/9.0.0_GA/zcs-NETWORK-9.0.0_GA_3954.RHEL8_64.20200629045300.tgz
##On Rocky Linux 8|AlmaLinux 8
wget https://files.zimbra.com/downloads/9.0.0_BETA/Rocky_Linux_8/zcs-NETWORK-9.0.0_BETA_1014.RHEL8_64.20220326065507.tgz
Option 2 – Download Zimbra 9 from Zextras
Zextras also provides the Zimbra 9 Open source Edition, to be able to download it, you are required to register on the Zextras page.
The download link will be sent to your email address. Use it to download Zimbra 9 open-source.
Step 5 – Install Zimbra 9 on Rocky Linux 8|AlmaLinux 8|RHEL 8
Once downloaded, extract the archive and navigate into the directory.
tar -zxvf zcs-NETWORK-9*.tgz
cd zcs-NETWORK*/
Start Zimbra 9 installation as below.
sudo ./install.sh
Agree to the License terms.
----------------------------------------------------------------------
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
Select the packages to install but remember, not to install the zimbra-imapd and zimbra-dnscache
Use Zimbra's package repository [Y] y
.....
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-convertd [Y] y
Install zimbra-proxy [Y] y
Install zimbra-archiving [N] y
Install zimbra-imapd (BETA - for evaluation only) [N] n
Install zimbra-network-modules-ng [Y] y
Install zimbra-chat [Y] yInstall zimbra-connect [Y] y
.......
The system will be modified. Continue? [N] y
Configure your domain name as below.
DNS ERROR resolving MX for mail.ownyourlife.com.ng
It is suggested that the domain name have an MX record configured in DNS
Change domain name? [Yes] yes
Create domain: [mail.ownyourlife.com.ng] ownyourlife.com.ng
Set the password for the admin account, select 6, and proceed.
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: admin@ownyourlife.com.ng
******* +Admin Password UNSET
+Anti-virus quarantine user: virus-quarantine.lk3wzlgfo@ownyourlife.com.ng
+Enable automated spam training: yes
........
Address unconfigured (**) items (? - help) 6
Now create a password for the store admin user and set the License file.
Store configuration
1) Status: Enabled
2) Create Admin User: yes
3) Admin user to create: admin@ownyourlife.com.ng
** 4) Admin Password UNSET
5) Anti-virus quarantine user: virus-quarantine.lk3wzlgfo@ownyourlife.com.ng
.......
Select, or 'r' for previous menu [r] 4
Password for admin@ownyourlife.com.ng (min 6 characters): [Oup7z6cSJ] SecretPassw0rd
Select, or 'r' for previous menu [r] 25
Enter the name of the file that contains the license: path/to/file
After the password and license have been set, return to the previous menu using r
Select, or 'r' for previous menu [r] r
Now complete the Zimbra installation as below.
*** 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.15548]
Saving config in /opt/zimbra/config.15548...done.
The system will be modified - continue? [No] yes
Operations logged to /tmp/zmsetup.20220127-075011.log
.....
Proceed as below.
Notify Zimbra of your installation? [Yes] yes
....
Moving /tmp/zmsetup.20220127-075011.log to /opt/zimbra/log
Configuration complete - press return to exit Press Enter
Check the status of Zimbra.
$ sudo su - zimbra -c "zmcontrol status"
Host mail.ownyourlife.com.ng
amavis Running
antispam Running
antivirus Running
ldap Running
logger Running
mailbox Running
memcached Running
mta Running
opendkim Running
proxy Running
service webapp Running
snmp Running
spell Running
stats Running
zimbra webapp Running
zimbraAdmin webapp Running
zimlet webapp Running
zmconfigd Running
Verify the installed version.
$ sudo su - zimbra -c "zmcontrol -v"
Release 9.0.0_BETA_1014.RHEL8_64_20220326065507 RHEL8_64 NETWORK edition, Patch 9.0.0_P24.1.
You can restart the server in case of anything.
sudo su - zimbra -c "zmcontrol restart"
Step 6 – Access the Zimbra 9 Server Web UI
Once installed as above, the Zimbra 9 server can be accessed via a browser using the URL https://IP_Address or https://Domain_name
You will see the below login screen.
On successful login, you will see the below Zimbra dashboard.
Here, you can receive, send messages and chat using Zimbra. To configure and manage the Zimbra server, go to the Admin console accessible using the URL https://domain_name:7071 or https://IP_address:7071
Log in using your created admin user and password. You should see the interface below.
Click on Add Account to link to new email addresses.
Provide the required details and click finish. Once added, the new account can be viewed under the manage tab.
You also monitor your server as below.
That is it! We have successfully installed and configured the Zimbra 9 Mail Server on Rocky Linux 8|AlmaLinux 8|RHEL 8. I hope this was helpful.
- Secure Zimbra Server with Let’s Encrypt SSL Certificate
- Install Zimbra Mail Server on CentOS 8 | RHEL 8
- Monitor Zimbra Server with Grafana, Influxdb and Telegraf
- How To Restore Zimbra LDAP database from Backup
Leave a Reply
You must be logged in to post a comment.