This tutorial is available in other languages. Help translate more

Nederlands /

Install iRedMail on FreeBSD inside Jail (with ezjail)

Attention

Check out the lightweight on-premises email archiving software developed by iRedMail team: Spider Email Archiver.

Summary

Notes:

System Requirements

Warning

Preparations

Install sysutils/ezjail and add required settings

# cd /usr/ports/sysutils/ezjail/
# make install clean
# Start ezjail while system start up
ezjail_enable="YES"

# Enable sysvipc. Required by PostgreSQL.
jail_sysvipc_allow="YES"
security.jail.sysvipc_allowed=1
# reboot

Create Jail

# ezjail-admin install -p
# ezjail-admin create -r /jails/mx.example.com mx.example.com 'em0|172.16.244.254'
# service ezjail restart
# ezjail-admin list
STA JID  IP               Hostname                          Root Directory
--- ---- ---------------- --------------------------------- ------------------------
DS  1    172.16.244.254   mx.example.com                    /jails/mx.example.com

Install iRedMail

We can now enter this Jail with below command:

# ezjail-admin console mx.example.com
# File: /etc/resolv.conf
nameserver 172.16.244.2
# pkg install bash-static

Start iRedMail installer

It's now ready to start iRedMail installer inside Jail, it will ask you several simple questions, that's all required to setup a full-featured mail server.

# bash          # <- start bash shell, REQUIRED
# cd /root/iRedMail/
# LOCAL_ADDRESS='172.16.244.254' bash iRedMail.sh

Screenshots of installation:

Note

There's no big difference between available backends, so it's strongly recommended to choose the one you're familiar with for easier management and maintenance after installation.

To MySQL/MariaDB/PostgreSQL users

If you choose to store mail accounts in MySQL/MariaDB/PostgreSQL, iRedMail installer will generate a random, strong password for you. You can find it in file iRedMail.tips.

Note: This account is an admin account and a mail user. That means you can login to webmail and admin panel (iRedAdmin) with this account, login username is full email address.

After answered above questions, iRedMail installer will ask you to review and confirm to start installation. It will install and configure required packages automatically. Type y or Y and press Enter to start.

Important things you MUST know after installation

Warning

The weakest part of a mail server is user's weak password. Spammers don't want to hack your server, they just want to send spam from your server. Please ALWAYS ALWAYS ALWAYS force users to use a strong password.

Access webmail and other web applications

After installation successfully completed, you can access web-based programs if you choose to install them. Replace your_server below by your real server hostname or IP address.

Get technical support

Please post all issues, feedbacks, feature requests, suggestions in our online support forum, it's more responsible than you expected.

Some Tips for FreeBSD Jail

Allow ping in Jail

security.jail.allow_raw_sockets=1
export jail_mx_example_com_parameters="allow.raw_sockets=1"

Share /usr/ports/distfiles with Jail

To share /usr/ports/distfiles/ with Jail, please append below line in /etc/fstab.mx_example_com:

Jail will set ports tree directory to /var/ports instead of /usr/ports in /jails/mx.example.com/etc/make.conf by default, you can either use this default setting or change it to /usr/ports.

# Part of file: /etc/fstab.mx_example.com
/usr/ports/distfiles /jails/mx.example.com/basejail/var/ports/distfiles nullfs rw 0 0

Create directory /usr/jails/basejail/var/ports/distfiles:

# mkdir /usr/jails/basejail/var/ports/distfiles