Zextras Carbonio Community Edition (CE) is one of the solutions for Zimbra Open Source Edition users. Considering that Zimbra Open Source edition is no longer officially created by Zimbra. Indeed, we can create a Zimbra installer independently using the guidelines provided by Zimbra. One of them is created by Zextras here: https://zextras.com/zextras-build-based-on-zimbra-official-repository
In this article, I am using Ubuntu 20.04. To make it easier, here is the system that will be created:
IP Address : 192.168.1.27 Hostname (Short) : mail Domain : imanudin.web.id Hostname (FQDN) : mail.imanudin.web.id
# Hostname Configuration
Please run the following command
hostnamectl set-hostname mail.imanudin.web.id
# /etc/hosts Configuration
Adjust /etc/hosts as below :
127.0.0.1 localhost 192.168.1.27 mail.imanudin.web.id mail
# /etc/resolv.conf Configuration
rm /etc/resolv.conf
Adjust /etc/resolv.conf as below :
nameserver 127.0.0.1 nameserver 8.8.8.8 nameserver 1.1.1.1 search imanudin.web.id
# Disable sendmail and postfix services
systemctl disable --now sendmail systemctl disable --now postfix
# Disable UFW
systemctl disable --now ufw
# DNS configuration (local dns) – Optional
Local DNS is required if you don’t have active DNS records. I always install local DNS even have active DNS records. This local DNS is for internal communication only. So, if there is a problem with active DNS (production), Zextras Carbonio Community Edition (CE) can still be used for internal
apt update -y apt upgrade -y systemctl disable --now systemd-resolved.service apt install dnsmasq
Adjust /etc/dnsmasq.conf as below :
server=8.8.8.8 mx-host=imanudin.web.id,mail.imanudin.web.id,10 host-record=imanudin.web.id,192.168.1.27 host-record=mail.imanudin.web.id,192.168.1.27
Restart dnsmasq service
systemctl enable --now dnsmasq systemctl restart dnsmasq
Test DNS using host command
host -t MX imanudin.web.id host -t A mail.imanudin.web.id
The result will look like below
root@mail:~# host -t MX imanudin.web.id imanudin.web.id mail is handled by 10 mail.imanudin.web.id. root@mail:~# host -t A mail.imanudin.web.id mail.imanudin.web.id has address 192.168.1.27
# Zextras Carbonio CE Repository configuration
Please go to https://zextras.com/carbonio-community-edition/ and fill the form to get the full intruction regarding setup Zextras Carbonio CE Repository
# Install Zextras Carbonio CE
apt update apt upgrade apt install screen libpangocairo-1.0-0
Note: I always use “screen” for prevention. If you install Zextras Carbonio CE using remote install like SSH to server, I recommend you to run screen first before install Zextras Carbonio CE
apt install service-discover-server \ carbonio-directory-server \ carbonio-proxy \ carbonio-webui carbonio-files-ui \ carbonio-mta \ carbonio-appserver \ carbonio-user-management \ carbonio-files-ce carbonio-files-db \ carbonio-storages-ce \ carbonio-preview-ce \ carbonio-docs-connector-ce carbonio-docs-editor \ postgresql-12 carbonio-prometheus
# Check Carbonio CE service
systemctl status carbonio-*
Note: If any service fails, restart the service. The service that fails most often is the Carbonio Monitoring exporter. Restart that service manually
systemctl restart carbonio-prometheus-nginx-exporter.service
# Initial Configuration
carbonio-bootstrap
Just type y and click the enter button for the initialization process. Below is an example output
root@ubuntu:~# carbonio-bootstrap ---------------------------------- | 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]. As an additional condition, use of the entire software is conditional upon your acceptance that no liability whatsoever shall be attributable to Zextras except that for gross negligence or malice. Nothing in this condition detracts from the provisions of the single licenses for the same case. Should you not accept this condition you use of the software would not be permitted and your licenses would be terminated. No trademark license is granted nor implied. Trademark use, where expressly permitted, is subject to the then-current trademark policy of Zextras. [https://www.zextras.com] -------------------------------------------------------------------------------- Operations logged to /tmp/zmsetup.20230509-213603.log Bootstrap mode: new install Installing LDAP configuration database...done. Setting defaults... Querying DNS for "A" record of current hostname mail.imanudin.web.id...done. Querying DNS for "MX" record of imanudin.web.id...done. Querying DNS for "A" record of mail.imanudin.web.id...done. MX: mail.imanudin.web.id (192.168.1.27) Interface: 127.0.0.1 Interface: ::1 Interface: 192.168.1.27 Querying DNS for "A" record of mail.imanudin.web.id...done. 192.168.1.27 Querying DNS for "A" record of mail.imanudin.web.id...done. 192.168.1.27 Querying DNS for "A" record of mail.imanudin.web.id...done. 192.168.1.27 done. Checking for port conflicts Main menu 1) Common Configuration: 2) carbonio-directory-server: Enabled 3) carbonio-mta: Enabled 4) carbonio-appserver: Enabled 5) 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
# Setup Carbonio Mesh
service-discover setup-wizard
Insert IP that used (with netmask). Please insert the password for mesh secret. Below is an example output
Setup of first service-discover server instance ens160 192.168.1.27/24, fe80::20c:29ff:fee9:cd29/64 Specify the binding address for service discovery: 192.168.1.27/24 Create the cluster credentials password (will be used for setups): Type the credential password again:
To complete the installation of Carbonio Mesh, please run the command below
pending-setups -a
Insert mesh secret password that input formerly. The mesh secret password is saved at /var/lib/service-discover/password file
# Create Main DB Role and Database for Carbonio CE
su - postgres -c "psql --command=\"CREATE ROLE carbonio_adm WITH LOGIN SUPERUSER encrypted password 'DB_ADM_PWD';\""
su - postgres -c "psql --command=\"CREATE DATABASE carbonio_adm owner carbonio_adm;\""
Note: Please adjust DB_ADM_PWD with strong password
# Initial Carbonio Files Databases
Please run the following command
PGPASSWORD=DB_ADM_PWD carbonio-files-db-bootstrap carbonio_adm 127.0.0.1
Note: Please adjust DB_ADM_PWD with strong password
Below is an example output
root@ubuntu:~# PGPASSWORD=DB_ADM_PWD carbonio-files-db-bootstrap carbonio_adm 127.0.0.1 Database: 127.0.0.1:5432 user carbonio_adm Check postgres connection: OK CREATE ROLE CREATE DATABASE ==================================================== carbonio-files-db database initialized successfully! ====================================================
Restart Zextras services
su - zextras zmcontrol stop zmcontrol start
# Change Zextras admin password
Zextras Carbonio CE use zextras@domainname as Global Admin. Please change the password for that user for login
zmprov setpassword zextras@imanudin.web.id NewStrongpassword
# Test Zextras Carbonio Admin and Webmail
To access Zextras Carbonio CE, please access URL: https://ip-address for webmail and URL: https://ip-address:6071 for Admin. Login as default user zextras@imanudin.web.id. Below is some screenshot from Zextras Carbonio CE
Good luck 🙂
I found this build it works great Zimbra 10 FOSS from INTALIO
https://zintalio.com/download.html
tell what you think
Hi,
Thank you for your information. I have not tried it yet. I tried to register from the download link. However, the email instructions have not been received
Hello, very clever guy 🙂
Very big thank for your manuals!
Can you please help me with external mail warning, like you wrote about zimbra 8 🙂
Its not working in Carbonio CE 🙁 smthing changed there 🙁
Hello,
I have not tried in Carbonio CE. However, I recommend you to use PMG to get it
– https://imanudin.net/2023/02/15/proxmox-mail-gateway-how-to-add-external-warning-on-email-subject/
– https://imanudin.net/2023/02/16/adding-an-external-warning-to-email-bodies-in-proxmox-mail-gateway-a-simple-guide/
halo mas, saya sudah ikutin instuksi dari atas sampe bawah, tapi pas saya testing kirim email ke email pribadi saya, kok tidak ditermina ya?, padahal tidak ada error
Hi mas,
Pastikan port 25 outgoing dalam keadaan open agar dapat mengirim ke internet. Coba cek panduan yang ini: https://imanudin.com/2023/05/22/zextras-carbonio-community-edition-ce-pengiriman-email-ke-internet-outgoing/
Untuk terima email apakah harus dengan port 25 juga?, atau bisa diganti ya mas ?.
Soalnya port 25nya di tutup dari isp, di kasih smtp relay dari isp.
Pas di coba kirim email ke jeffri@kantor.com, emailnya masuk, lalu coba di bales ke dari email kantor tidak masuk emailnya ke mail server.
Apa smtp relay cuman bisa kirim tapi gk bisa nerima ?
Kalau biar bisa nerima email dari luar dengan port 25 yg di blok ini gimana ya mas
Terima kasih
Hi mas,
Port 25 adalah keharusan. SMTP Relay digunakan untuk menjembatani apabila port 25 outgoing ditutup. Supaya bisa terima email dari internet, bisa coba layanan asav di https://www.excellent.co.id/asav/.
Untuk artikel yang lainnya, coba cek di sini mas: https://imanudin.com/category/zextras/
Hello sir,
can you please explain how to set up the zextras carbonio ce multi server installation on ubuntu 20.04
Hi Sumit Kumar,
Please try this article (in Bahasa Indonesia): https://imanudin.com/category/zextras/
we have tried so many times but after we live the carbonio in production environment it always failed to restart the proxy and show the error of ssl certificate as well as the mailstore server automatically stops their services. Kindly do needful if possible.
Thanks
Hi,
For installing SSL certificate, you can follow this guidance: https://imanudin.com/2023/06/05/zextras-carbonio-community-edition-ce-panduan-instalasi-commercial-ssl-certificate/
Dear Sir,
I have tried your docs to install the carbonio ce but there are some problems faced by me. Such as I have not seen the proper admin panel in which only mail store list are available not all the servers ( Ldap and Proxy ). Can you please help me.
Hello Sumit,
I haven’t paid attention to that part yet. I will check on my lab
hello sir,
will we have to configure the dnsmasq service on all five nodes? or only ldap node? Kindly rply.
Hello Sumit Kumar,
Please setup only on LDAP server
Hi Iman,
Have you tried 2fa in carbonio. can you share doc if you tried already
hola amigo tengo este lio no levanta service-discover
root@mail:~# systemctl status service-discover
● service-discover.service – Service discover server for Zextras
Loaded: loaded (/lib/systemd/system/service-discover.service; enabled; vendor preset: enabled)
Active: activating (auto-restart) (Result: exit-code) since Thu 2024-11-14 21:11:02 -05; 2s ago
Docs: https://docs.zextras.com/
Process: 77338 ExecStart=/usr/bin/service-discoverd server (code=exited, status=2)
Main PID: 77338 (code=exited, status=2)
nov 14 21:11:17 mail.gadarajuno.gob.ec service-discoverd[78001]: github.com/hashicorp/consul/command/agent/agent.go:61 +0x27
nov 14 21:11:17 mail.gadarajuno.gob.ec service-discoverd[78001]: github.com/mitchellh/cli.(*CLI).Run(0xc0000da000)
nov 14 21:11:17 mail.gadarajuno.gob.ec service-discoverd[78001]: github.com/mitchellh/cli@v1.1.0/cli.go:260 +0x5f8
nov 14 21:11:17 mail.gadarajuno.gob.ec service-discoverd[78001]: main.realMain()
nov 14 21:11:17 mail.gadarajuno.gob.ec service-discoverd[78001]: github.com/hashicorp/consul/main.go:53 +0x40b
nov 14 21:11:17 mail.gadarajuno.gob.ec service-discoverd[78001]: main.main()
nov 14 21:11:17 mail.gadarajuno.gob.ec service-discoverd[78001]: github.com/hashicorp/consul/main.go:23 +0x19
nov 14 21:11:17 mail.gadarajuno.gob.ec systemd[1]: service-discover.service: Main process exited, code=exited, status=2/INVALIDARGUMENT
nov 14 21:11:17 mail.gadarajuno.gob.ec systemd[1]: service-discover.service: Failed with result ‘exit-code’.
nov 14 21:11:17 mail.gadarajuno.gob.ec systemd[1]: Failed to start Service discover server for Zextras.
Puedes ayudarme