Установка и настройка Proxmox Mail Gateway
Proxmox Mail Gateway представляет из себя почтовый шлюз с возможностями проверки писем на наличие нежелательного контента. С его помощью можно легко обеспечить надежную маршрутизацию почтовой системы и повысить безопасность работы. Большая часть настроек может быть выполнена из графического веб-интерфейса.
Установка Proxmox Mail Gateway
Настройка входящих
Настройка исходящих
Дополнительные настройки
Читайте также
Установка
Proxmox Mail Gateway поставляется как готовый образ операционной системы Debian с установленными и преднастроенными пакетами. Для установки системы нам необходимо скачать файл ISO на странице официального сайта, после создаем загрузочную флешку с помощью rufus или WinSetupFromUsb. Если мы устанавливаем Mail Gateway на виртуальную машину, то без создания загрузочной флешки можно монтировать образ iso к самой виртуальной машине.
После загрузки сервера с образа ISO запустится мастер установки. В нем нет сложных нюансов — просто идем по шагам, отвечая на несложные вопросы. Сама установка занимает, в среднем, от 5 до 15 минут.
После мы можем перейти в веб-интерфейс для управления по адресу https://<IP-адрес сервера Proxmox>:8006. В качестве логина вводим root и пароль, который указали во время установки системы.
После кликаем по учетной записи в правом верхнем углу и выбираем Language:
Откроется окно с выбором языка. Выбираем тот, с которым нам удобно работать:
Настройка входящих писем
Для настройки маршрутизации входящих писем необходимо:
- Указать IP-адрес внутреннего почтового сервера.
- Добавить домены, на которые должны приходить письма.
Для этого переходим в пункт меню Конфигурация - Почтовый прокси:
На вкладке Ретрансляция в поле «Транслятор по умолчанию» вводим IP-адрес почтового сервера, куда будут перенаправляться письма:
Переходим на вкладку Домены ретрансляции и добавляем обслуживаемые почтовые домены:
Для первых тестов рекомендуется на вкладке Параметры отключить серые списки:
* серые списки позволяют эффективно бороться со СПАМом, но замедляют работы почты. Это сильно будет мешать при первичном тестировании системы.
Также сразу зададим объем почтовых сообщений, которые могут проходить через Proxmox Mail Gateway. Для этого переходим на вкладку Параметры и меняем значение для опции «Размер письма»:
* в данном примере установлено значение 31457280, что равно 30 * 1024 * 1024 или 30 Мб.
Готово. Проверить прием почтовых сообщений можно с помощью онлайн сервиса smtper.net.
Настройка исходящих
В рамках данного раздела рассмотрим настройку Proxmox Mail Gateway для его использования как сервера отправки. Мы настроим сам Proxmox для его использования как ретранслятора исходящих сообщений и выполним рекомендации для того, чтобы наши сообщения не попадали в СПАМ.
Отправка сообщений
Снова заходим в Конфигурация - Почтовый прокси:
Во вкладке Сети необходимо указать IP-адреса или подсети, с которых будет разрешена пересылка писем:
* в моем примере для адреса 192.168.0.15 будет разрешена пересылка писем через Proxmox Mail Gateway.
Теперь переходим на вкладку Порты. Тут ничего менять не обязательно — просто смотрим номера:
* в данном примере перед нами порты 25 и 26. Это значит, что Proxmox Mail Gateway принимает входящие на порт 25, а сообщения для отправки на порт 26. Таким образом, наш внутренний почтовый сервер должен для отправки наружу писем через Proxmox использовать адрес ретранслятора и 26-й порт.
Теперь переходим к настройкам почтового сервера. Рассмотрим пример с конфигурированием postfix.
Открываем конфигурационный файл mail.cf:
vi /etc/postfix/main.cf
Находим и редактируем relayhost:
relayhost = [192.168.0.25]:26
* в данном примере отправка идет через хост с адресом 192.168.0.25, который слушает запросы smtp на порту 26.
Перезапускаем postfix, чтобы настройки применились:
systemctl restart postfix
Готово — можно проверить исходящие.
Защита от попадания в СПАМ
Чтобы исходящие письма доходили до адресата, необходимо выполнить ряд действий.
1. Настройка DKIM
Заходим в настройка почтового прокси:
Переходим на вкладку DKIM:
Добавляем наши домены:
Выше на той же вкладке включаем подписывание DKIM:
Кликаем по кнопке Просмотр DNS-записи:
Во всплывающем окне мы увидим запись, которую нужно добавить в DNS. Создаем соответствующую TXT-запись и ждем 15 минут. После проверяем DKIM.
2. Запись SPF
Для валидации каждого домена, от которого будут отправляться письма нужно создать запись SPF в DNS. Пример записи:
domain.ru. IN TXT "v=spf1 ip4:93.93.93.93 include:_spf.mailsystem.net -all"
Подробнее про SPF читайте на странице Что такое SPF-запись.
3. DMARC
Политика DMARC позволяет для каждого домена указать чужой почтовой системе, что делать с письмами, если они не проходят проверку домена по SPF и DKIM.
Пример записи:
v=DMARC1; p=quarantine; sp=none; pct=100; fo=0; rua=mailto:postmaster@dmosk.ru
Подробнее про DMARC читайте на странице Что такое DMARC.
4. PTR
Также антиспам системы используют проверку записи в обратной зоне. Смысл в том, что имя сервера, которым представляется почтовая система должен совпадать со значением записи PTR.
Данную запись должен создать Интернет-провайдер или хостер арендованной виртуальной машины. Подробнее про PTR читайте на странице Что такое PTR-запись.
Сама почтовая система представляется именем, которое указано в опции myhostname конфигурационного файла postfix. По умолчанию, она соответствуем имени сервера. Задать его можно командой:
hostnamectl set-hostname relay.dmosk.ru
Но Proxmox из коробки настроен так, что myhostname определяется автоматически опросом DNS. Проверить, каким именем он представляется можно из командной строки с помощью утилиты telnet:
apt install telnet
telnet 127.0.0.1 25
Мы должны увидеть что-то на подобие:
Connected to 127.0.0.1.
Escape character is '^]'.
220 mail.dmosk.ru ESMTP Proxmox
* в нашем примере почтовая система будет представляться именем сервера mail.dmosk.ru.
Если же Proxmox неправильно определяет имя и нужно его поменять, то создаем каталог:
mkdir /etc/pmg/templates
Копируем в него шаблон main.cf.in:
cp /var/lib/pmg/templates/main.cf.in /etc/pmg/templates/main.cf.in
Открываем его на редактирование:
vi /etc/pmg/templates/main.cf.in
Меняем значения для директив mydomain и myhostname:
mydomain = dmosk.ru
myhostname = mail.dmosk.ru
Применяем настройки:
pmgconfig sync --restart 1
Готово.
Дополнительные настройки
Рассмотрим некоторые дополнительные настройки, которые упростят работу с Proxmox Mail Gateway.
Репозиторий
По умолчанию система использует корпоративный репозиторий, для работы которого нужна платная подписка. Необходимо его отключить:
vi /etc/apt/sources.list.d/pmg-enterprise.list
#deb https://enterprise.proxmox.com/debian/pmg bullseye pmg-enterprise
И добавить репозиторий для бесплатного использования:
vi /etc/apt/sources.list.d/pmg-no-sub.list
deb http://download.proxmox.com/debian/pmg bullseye pmg-no-subscription
После обновляем список пакетов командой:
apt update
Обновление антивируса
В связи с блокировки российских IP-адресов, обновления антивируса ClamAV выполняются с ошибкой. Для решения проблемы подключаемся с серверу по SSH и открываем файл:
vi /etc/clamav/freshclam.conf
Комментируем строки, которые начинаются на DNSDatabaseInfo и DatabaseMirror:
##DatabaseMirror database.clamav.net
...
##DNSDatabaseInfo current.cvd.clamav.net
Добавляем строку:
PrivateMirror https://packages.microsoft.com/clamav/
Останавливаем службу clamav-freshclam:
systemctl stop clamav-freshclam
Удаляем старую информацию об обновлениях:
rm -f /var/lib/clamav/freshclam.dat
Запускаем обновление:
freshclam
Ждем обновления, после запускаем службу clamav-freshclam и перезапускаем clamav-daemon:
systemctl start clamav-freshclam
systemctl restart clamav-daemon
Теперь переходим в веб-интерфейс и заходим в раздел Конфигурация - Детектор вирусов:
Кликаем по вкладке ClamAV и также меняем зеркало базы данных на новое значение (на https://packages.microsoft.com/clamav/):
Планировщик отправки отчетов о СПАМе
Системой предусмотрена отправка отчетов о письмах, которые были отправлены в СПАМ. По умолчанию, это делается один раз в день, в 00:05.
Чтобы это изменить, открываем файл:
vi /lib/systemd/system/pmgspamreport.timer
Редактируем опцию OnCalendar:
OnCalendar=08-19/01:00:00
* в данном примере мы будем выполнять отправку отчета каждый час с 8 до 19.
Для применения настройки выполняем:
systemctl daemon-reload
Читайте также
Дополнительная информацию по работе с почтовыми системами:
1. Полноценный почтовый сервер с iRedMail на Ubuntu или Debian.
3. Большой почтовый сервер на Debian.
4. Полноценный почтовый сервер на Ubuntu Server.
5. Настройка почтового сервера для массовой рассылки сообщений.