In this guide, I am using Oracle Linux 8. However, you can adapt it for Rocky Linux 8 or AlmaLinux 8. Additionally, this guide only covers the basic installation for email usage. It does not include features such as chat, office, or file sharing. I will create a separate guide for enabling those features.
System Information
Domain : imanudin.web.id Hostname : carbonio IP Address : 192.168.1.242 Hostname (FQDN) : carbonio.imanudin.web.id
# Configure /etc/hosts
Adjust /etc/hosts as below :
127.0.0.1 localhost 192.168.1.242 carbonio.imanudin.web.id carbonio
# Configure Hostname
Please run the following command
hostnamectl set-hostname carbonio.imanudin.web.id
# Configure /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
# Configure Selinux and Firewall
sed -i s/'SELINUX='/'#SELINUX='/g /etc/selinux/config echo 'SELINUX=disabled' >> /etc/selinux/config setenforce 0 service firewalld stop service iptables stop service ip6tables stop systemctl disable firewalld systemctl disable iptables systemctl disable ip6tables
# Enable Repository
dnf config-manager --set-enabled ol8_baseos_latest dnf config-manager --set-enabled ol8_appstream dnf config-manager --set-enabled ol8_codeready_builder dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
# Install and configure DNSMasq (local DNS)
dnf install dnsutils screen dnsmasq
Please run the following command
echo "server=8.8.8.8 mx-host=imanudin.web.id,carbonio.imanudin.web.id,10 host-record=imanudin.web.id,192.168.1.242 host-record=carbonio.imanudin.web.id,192.168.1.242" > /etc/dnsmasq.d/imanudin.web.id.conf
Please open file /etc/dnsmasq.d/imanudin.web.id.conf and adjust with your system
# Restart dnsmasq service
systemctl enable --now dnsmasq systemctl restart dnsmasq
Test DNS using host command
host -t MX imanudin.web.id host -t A carbonio.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 carbonio.imanudin.web.id. root@mail:~# host -t A carbonio.imanudin.web.id mail.imanudin.web.id has address 192.168.1.242
# Configure Zextras Carbonio CE Repository
Please run the following command
cat << EOF > /etc/yum.repos.d/zextras.repo [zextras] name=zextras baseurl=https://repo.zextras.io/release/rhel8 enabled=1 repo_gpgcheck=1 gpgcheck=0 gpgkey=https://repo.zextras.io/repomd.xml.key EOF
# Install Zextras Carbonio CE
Please run screen (for background process) before starting the installation.
screen
dnf install service-discover-server \ carbonio-directory-server \ carbonio-proxy carbonio-webui \ carbonio-mta \ carbonio-appserver carbonio-storages-ce \ carbonio-message-broker \ carbonio-user-management
# Initial Configuration
carbonio-bootstrap
Just type y and click the enter button for the initialization process. Below is an example output
Main menu 1) Common Configuration: 2) carbonio-antivirus: Enabled 3) carbonio-directory-server: 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 Saving config in /opt/zextras/config.18258...done. Operations logged to /tmp/zmsetup.20250324-140819.log Setting local config values...
# 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.242/24, fe80::20c:29ff:fee9:cd29/64 Specify the binding address for service discovery: 192.168.1.242/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
# Setup Memcached
su - zextras carbonio prov ms $(zmhostname) zimbraMemcachedBindAddress $(hostname -i)
# Restart Zextras Carbonio CE services
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 [email protected] 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 [email protected]. Below is some screenshot from Zextras Carbonio CE




Good luck 🙂
Hello
Could you please provide guidance on the best approach for implementing with changing the logo and background?
Thanks
Hi Yaa,
Maybe you can use inspect element to find the logo and background configuration. Then, you can replace them