Хавари
Автор
159
Просмотров
3.17.162.250
Ваш IP
28 июля 2023
Дата создания

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

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

  • Автор: 
  •  

pmg-upgrade-6-to-7-000.pngПродолжаем тему обновления специализированных продуктов на базе Debian, сегодня речь пойдет о системе для защиты почты Proxmox Mail Gateway. Это достаточно простой, но эффективный шлюз, позволяющий отсекать основные потоки спама и вредоносных вложений в сообщениях электронной почты. В целом обновление на новую версию не несет каких-либо сложностей и на сайте разработчиков есть официальная инструкция, но тем не менее читатели продолжают задавать вопросы по поводу обновления. Поэтому и появилась эта статья.

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

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

Начнем с того, что обновление ОС - потенциально опасная операция, потеря контроля над ходом которой чревата самыми неприятными последствиями. Поэтому желательно производить ее непосредственно подключившись к консоли сервера, либо имея к нему физический доступ, если же это невозможно, то следует подстраховать себя от случайного обрыва связи используя такие утилиты как screen.

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

fsck -n -f

Если вы используете систему в контейнере Proxmox Virtual Environment, то включите в его свойствах вложенную виртуализацию Параметры - Features - Nesting :

pmg-upgrade-6-to-7-001.pngТеперь обновим систему до последнего выпуска в рамках текущей версии, для успешного обновления вы должны иметь версию PMG не ниже 6.4-4, это можно сделать как в графическом интерфейсе, так и из консоли, мы будем использовать здесь и далее только последний вариант:

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

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

Перед тем, как идти дальше создадим резервную копию текущей конфигурации Proxmox Mail Gateway:

pmgbackup backup

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

Теперь заменим репозитории системы с Debian 10 на Debian 11:

sed -i 's/buster/updates/bullseye-security/g;s/buster/bullseye/g' /etc/apt/sources.list

И репозитории самого Proxmox Mail Gateway, в нашем случае это некоммерческий репозиторий и возможно вам потребуется уточнить имя файла:

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

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

Остановим службы PMG:

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

И замаскируем их:

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

Маскировка отличается от выключения службы тем, то отключенную службу можно запустить вручную, с замаскированной это не удастся. В выводе команды отлично видно, как для юнитов создаются симлинки на /dev/null.

pmg-upgrade-6-to-7-002.pngТеперь обновим список пакетов в репозитории:

apt update

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

apt full-upgrade

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

pmg-upgrade-6-to-7-003.pngНа вопросы перезаписи измененных файлов конфигурации отвечаем нет (N) - это действие по умолчанию, достаточно просто нажать Enter.

pmg-upgrade-6-to-7-004.pngПосле завершение обновления не спешите перезагружаться, выполните сначала очистку системы от ненужных пакетов:

apt autoremove

Теперь систему следует перезагрузить.

Следующим шагом после перезагрузки будет апгрейд базы данных PostgreSQL, прежде всего удалим автоматически созданный кластер PostgreSQL 13:

pg_dropcluster --stop 13 main

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

pg_upgradecluster -v 13 11 main

В результате старый кластер версии 11 будет остановлен, а новый, версии 13 запущен, при этом сохраняется возможность запуска предыдущей версии на порту 5433:

pmg-upgrade-6-to-7-005.pngСнимем маскировку с ряда служб PMG:

systemctl unmask postfix pmg-smtp-filter pmgpolicy pmgdaemon pmgproxy

И перезагрузим сервер.

Затем снимаем маскировку еще с двух служб и запускаем их:

systemctl unmask pmgmirror pmgtunnel
systemctl start pmgmirror pmgtunnel

Теперь можем войти в веб-интерфейс и проверить работоспособность обновленного продукта:

pmg-upgrade-6-to-7-006.pngЕсли все хорошо - можем удалить старый кластер PostgreSQL:

apt purge postgresql-11 postgresql-client-11

На этом обновление Proxmox Mail Gateway до версии 7.x можно считать законченным.