Install iredmail on red hat enterprise linux, centos

System Requirements

Warning

  • iRedMail is designed to be deployed on a FRESH server system, which
    means your server does NOT have mail related components installed,
    e.g. MySQL, OpenLDAP, Postfix, Dovecot, Amavisd, etc. iRedMail will install
    and configure them for you automatically. Otherwise it may override your
    existing files/configurations although it will backup files before
    modifying, and it may not be working as expected.
    • Amazon AWS EC2. Request to remove the throttle on port 25.
    • Google Cloud Platform.
    • Microsoft Azure.
    • Linode. Explained in the blog post,
      you can open a support ticket to request the Linode team to open it. If you sign up to Linode with our reference, iRedMail Team’s Linode account will receive a credit of $15-20.00. Thanks.
    • DigitalOcean. According to a post in their community, SEEMS impossible to unblock port 25, that means you can NOT run mail server on DigitalOcean VPS.

To install iRedMail on RHEL or CentOS Linux, you need:

  • A FRESH, working RHEL or CentOS system. Supported releases are listed on
    Download page.
  • At least memory is required for a low traffic production mail server
    with spam/virus scanning enabled..
  • Make sure 3 UID/GID are not used by other user/group: 2000, 2001, 2002.

Step 3: Configuring Hostname

Log into your server via SSH, then run the following command to update existing software packages.

sudo yum update -y

I strongly recommend creating a user for managing your server rather than using the default user to improve server security. Run the following command to create a user. Replace with your preferred username.

sudo adduser username

Set a password for this user.

sudo passwd username

Add this user to the group in order to use .

sudo gpasswd -a username wheel

Switch to the new user.

su - username

Next, set a fully qualified domain name (FQDN) for your server with the following command.

sudo hostnamectl set-hostname mail.your-domain.com

We also need to update file with a command-line text editor like Nano.

sudo nano /etc/hosts

Edit it like below. (Use arrow keys to move the cursor in the file.)

127.0.0.1       mail.your-domain.com localhost

Save and close the file. (To save a file in Nano text editor, press , then press to confirm. To close the file, press .)

To see the changes, re-login and run the following command to see your hostname.

hostname -f

Step 9: Improving Email Deliverablity

PTR record

To check the PTR record for an IP address, run this command:

dig -x IP-address +short

or

host IP-address

PTR record isn’t managed by your domain registrar. It’s managed by the person who gives you an IP address. Because you get IP address from your hosting provider or ISP, not from your domain registrar, so you must set PTR record for your IP in the control panel of your hosting provider, or ask your ISP. Its value should be your mail server’s hostname: . If your server uses IPv6 address, be sure to add a PTR record for your IPv6 address as well.

To edit the reverse DNS record for your ScalaHosting VPS, log into ScalaHosting client area, then use the live chat on the bottom-right corner, tell the support team to update the PTR record of your server IP addresss to .

SPF Record

Where:

  • TXT indicates this is a TXT record.
  • Enter @ in the name field to represent the main domain name.
  • v=spf1 indicates this is a SPF record and the version is SPF1.
  • mx means all hosts listed in the MX records are allowed to send emails for your domain and all other hosts are disallowed.
  • ~all indicates that emails from your domain should only come from hosts specified in the SPF record. Emails that are from other hosts will be flagged as forged.

To check if your SPF record is propagated to the public Internet, you can use the dig utility on your Linux machine like below:

dig your-domain.com txt

The option tells that we only want to query TXT records.

DKIM Record

The iRedMail script automatically configured DKIM for your server. The only thing left to do is creating DKIM record in DNS manager. Run the following command to show the DKIM public key.

sudo amavisd -c /etc/amavisd/amavisd.conf showkeys

The DKIM public key is in the parentheses.

Then in your DNS manager, create a TXT record, enter in the name field. Copy everything in the parentheses and paste into the value field. Delete all double quotes and line breaks.

After saving your changes, run the following command to test if your DKIM record is correct.

sudo amavisd -c /etc/amavisd/amavisd.conf testkeys

If the DKIM record is correct, the test will pass.

TESTING#1 linuxbabe.com: dkim._domainkey.linuxbabe.com => pass

Note that your DKIM record may need sometime to propagate to the Internet. Depending on the domain registrar you use, your DNS record might be propagated instantly, or it might take up to 24 hours to propagate. You can go to https://www.dmarcanalyzer.com/dkim/dkim-check/, enter as the selector and enter your domain name to check DKIM record propagation.

DMARC Record

v=DMARC1; p=none; pct=100; rua=mailto:

The above DMARC record is a safe starting point. If you want to read the full explanation of DMARC, please check the following article. Note that this is optional.

Функции iRedMail

По сути, основой iRedMail является набор скриптов и конфигурационных файлов, упрощающий процесс развертывания и первоначальной настройки почтового сервиса на базе Postfix и Dovecot с поддержкой протоколов SMTP, POP3 и IMAP. Хотя это только поверхностное впечатление. В процессе работы скрипт скачивает и проверяет все пакеты, затем помогает создать первые настройки при помощи интерфейса построенного на dialog. И только затем устанавливает выбранные компоненты. В процессе создается первый виртуальный домен с администратором и пользователем. При достаточной скорости соединения с Интернет и определенных навыках, на развертывание сервиса уходит время до 5 минут. Далее можно создавать любое количество доменов, почтовых ящиков и алиасов. Учетные записи могут сохраняться в OpenLDAP или MySQL.
Как мы увидим далее, в процессе задается минимум вопросов. Все компоненты будут автоматически инсталлированы на один “чистый” сервер. Подключиться к MySQL установленному на другом компьютере можно лишь после, выполнив все настройки вручную и создав нужные базы. Для некоторых конфигураций почтового сервера такой подход возможно и не подойдет, так как не дает достаточных возможностей по управлению. Но очевидно, что разработчики iRedMail и не ставили такой задачи.
Кроме этого устанавливаются все необходимые компоненты для защиты электронной почты от спама и вирусов обеспечивающих поддержку — SPF (Sender Policy Framework), DKIM (DomainKeys Identified Mail), HPR (HELO Randomization Prevention), белых/серых/черных списков (на основании DNS имени и IP адреса), Spamtrap, интеграция SpamAssassin и ClamAV (через AMaViS). Плюс надстройка над iptables Fail2ban, обеспечивающая блокировку удаленных систем по определенным правилам в частности защиту от попыток подбора пароля.
Кроме набора серверов Postfix, Dovecot, Apache, OpenLDAP, MySQL предлагается несколько интерфейсов управления. В первую очередь это почтовый веб-интерфейс Roundcube WebMail (в ранних версиях на выбор предлагался и SquirrelMail), а также средства управления специфическими сервисами — phpLDAPadmin, PostfixAdmin, phpMyAdmin и просмотра статистики Avstats. Естественно получать и отправлять почту можно при помощи любого почтового клиента.
Кроме этого предлагается интерфейс администратора собственной разработки – iRedAdmin, доступный в двух версиях OpenSource и коммерческий iRedAdmin-Pro (цена $199). Свободная версия, как часто бывает, ограничена в возможностях и позволяет управлять лишь учетными записями и доменами. Коммерческая, разработана в двух вариантах — LDAP и MySQL, и покрывает практически все вопросы администрирования почтовой системы. В частности обеспечивает просмотр и удаление спам сообщений, сохраненных в базе данных MySQL, при использовании OpenSource версии iRedAdmin, администратору придется самостоятельно решать эту задачу, например при помощи того же PHPMyAdmin, плюс правка конфигурационных файлов, что несколько не удобно, да и потребует некоторого опыта. Хотя в большинстве ситуаций такое вмешательство может и непотребоваться , тем более, что интерфейс RoundCube позволяет самим пользователям отправлять письма в спам, обучая фильтры.
Сравнительная таблица и ссылка на демоинтерфейс доступны на сайте. В отличие от демоверсии, в реальной системе есть возможность выбрать русский язык интерфейса.
Кроме этого в процессе установки будет загружено средство управления политиками Postfix — iRedAPD (Access Policy Delegation). Это еще одна разработка проекта, позволяющая более тонко делегировать полномочия между пользователями.
Особо подчеркивается, что специфических знаний при развертывании почтового сервера при помощи iRedMail не нужно. В принципе это верно, но отчасти

В процессе установки и последующей настройки администратору придется сталкиваться со специфическими терминами и чтобы ускорить процесс внедрения, важно понимать хотя бы их смысл

Postfix integration

Attention

  • Command doesn’t exist yet, we will create it
    later.
  • On FreeBSD and OpenBSD, it should be instead.

Add line below in Postfix config file /etc/postfix/main.cf:

Open file /etc/postfix/ldap/virtual_group_maps.cf, replace the
query_filter line by below one. It will query old mailing list and new
mlmmj mailing list.

Open file /etc/postfix/ldap/transport_maps_user.cf, make sure no ou=Users,
in search_base = line, and change scope = one to scope = sub:

Open file /etc/postfix/ldap/transport_maps_user.cf, replace the
query_filter line by below one. It will query both mail user and mlmmj
mailing list.

Run commands below to create file /usr/bin/mlmmj-amime-receive (Linux) or
/usr/local/bin/mlmmj-amime-receive (FreeBSD/OpenBSD):

Attention

mlmmj doesn’t support signature signing very well, so we follow mlmmj
official document and create this script to sign signature properly with
command . All iRedMail installation should have command
(package ) available, so you don’t need to install
it manually

On Linux:

On FreeBSD or OpenBSD:

Восстановление из резервных копий

Перед началом восстановления, переносим резервные копии на новый сервер.

Восстановление баз данных

Нам необходимо восстановить несколько баз — содержимое /var/vmail/backup/mysql/. В моем случае было:

  • amavisd
  • iredadmin
  • iredapd
  • mysql
  • roundcubemail
  • vmail

Если мы переносим нашу почтовую систему на новый сервер, базу mysql восстанавливать не нужно.

 Архивы баз находятся в сжатом виде. Первым делом, распаковываем их:

bzip2 -d amavisd-*.sql.bz2

bzip2 -d iredadmin-*.sql.bz2

bzip2 -d iredapd-*.sql.bz2

bzip2 -d mysql-*.sql.bz2

bzip2 -d vmail-*.sql.bz2

* если система вернула ошибку и не распаковала архив, необходимо установить пакет bzip2.

Теперь можно восстановить базы:

mysql -v -u root -p amavisd < amavisd-*.sql

mysql -v -u root -p iredadmin < iredadmin-*.sql

mysql -v -u root -p iredapd < iredapd-*.sql

mysql -v -u root -p mysql < mysql-*.sql

* напомним еще раз, базу mysql восстанавливать не нужно, если мы перенесли почту на новый сервер. 

mysql -v -u root -p vmail < vmail-*.sql

Восстановление почты

Копируем данные в каталог /var/vmail/vmail1 (в случае, если мы не выбрали другой при установке).

Если мы создавали архив, то сначала распакуем его, например:

tar -xvf vmail.tar.gz

и переносим распакованное содержимое в каталог хранения почты (по умолчанию, /var/vmail/vmail1):

mv /tmp/var/vmail/vmail1/* /var/vmail/vmail1/

* в моем случае, распакованный архив находился в каталоге /tmp/var/vmail/vmail1; каталог для хранения почты — /var/vmail/vmail1.

Восстановление LDAP

На новом сервере заходим в каталог с дистрибутивом, который использовался для установки iRedMail. Открываем файл iRedMail.tips, например:

vi /tmp/iRedMail-0.9.8/iRedMail.tips

Находим пароли для учетных записей cn=vmail,dc=xx,dc=xx и cn=vmailadmin,dc=xx,dc=xx в строках:

OpenLDAP:
    …
    * LDAP bind dn (read-only): cn=vmail,dc=example,dc=com, password: rzeuzCPZN5dlHiyWEt9g6GWL5Jo6S9
    * LDAP admin dn (used for iRedAdmin): cn=vmailadmin,dc=example,dc=com, password: FQ6Pk3hCKxL1dKv047NM0aJPEGanOv

* в данном примере, записываем пароли rzeuzCPZN5dlHiyWEt9g6GWL5Jo6S9 и FQ6Pk3hCKxL1dKv047NM0aJPEGanOv.

Используя данные пароли и получаем на них хэш:

slappasswd -h ‘{ssha}’ -s ‘rzeuzCPZN5dlHiyWEt9g6GWL5Jo6S9’

slappasswd -h ‘{ssha}’ -s ‘FQ6Pk3hCKxL1dKv047NM0aJPEGanOv’

В ответ мы получаем что-то подобное:

{SSHA}3rs/fqNZpKaWytqaQVE8AKltriyd1BsW

{SSHA}20vytDcG0NsSE8twwI/ldWW1+YCIi+xW

Теперь распаковываем архив с ldap:

bzip2 -d /tmp/2019-02-09-03-00-01.ldif.bz2

* в данном примере мы распаковываем архив из каталога /tmp.

Открываем распакованный ldif файл:

vi /tmp/2019-02-09-03-00-01.ldif

Находим учетные записи cn=vmail и cn=vmailadmin и строки их паролей, например:

dn: cn=vmail,dc=iredmail,dc=org

userPassword:: e1NTSEF9dVFnWENnWWkrWDMzMmJSNVJlazN0YjR5NllBRW9tN3hnZ1VTa0E9PQ==

dn: cn=vmailadmin,dc=iredmail,dc=org
userPassword:: e1NTSEF9eFhsWjd6MHRlQzYxRFc5QklJSStFNXBZU0YyTHIwVnh2UTNIRWc9PQ==

… и меняем на такие строки:

dn: cn=vmail,dc=iredmail,dc=org

userPassword: {SSHA}3rs/fqNZpKaWytqaQVE8AKltriyd1BsW

dn: cn=vmailadmin,dc=iredmail,dc=org
userPassword: {SSHA}20vytDcG0NsSE8twwI/ldWW1+YCIi+xW

* обратите внимание, что, во-первых, мы заменили пароли на наши хеши. Во-вторых, после userPassword мы убрали один знак двоеточия

Останавливаем службу для ldap:

systemctl stop slapd

Переходим в каталог хранения данных ldap:

cd /var/lib/ldap/<домен>/

Если в нем есть файл DB_CONFIG, переносим его, остальное удаляем:

mv DB_CONFIG /tmp

rm -rf ./*

После возвращаем DB_CONFIG:

mv /tmp/DB_CONFIG ./

Снова запускаем сервис ldap:

systemctl start slapd

В каталоге с данными для ldap появятся файлы. Снова останавливаем сервис slapd:

systemctl stop slapd

Теперь восстанавливаем данные:

slapadd -f /etc/openldap/slapd.conf -l /tmp/2019-02-09-03-00-01.ldif

Запускаем ldap и проверяем, что он запустился:

systemctl start slapd

systemctl status slapd

Восстановление конфигов

Желательно, восстановить настройки системы, так как некоторые из них критичные для работы почты. Если мы меняли конфигурацию, то нужно восстановить следующие файлы:

  1. /var/www/roundcubemail/config/config.inc.php
    где путь /var/www может быть другим. Конфиг для roundcube.
  2. /etc/postfix/mysql*.cf
    настройки postfix.
  3. Содержимое /etc/dovecot/conf.d, файлы /etc/dovecot/dovecot-mysql.conf и /etc/dovecot/dovecot.conf.
    настройки dovecot.
  4. Содержимое /var/lib/dkim
    сертификаты для подписи DKIM.

Защищаем сообщения от попадания в СПАМ

Чтобы другие почтовые системы не принимали наши письма за СПАМ, выполняем следующие рекомендации:

А-запись в DNS

Для FQDN-имени почтового сервера должна быть создана А-запись в DNS. Пример записи:

mail.dmosk.ru   A   90.156.242.197

Создаем PTR-запись для внешнего IP-адреса

Она должна вести на имя сервера (в данном примере, mail.dmosk.ru). Чтобы создать такую запись, нужно написать обращение Интернет-провайдеру или хостеру виртуальной машины. Пример записи:

171.23.222.83.in-addr.arpa      name = mail.dmosk.ru

* данная запись соответствует IP-адресу 83.222.23.171.

Эта запись создается в DNS для домена, от которого идет отправка сообщений. Пример:

dmosk.ru     text = «v=spf1 +mx -all»

Прописываем DKIM в DNS

Для начала, смотрим ключ, который был сформирован во время установки iRedMail:

amavisd-new showkeys

Пример ответа:

dkim._domainkey.dmosk.ru.     3600 TXT (
  «v=DKIM1; p=»
  «MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDHNu0ZlYkq8pKsp131jnoZ+Ief»
  «zcSP1WxGzGQXssg3yiRGBlqsRGBnnKgitrsPYTZbzqqL+/rW0ptGNhAqfTWHvMia»
  «+f4RSMLJPMREFtakVEZvTIK5iZvxuCZpVhvM6ldadTLAxbcupX38yMfJV73EwCHK»
  «d2mdqfW+emSW/paUwQIDAQAB»)

Копируем DKIM и создаем в DNS запись TXT. Пример:

dmosk.ru     text = «v=DKIM1; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDHNu0ZlYkq8pKsp131jnoZ+IefzcSP1WxGzGQXssg3yiRGBlqsRGBnnKgitrsPYTZbzqqL+/rW0ptGNhAqfTWHvMia+f4RSMLJPMREFtakVEZvTIK5iZvxuCZpVhvM6ldadTLAxbcupX38yMfJV73EwCHKd2mdqfW+emSW/paUwQIDAQAB»

Создать другую подпись DKIM

Генерируем новый ключ:

amavisd-new genrsa /var/lib/dkim/dmosk2.ru.pem 1024

* где dmosk2.ru — новый домен, для которого мы сгенерируем подпись dkim.
* некоторые системы не работают с ключами более чем 1024 бит.

Задаем права на созданный файл:

chown amavis:amavis /var/lib/dkim/dmosk2.ru.pem

chmod 0400 /var/lib/dkim/dmosk2.ru.pem

Открываем конфигурационный файл amavisd

vi /etc/amavisd.conf

Находим строчку:

dkim_key(‘dmosk.ru’, «dkim», «/var/lib/dkim/dmosk.ru.pem»);

И добавляем радом с ней новую. Получится так:

dkim_key(‘dmosk.ru’, «dkim», «/var/lib/dkim/dmosk.ru.pem»);
dkim_key(‘dmosk2.ru’, «dkim», «/var/lib/dkim/dmosk2.ru.pem»);

Теперь находим строчку:

@dkim_signature_options_bysender_maps = ( {
   …
   «dmosk.ru» => { d => «dmosk.ru», a => ‘rsa-sha256’, ttl => 10*24*3600 },

И также после нее добавляем новую. Должно получиться:

@dkim_signature_options_bysender_maps = ( {
   …
   «dmosk.ru» => { d => «dmosk.ru», a => ‘rsa-sha256’, ttl => 10*24*3600 },
   «dmosk2.ru» => { d => «dmosk2.ru», a => ‘rsa-sha256’, ttl => 10*24*3600 },

Перезапускаем amavisd:

amavisd-new restart

Политика DMARC

Данная политика определяет, что делать с письмом, которое не проходит проверку. Подробнее о DMARC.

Для создания данной политики необходимо в DNS добавить TXT запись, примерно, такого содержания:

_dmarc.dmosk.ru. 3600 IN TXT «v=DMARC1; p=quarantine; sp=none; pct=100; fo=0; rua=mailto:[email protected]»

* данная запись означает, что все письма, которые не прошли проверку, необходимо отправить в карантин, а отчет написать на ящик [email protected].

Ящик abuse

По аналогии с тем, как мы создавали тестовую учетную запись, необходимо создать ящик abuse@… На данный ящик могут приходить жалобы на СПАМ. Стоит время от времени просматривать его (или настроить переадресацию), и реагировать на жалобы.

Группы рассылки

В профессиональной платной версии iRedMail можно управлять группами рассылки из веб-интерфейса. Данный процесс не вызовет сложностей. Мы же рассмотрим, как создать группу для рассылки через запросы SQL. Данный метод является единственным для бесплатной версии.

Подключаемся к базе данных (в нашем примере, это mariadb):

mysql -uroot -p

Используем нашу базу для почты:

> use vmail

Создадим группу рассылки:

> INSERT INTO alias (address, domain, active) VALUES ('[email protected]', 'dmosk.ru', 1);

* в данном примере мы создали группу с почтовым адресом [email protected]для домена dmosk.ru.

Теперь добавим в нее три адреса:

> INSERT INTO forwardings (address, forwarding, domain, dest_domain, is_list, active) VALUES ('[email protected]', '[email protected]', 'dmosk.ru', 'dmosk.ru', 1, 1);
> INSERT INTO forwardings (address, forwarding, domain, dest_domain, is_list, active) VALUES ('[email protected]', '[email protected]', 'dmosk.ru', 'dmosk.ru', 1, 1);
> INSERT INTO forwardings (address, forwarding, domain, dest_domain, is_list, active) VALUES ('[email protected]', '[email protected]', 'dmosk.ru', 'gmail.com', 1, 1);

* в данном примере мы добавили в созданный адрес рассылки [email protected]три адреса — [email protected][email protected][email protected]

Обратите внимание, что последний адрес на бесплатном сервисе от Google

Управление белыми и черными списками

Переходим в каталог с утилитами iredmail:

cd /opt/iredapd/tools/

Просмотреть содержимое белого и черного списков:

python wblist_admin.py --list --whitelist
python wblist_admin.py --list --blacklist

Добавить в списки:

python wblist_admin.py --add --whitelist 111.112.113.114 [email protected] @dmosk.ru @.dmosk.ru
python wblist_admin.py --add --blacklist 111.112.113.115 @baddomain.com

Удалить из списка:

python wblist_admin.py --delete --whitelist 111.112.113.114 [email protected] @dmosk.ru @.dmosk.ru
python wblist_admin.py --delete --blacklist 111.112.113.115 @baddomain.com

* как видим, процесс удаления аналогичен — просто меняем—addна—delete.

Setup mlmmjadmin: RESTful API server used to manage mlmmj mailing lists

  • Download the latest mlmmjadmin release: https://github.com/iredmail/mlmmjadmin/releases,
    extract downloaded package to directory, and create a symbol link:

    Attention

    We use version for example below.

    • and later releases requires Python 3.
    • and older releases requires Python 2.

Generate config file by copying sample file, settings.py.sample:

Generate a random, long string as API auth token, it will be used by your
API client. For example:

Add this string in /opt/mlmmjadmin/settings.py, parameter api_auth_tokens
like below:

You can add as many token as you want for different API clients. For example:

If you’re running OpenBSD or FreeBSD, please add parameter MLMMJ_SKEL_DIR
in /opt/mlmmjadmin/settings.py to set the directory which stores mlmmj mail
templates:

Copy rc/systemd scripts for service control:

Create directory used to store mlmmjadmin log file. mlmmjadmin is
configured to log to syslog directly.

Update syslog daemon config file to log mlmmjadmin to dedicated log file:

For Linux

For OpenBSD, please append below lines in :

For FreeBSD, please append below lines in :

Now it’s ok to start mlmmjadmin service, it listens on 127.0.0.1:7790
by default:

On Linux, you can check the port number with command or like below:

On FreeBSD/OpenBSD, run:

Обновление бэкэнда

Далее действия зависят от типа базы данных, которая используется для нашего iRedMail. Есть варианты использования OpenLDAP, MySQL/MariaDB, PostgreSQL. В данной инструкции подробнее затронем только MySQL/MariaDB. Действия по обновлению бэкэнда до версии 1.0 позволят включить проверку состояния квот.

Добавление поля mysql

Скачиваем дамп с новой структурой для базы vmail:

wget -O /tmp/iredmail.mysql https://github.com/iredmail/iRedMail/raw/1.0/update/1.0/iredmail.mysql

Загружаем изменения:

mysql vmail < /tmp/iredmail.mysql

Удаляем скачанный файл:

rm -f /tmp/iredmail.mysql

Настройка Dovecot

Открываем файл /etc/dovecot/dovecot.conf:

vi /etc/dovecot/dovecot.conf

Находим строку plugin:

plugin {
    …

… и добавляем строки:

plugin {
    …
    # Used by quota-status service.
    quota_status_success = DUNNO
    quota_status_nouser = DUNNO
    quota_status_overquota = «552 5.2.2 Mailbox is full»
}

Ниже после plugin { … } добавим:

service quota-status {
    executable = quota-status -p postfix
    client_limit = 1
    inet_listener {
        address = 127.0.0.1
        port = 12340
    }
}

Перезапускаем dovecot:

systemctl restart dovecot

Настройка Postfix

Открываем конфигурационный файл:

vi /etc/postfix/main.cf

Находим:

smtpd_recipient_restrictions =

… и добавляем в конец группы:

smtpd_recipient_restrictions =
    …
    check_policy_service inet:127.0.0.1:12340

Перезапускаем postfix:

systemctl restart postfix

Summary

In iRedMail-0.9.8, we integrate mlmmj (http://mlmmj.org) — a simple and slim
mailing list manager. It uses very few resources, and requires no daemons, easy
to install, configure and manage. if offers a great set of features, including:

  • Archive
  • Subject prefix
  • Subscribers only posting
  • Moderators only posting
  • Moderation functionality
  • Custom headers / footer
  • Fully automated bounce handling
  • Complete requeueing functionality
  • Regular expression access control
  • Delivery Status Notification (RFC1891) support
  • Rich, customisable texts for automated operations
  • and more

We will show you how to integrate both mlmmj and mlmmjadmin in this tutorial.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Техноарена
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: