Learn how to – Install Zimbra Zextras Carbonio CE on Ubuntu 20.04.
Welcome to this guide on how to install the Zextras Carbonio CE e-mail and collaboration suite on Ubuntu 20.04. Zextras Carbonio CE is a free and open-source email and collaboration solution that offers the following features:
- Chat and Video chats – It offers top-notch features required for individual chats, group video meetings as well as video conferences.
- Complete mail server – equipped with anti-spam and anti-virus software and also includes a native mobile application
- Real-time backup and restore – It offers advanced disaster recovery tools and also supports backup on external storage.
- EAS support – It offers native synchronization with Android, iOS, and outlook.
- Advanced storage management – This includes HSM compression, de-duplication, and object storage support.
- Advanced Webmail – It makes it easy to manage E-mails, Contacts, and Calendar Essentials, that are also shared across the domain.
- File Management System – which includes collaborative editing and document sharing
- Secure authentication – It supports Two Factor Authentication, QR Code e,t,c
The Zextras Carbonio CE e-mail and collaboration suite is preferred because:
- It is simple to install as Linux packages and ready to use out of the box
- It is flexible to cover the needs of today’s collaborative workplaces
- It focuses on Data Sovereignty and Privacy
The Zextras Carbonio CE e-mail and collaboration suite is available in English as the main language through other languages supported are; Spanish, Dutch, Portuguese (PT, BR), French, Italian, Turkish, Thai, Simplified Chinese, Japanese, Indonesian, Russian, Hindi, and German.
By following this guide to the end, you should be able to install the Zextras Carbonio CE e-mail and collaboration suite on Ubuntu 20.04.
System Requirements.
To be able to install the Zextras Carbonio CE e-mail and collaboration suite you need the following:
- Ubuntu 20.04 – 64-bit installed
- CPU – Intel/AMD 64-bit CPU 1.5 GHz
- Memory – 8 GB
- Disk space (Operating system and Carbonio CE) – 40 GB
Prepare your Server.
It is recommended that you set a static IP on your system. Begin by switching to the root user:
sudo su -
Install vim text editor
apt update
apt install tmux vim
Now edit the below file to assign an IP address to the system.
vim /etc/netplan/50-cloud-init.yaml
In the file, set the Ip address appropriately:
#This file is generated from information provided by
# the datasource. Changes to it will not persist across an instance.
# To disable cloud-init's network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
ethernets:
enp0s1:
addresses:
- 192.168.205.11/24
gateway4: 192.168.205.1
nameservers:
addresses:
- [1.1.1.1]
version: 2
Remember to replace the correct interface name and IP address for the device. Apply the changes made:
# netplan apply
Next set a hostname for the system. Here you need a valid FQDN as hostname and an entry in the /etc/hosts file. Set the system hostname as below:
hostnamectl set-hostname mail.ownyourlife.com.ng
Now update the /etc/hosts file.
# vim /etc/hosts
192.168.205.11 mail.ownyourlife.com.ng mail
Step 1 – Install and Configure the DNS server (Optional)
For this guide, we will install the dnsmasq
DNS server which is simple and convenient for this guide. If you have an external DNS server, configure and use it instead.
apt install dnsmasq
Now proceed and make the below configurations for the domain (MX and A record) and the FQDN (A record).
# vim /etc/dnsmasq.conf
server=1.1.1.1
mx-host=ownyourlife.com.ng,mail.ownyourlife.com.ng,50
host-record=ownyourlife.com.ng,192.168.205.11
host-record=mail.ownyourlife.com.ng,192.168.205.11
Stop and disable the systemd-resolved service.
systemctl disable systemd-resolved
systemctl stop systemd-resolved
Restart the dnsmasq service:
systemctl restart dnsmasq
Enable the service to run automatically on boot:
systemctl enable dnsmasq
Verify if the MX resolves:
# dig mx ownyourlife.com.ng
; <<>> DiG 9.16.1-Ubuntu <<>> mx ownyourlife.com.ng
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10965
;; flags: qr aa rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 2
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;ownyourlife.com.ng. IN MX
;; ANSWER SECTION:
ownyourlife.com.ng. 0 IN MX 50 mail.ownyourlife.com.ng.
;; ADDITIONAL SECTION:
mail.ownyourlife.com.ng. 0 IN A 192.168.205.11
;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Mon Mar 28 09:52:43 UTC 2022
;; MSG SIZE rcvd: 94
Also, verify if the DNS entry of type A resolves:
# dig mail.ownyourlife.com.ng
; <<>> DiG 9.16.1-Ubuntu <<>> mail.ownyourlife.com.ng
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40491
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;mail.ownyourlife.com.ng. IN A
;; ANSWER SECTION:
mail.ownyourlife.com.ng. 0 IN A 192.168.205.11
;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Mon Mar 28 09:53:15 UTC 2022
;; MSG SIZE rcvd: 64
That is it, both the MX and A DNS entries resolve.
Step 2 – Configure the Zextras Carbonio CE Repository
To be able to add the Zextras Carbonio CE Repository on Ubuntu 20.04, you need to fill out the form on the Zextras product page after which, you will receive a form with the URL of the repository and the GPG key of the repository.
Add the repository using the provided instructions and proceed as below:
apt update && apt upgrade -y
Step 3 – Install Zextras Carbonio CE on Ubuntu 20.04
With the repository added to your system, proceed and install Carbonio CE with the command:
apt install carbonio-ce
Once the installation is complete, start the configuration by executing the command:
carbonio-bootstrap
This command will enable the required service and create an admin account without a password. Press y to continue:
----------------------------------
| Starting Carbonio Bootstrap... |
----------------------------------
--------------------------------------------------------------------------------
Zextras may collect a minimal set of public-facing technical information about
your use of Carbonio CE. This data should not contain personal identifiable
information, but in case they are subject to Zextras' Privacy Policy
[https://www.zextras.com].
...
Checking for port conflicts
Main menu
1) Common Configuration:
2) carbonio-directory-server: Enabled
3) carbonio-logger: Enabled
4) carbonio-mta: Enabled
5) carbonio-appserver: Enabled
6) carbonio-proxy: Enabled
s) Save config to file
x) Expand menu
q) Quit
*** CONFIGURATION COMPLETE - press 'y' to apply configuration
Select from menu, or press 'y' to apply config (? - help) y
Once complete. create a password for the created user as below:
su - zextras
zmprov setpassword zextras@ownyourlife.com.ng <newpassword>
Set a strong password that meets the good security criteria. There are two users here:
- zextras – the unix account of the administrator and must be used to carry out administrative tasks from the command line.
- zextras@ownyourlife.com.ng – default administrator user to be used to access the Admin UI and manage Carbonio CE from the web interface.
Step 4 – Access the Zextras Carbonio CE Web UI.
Once installed and configured as above, proceed and access the Carbonio CE web client using the URL https://mail.ownyourlife.com.ng
On successful login, you will see the below dashboard.
Here, you can manage the mail, calendar, contacts e.t.c
The admin client can be accessed using https://mail.ownyourlife.com.ng:7071/carbonioAdmin
On this dashboard, you get to manage/configure the Carbonio CE server.
For example, monitor running services:
Step 5 – Secure Zextras Carbonio CE with Let’s Encrypt.
Let’s Encrypt is used to issue free trusted SSL certificates to domain names. To be able to proceed and secure Zextras Carbonio CE with Let’s Encrypt, you need to have a Fully Qualified Domain name.
Proceed and install the required packages:
apt install software-properties-common
add-apt-repository universe
add-apt-repository ppa:certbot/certbot
apt update
apt install certbot
Now generate the certificate using Certbot:
certbot certonly -d mail.ownyourlife.com.ng
Proceed as below, and provide the required details to generate SSL certificates
How would you like to authenticate with the ACME CA?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: Spin up a temporary webserver (standalone)
2: Place files in webroot directory (webroot)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 1
...
Proceed and generate the certificates. Now you will have the generated certificates at /etc/letsencrypt/live. You will have the privkey.pem, cert.pem, and chain.pem.
Copy the privkey. pem to the Carbonio directory:
export DOMAIN="mail.ownyourlife.com.ng"
cp /etc/letsencrypt/live/$DOMAIN/privkey.pem /opt/zextras/ssl/carbonio/commercial/commercial.key
Remember to substitute mail.ownyourlife.com.ng in the commands appropriately.
Proceed and deploy the SSL certificates:
cp /etc/letsencrypt/live/$DOMAIN/cert.pem /tmp
cp /etc/letsencrypt/live/$DOMAIN/chain.pem /tmp
Now edit the /tmp/chain.pem
and remove the last certificate before you proceed as below.
Download the ISRG Root X1 chain as below:
wget -O /tmp/ISRG-X1.pem https://letsencrypt.org/certs/isrgrootx1.pem.txt
cat /tmp/ISRG-X1.pem >> /tmp/chain.pem
Set the correct permissions:
chown -R zextras:zextras /opt/zextras/ssl/carbonio/commercial/commercial.key
Verify if the certificate is okay:
# su - zextras -c 'zmcertmgr verifycrt comm /opt/zextras/ssl/carbonio/commercial/commercial.key /tmp/cert.pem /tmp/chain.pem'
** Verifying '/tmp/cert.pem' against '/opt/zextras/ssl/carbonio/commercial/commercial.key'
Certificate '/tmp/cert.pem' and private key '/opt/zextras/ssl/carbonio/commercial/commercial.key' match.
** Verifying '/tmp/cert.pem' against '/tmp/chain.pem'
Valid certificate chain: /tmp/cert.pem: OK
Now deploy the certificate with the command:
# su - zextras -c 'zmcertmgr deploycrt comm /tmp/cert.pem /tmp/chain.pem'
....
** Copying '/opt/zextras/ssl/carbonio/ca/ca.pem' to '/opt/zextras/conf/ca/ca.pem'
** Creating CA hash symlink 'e2eeaa7a.0' -> 'ca.pem'
** Creating /opt/zextras/conf/ca/commercial_ca_1.crt
** Creating CA hash symlink '8d33f237.0' -> 'commercial_ca_1.crt'
** Creating /opt/zextras/conf/ca/commercial_ca_2.crt
** Creating CA hash symlink '4042bcee.0' -> 'commercial_ca_2.crt'
Restart the services:
su - zextras -c 'zmcontrol restart'
Now access the Carbonio CE page:
Voila!
We have successfully installed and configured the Zextras Carbonio CE e-mail and collaboration suite on Ubuntu 20.04. Now enjoy the open-source email and collaboration solution.
Related posts:
- How To Install Zimbra Collaboration on Ubuntu
- Install Zimbra 9 Mail Server on Rocky Linux 8|AlmaLinux 8|RHEL 8
- Best Open Source Collaboration & Groupware Software Solutions
Leave a Reply
You must be logged in to post a comment.