This tutorial is available in other languages. Help translate more
Check out the lightweight on-premises email archiving software developed by iRedMail team: Spider Email Archiver.
It's recommended to use the new iRedMail Easy deployment and support platform to deploy and keep your mail server up to date, technical support is available through the ticket system.
Read more: iRedMail Easy - Meet our new deployment and support platform
Port 25 is required by mail server but many ISPs block it by default.
Port 25 is used for communication between mail servers, it must be open, otherwise your mail server won't be able to receive and send emails. Please contact your ISP to make sure it's not blocked, or ask them to unblock it.
To install iRedMail on RHEL or CentOS Linux, you need:
4 GBmemory is required for a low traffic production mail server with spam/virus scanning enabled.
No matter your server is a testing machine or production server, it's strongly recommended to set a fully qualified domain name (FQDN) hostname.
hostname -f to view the current hostname:
$ hostname -f mx.example.com
On RHEL/CentOS Linux, hostname is set in two files:
/etc/hosts: hostname <=> IP address mapping. Warning: List the FQDN hostname as first item.
127.0.0.1 mx.example.com mx localhost localhost.localdomain
Verify the FQDN hostname. If it wasn't changed, please reboot server to make it work.
$ hostname -f mx.example.com
iRedMail doesn't work with SELinux, so please disable it by setting below
value in its config file
/etc/selinux/config. After server reboot, SELinux
will be completely disabled.
If you prefer to let SELinux prints warnings instead of enforcing, you can set below value instead:
Disable it immediately without rebooting your server.
# setenforce 0
On Red Hat Enterprise Linux:
epelrepo (you can enable it by installing package
epelwith commands below:
dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms
Since official RHEL/CentOS and EPEL repositories don't have all
required packages with the needed features, iRedMail team has built these
packages and made them available trough the iRedMail repository enabled by
default at installation time. You can view all available packages
here, please check
ChangeLog files under each directory for more details. Source RPMs (srpm)
used by iRedMail team to build the binary packages are available
Visit Download page to get the latest stable release of iRedMail.
Upload iRedMail to your mail server via ftp or scp or whatever method you
can use, login to the server to install iRedMail. We assume you uploaded
/root/iRedMail-x.y.z.tar.gz (replace x.y.z by the real version number).
Uncompress iRedMail tarball:
# cd /root/ # tar zxf iRedMail-x.y.z.tar.gz
It's now ready to start iRedMail installer, it will ask you several simple questions, that's all required to setup a full-featured mail server.
# cd /root/iRedMail-x.y.z/ # bash iRedMail.sh
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
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.
Choose optional components
Which webmail should you choose? Roundcube or SOGo?
After answered above questions, iRedMail installer will ask you to review and
confirm to start installation. It will install and configure required packages
Y and press
Enter to start.
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.
/root/iRedMail-x.y.z/iRedMail.tips first, it contains:
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.