Продолжаем тему обновления специализированных продуктов на базе Debian, сегодня речь пойдет о системе для защиты почты Proxmox Mail Gateway. Это достаточно простой, но эффективный шлюз, позволяющий отсекать основные потоки спама и вредоносных вложений в сообщениях электронной почты. В целом обновление на новую версию не несет каких-либо сложностей и на сайте разработчиков есть официальная инструкция, но тем не менее читатели продолжают задавать вопросы по поводу обновления. Поэтому и появилась эта статья.
Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Данный материал создан на основе официальной инструкции и во многом повторяет ее, однако мы добавили в нее ряд возможно неочевидных, но достаточно важных действий.
Начнем с того, что обновление ОС - потенциально опасная операция, потеря контроля над ходом которой чревата самыми неприятными последствиями. Поэтому желательно производить ее непосредственно подключившись к консоли сервера, либо имея к нему физический доступ, если же это невозможно, то следует подстраховать себя от случайного обрыва связи используя такие утилиты как screen.
Об этом редко пишут в инструкциях, но если вы используете Proxmox Mail Gateway установленный на железо, то начните подготовку к обновлению с проверки состояния файловой системы. Очень часто бывает, что проблемы с накопителем незаметные при текущей эксплуатации могут проявиться при обновлении и привести к полному краху системы.
fsck -n -f
Если вы используете систему в контейнере Proxmox Virtual Environment, то включите в его свойствах вложенную виртуализацию Параметры - Features - Nesting :
Теперь обновим систему до последнего выпуска в рамках текущей версии, для успешного обновления вы должны иметь версию 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.
Теперь обновим список пакетов в репозитории:
apt update
И выполним полное обновление системы:
apt full-upgrade
Как показывает практика, не все знают как правильно выйти из подобного окна, достаточно просто нажать q, если не нажимается - проверить раскладку клавиатуры.
На вопросы перезаписи измененных файлов конфигурации отвечаем нет (N) - это действие по умолчанию, достаточно просто нажать Enter.
После завершение обновления не спешите перезагружаться, выполните сначала очистку системы от ненужных пакетов:
apt autoremove
Теперь систему следует перезагрузить.
Следующим шагом после перезагрузки будет апгрейд базы данных PostgreSQL, прежде всего удалим автоматически созданный кластер PostgreSQL 13:
pg_dropcluster --stop 13 main
И выполним преобразование существующего кластера:
pg_upgradecluster -v 13 11 main
В результате старый кластер версии 11 будет остановлен, а новый, версии 13 запущен, при этом сохраняется возможность запуска предыдущей версии на порту 5433:
Снимем маскировку с ряда служб PMG:
systemctl unmask postfix pmg-smtp-filter pmgpolicy pmgdaemon pmgproxy
И перезагрузим сервер.
Затем снимаем маскировку еще с двух служб и запускаем их:
systemctl unmask pmgmirror pmgtunnel
systemctl start pmgmirror pmgtunnel
Теперь можем войти в веб-интерфейс и проверить работоспособность обновленного продукта:
Если все хорошо - можем удалить старый кластер PostgreSQL:
apt purge postgresql-11 postgresql-client-11
На этом обновление Proxmox Mail Gateway до версии 7.x можно считать законченным.
Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Последние комментарии