How to Install Modoboa on Ubuntu Server

Modoboa is a free and open-source mail server that can be used for managing email accounts and mail domains. In this guide, we'll go over how to install Modoboa on an Ubuntu Server.

The latest version of Ubuntu Server is recommended to use. Before you start the installation, ensure that your Ubuntu Server has the minimum requirements to run Modoboa.

Prerequisites

Installation

Update and Upgrade the System

Before we begin the installation of Modoboa, we need to update and upgrade the system.

sudo apt update
sudo apt upgrade

Install Required Packages

Modoboa requires several packages to be installed. Install the packages using the following command.

sudo apt install python-pip python-virtualenv python-dev python-lxml python-pyinotify python-imaging python-pip python-setuptools python-wheel python-cffi python-django python-django-compressor python-django-reversion python-ldap python-chardet python-defusedxml python-tz python-cryptography python-openssl python-pysnmp4 python-requests python-nose redis-server supervisor libzmq3-dev libmysqlclient-dev libffi-dev libssl-dev zlib1g-dev libjpeg-dev libsasl2-dev libsasl2-modules gcc

Create a Python Virtual Environment

It is recommended to create a Python Virtual Environment for Modoboa. Navigate to the desired directory and create the environment.

cd /opt
sudo virtualenv modoboa_env

Activate the environment to work inside it.

source /opt/modoboa_env/bin/activate

Install Modoboa

Now we can install Modoboa inside the Python Virtual Environment.

pip install modoboa

Generate Configurations

Generate the required configuration files for Modoboa.

sudo modoboa-admin.py deploy --collectstatic --force --static-url /sitestatic/

Create Systemd Service

Create a Systemd service to start Modoboa's webserver automatically when the system starts.

sudo nano /etc/systemd/system/modoboa.service

Paste the following configuration in the file.

[Unit]
Description=Modoboa Mailserver

[Service]
Type=simple
User=www-data
Group=www-data
ExecStart=/opt/modoboa_env/bin/python /opt/modoboa_env/bin/modoboa-admin.py runuwsgi
WorkingDirectory=/opt/modoboa_env/var/modoboa
Restart=always

[Install]
WantedBy=multi-user.target

Enable and Start the Service

Enable the Modoboa service and start it.

sudo systemctl enable modoboa.service
sudo systemctl start modoboa.service

Open the Port

Open port 80 if you want to allow external access to the mail server's webinterface.

sudo ufw allow 80

Access the Web Interface

Now you should be able to access the web interface of the mail server on your Ubuntu Server's IP address. Use the following URL.

http://<your-server-ip>/

Command to create Super User:

Use the following command to create a default superuser.

sudo modoboa-admin.py admin your@email.com --password password --lang en --timezone UTC

Conclusion

In this tutorial, we have shown you how to install Modoboa on an Ubuntu Server from the https://modoboa.org/en/. With Modoboa installed, you can manage your mail domains and email accounts easily.

If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!

Alternatively, for the best virtual desktop, try Shells!