Обновляем Proxmox Mail Gateway с версии 7 до 8

В завершении цикла об обновлении продуктов Proxmox мы рассмотрим сегодня самый узкоспециализированный - почтовый шлюз Proxmox Mail Gateway. Это простое в использовании и бесплатное решение для фильтрации потоков входящей и исходящей почты и эффективное решение для борьбы со спамом и вредоносными вложениями. Каких-либо подводных камней при обновлении шлюза на новую версию нет и на официальном сайте присутствует инструкция, но по уже сложившейся традиции мы публикуем русскоязычный материал с собственными дополнениями.

Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

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

1fsck -n -f

Затем обновим текущую версию до последнего выпуска:

1apt update -y && apt full-upgrade -y && apt autoremove -y

После обновления обязательно перезагрузим сервер.

Так как обновление - это потенциально опасный процесс, то проверьте, что у вас есть надежная связь с сервером резервного копирования и возможность физического доступа (или IP-KVM) к нему. Во избежание проблем при кратковременном обрыве связи или непреднамеренном закрытии терминала используйте утилиту screen или аналоги.

Внимание!

Важно! Ни в коем случае не используйте веб-терминал в интерфейсе Proxmox Mail Gateway, в этом случае связь будет обязательно потеряна и обновление завершится неудачей.

Перед обновлением выполним резервное копирование настроек шлюза:

1pmgbackup backup

Копия будет создана в директории /var/lib/pmg/backup, рекомендуем скопировать ее за пределы сервера.

Перед тем, как продолжить, убедимся, что версия продукта 7.3-6 или выше, для этого можно воспользоваться командой:

1pmgversion

Затем запустим скрипт, который выполнит оценку готовности шлюза к обновлению:

1pmg7to8

Если есть ошибки, они выделены красным, то их надо обязательно исправить. Предупреждения (желтые) обычно не препятствуют обновлению, но могут привести к различным нежелательным последствиям, поэтому также рекомендуем их внимательно изучить.

Заменим репозитории Debian 11 на 12:

1sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list

После чего заменим репозитории Proxmox, мы используем некоммерческие репозитории, в вашем случае возможно придется уточнить путь к файлу:

1sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list.d/pmg-no-subscription.list

Остановим и замаскируем ряд служб для предотвращения появления изменений в базе во время обновления.

1systemctl stop postfix pmg-smtp-filter pmgpolicy pmgdaemon pmgproxy pmgmirror pmgtunnel
2systemctl mask postfix pmg-smtp-filter pmgpolicy pmgdaemon pmgproxy pmgmirror pmgtunnel

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

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

1apt update

И выполнить обновление системы:

1apt full-upgrade

Для тех, кто не знает: подобные окна закрываются нажатием на букву q.

На вопросы перезаписи файлов отвечаем отрицательно - N или просто нажимаем Enter, так как "No" - действие по умолчанию.

По окончании процесса обновления выполним очистку:

1apt autoremove
2apt clean

И перезагрузим систему:

1reboot

После перезагрузки сразу отключим службу ClamAV On-Access Scanner, которая не используется Proxmox Mail Gateway и будет только мешать работе:

1systemctl disable clamav-clamonacc.service

После чего произведем апгрейд кластера СУБД с Postgres 13 на 15. Сначала удалим созданный по умолчанию кластер:

1pg_dropcluster --stop 15 main

Затем проапгрейдим уже существующий:

1pg_upgradecluster -v 15 13 main

Снимем маскировку с части служб:

1systemctl unmask postfix pmg-smtp-filter pmgpolicy pmgdaemon pmgproxy

И перезапустим систему:

1reboot

После перезагрузки снова снимем маскировку и запустим оставшиеся службы:

1systemctl unmask pmgmirror pmgtunnel
2systemctl start pmgmirror pmgtunnel

И, наконец, удалим старую версию PostgreSQL:

1apt purge postgresql-13 postgresql-client-13

Теперь можно обновить веб-интерфейс и перейти к работе в новой версии Proxmox Mail Gateway:

Если ваш сервер находится в юрисдикции РФ, то может потребоваться заменить адрес зеркала ClamAV, так как официальные зеркала заблокированы для пользователей из РФ. Для этого перейдите в Configuration - Virus Detector - ClamAV и в строке Database Mirror укажите зеркало:

1https://pivotal-clamav-mirror.s3.amazonaws.com

На этом процесс обновления Proxmox Mail Gateway на версию 8 завершен.

Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Поддержи проект!

Или подпишись на наш Телеграм-канал: Подпишись на наш Telegram-канал