Установка почтового сервера 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
для управления белым и черным списком, по-этому набросал свою админку.
Возможности админки:
- Добавлять в список
- Выбор тип списка (белый / черный)
- Редактировать запись
- Удалять из списка
Исходник письма с отправителем из белого списка
Лог сервера с отправителем из черного списка
Для установки вэб-интерфейса создаем директорию:
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