Пост

Установка почтового сервера iRedMail на CentOS 7. Часть 8. Белые и черные списки. Web-интерфейс

Белый список адресов электронной почты содержит одобренные вами адреса электронной почти или доменных имен, с которых можно отправлять письма в ваш домен.
Черный список адресов электронной почты содержит адреса электронной почти или доменных имен, сообщения с которых не должны попадать в ваш домен.

Документация по управлению белым и черным списком можно посмотреть на официальном сайте iRedMail.

Этот функционал доступен в платной версии iRedMail, но в бесплатной версии есть python-скрипт, с помощью которого можно управлять Белыми и черными списками

Например, для добавления доменного имени в белый или черный список надо выполнить команду:

1
2
$ python /opt/iredapd/tools/wblist_admin.py --add --whitelist @example.com
$ python /opt/iredapd/tools/wblist_admin.py --add --blacklist @example.com

Для удаления доменного имени из белого или черного списка надо выполнить команду:

1
2
$ python /opt/iredapd/tools/wblist_admin.py --delete --whitelist @example.com
$ python /opt/iredapd/tools/wblist_admin.py --delete --blacklist @example.com

Для просмотра белого или черного списка выполним команду:

1
2
$ python /opt/iredapd/tools/wblist_admin.py --list --whitelist
$ python /opt/iredapd/tools/wblist_admin.py --list --blacklist

Интерфейс Web-админки

Проанализировав python-скрипт можно увидеть, что белые и черные списки хранятся в MySQL-базе amavisd

Мне не захотелось использовать phpMyAdmin для управления белым и черным списком, по-этому набросал свою админку.

Скачать (github)

Возможности админки:

  • Добавлять в список
  • Выбор тип списка (белый / черный)
  • Редактировать запись
  • Удалять из списка

Вэб-интерфейс

Вэб-интерфейс

Вэб-интерфейс

Исходник письма с отправителем из белого списка

Лог сервера с отправителем из черного списка

Для установки вэб-интерфейса создаем директорию:

1
$ sudo mkdir /var/www/html/whitelist

Распаковываем в эту директорию файлы из архива, редактируем файлы:

  • в файле server.php отредактировать строку 3 (заменить %password% на свое значение)

Пароль на базу amavisd можно найти в письме, которое вам было отправлено после установки Mail-сервера iRedMail

Ограничиваем доступ к Web-интерфейсу управления белыми / черными списками по IP:

1
2
3
4
5
6
$ sudo nano /etc/nginx/templates/misc.tmpl
...
location ~ ^/whitelist/$ {
    allow %ip%;
    deny all;
}

где

  • %ip% — IP-адрес, которому разрешен доступ

Перезагружаем nginx

1
$ sudo systemctl restart nginx
Авторский пост защищен лицензией CC BY 4.0 .

© IT Draft. Некоторые права защищены.