New cert from adcs to Proxmox Mail Gateway (Pmg).
Многие пользователи, переходя по прямой ссылке в письме на добавление адреса или в Witelist, или в BlackList, сталкиваются с пугающим окном отсутствия сертификата при входе на Web страницу-это вызывает некоторое смятение, они не знают, что делать дальше, и просто сразу закрывают окно. Ну и когда сам заходишь на Web интерфейс управления pmg, окно тоже слегка раздражает, но не сильно 🙂
Поэтому можно это исправить.
1. проверка версии
root@pmg:~# openssl version
OpenSSL 1.1.1n 15 Mar 2022
2. создание запроса
root@pmg:~# openssl req -new -subj «/C=RU/ST=Moscow/L=Moscow/O=Group/OU=IT/CN=pmg.test.local» -out pmg.test.local.csr -addext «subjectAltName=DNS:pmg.test.local» -nodes -keyout pmg.test.local.privkey.pem
3. выводим запрос
root@pmg:~# cat pmg.test.local.csr
——BEGIN CERTIFICATE REQUEST——
…
ABBRA
CADABBRA
…
——END CERTIFICATE REQUEST——
*4. переносим сертификат на сервер. можно загрузить по scp, я просто открываю его в блокноте и вставляю в файл на линухе
root@pmg:~# nano pmg.test.local.cert.p7b
5. конвертируем
root@pmg:~# openssl pkcs7 -in pmg.test.local.cert.p7b -print_certs -out pmg.test.local.cert.pem
6. резервируем
root@pmg:~# cp /etc/pmg/pmg-api.pem /etc/pmg/pmg-api.pem.bak
7. согласно инструкции складываем полученный серт и закрытый ключ в файлик и перезапускаем службу pmgproxy
root@pmg:~# cat pmg.test.local.privkey.pem pmg.test.local.cert.pem > /etc/pmg/pmg-api.pem
root@pmg:~# systemctl restart pmgproxy
root@pmg:~# systemctl status pmgproxy
И, больше никакого пугающего окна при входе нет 🙂
Всем хорошей работы !!!
Extend LVM volume Proxmox mail gateway (PMG).
В определенный момент стало понятно, что 60G, выделенных ранее почтовому релею PMG, недостаточно:
Пришло время расширить виртуалку: итак, у меня было 60G докидываю в виртуалку еще 40G.
после расширения диска с 60 до 100 гб в гипервизоре, надо еще раздвинуть границы сознания раздела. Для этого ставим утилиту growpart из пакета cloud-guest-utils
https://packages.debian.org/ru/sid/cloud-guest-utils
root@pmg:~# apt-get install cloud-guest-utils
Reading package lists… Done
Building dependency tree… Done
Reading state information… Done
Suggested packages:
cloud-init
The following NEW packages will be installed:
cloud-guest-utils
0 upgraded, 1 newly installed, 0 to remove and 3 not upgraded.
Need to get 23.7 kB of archives.
After this operation, 62.5 kB of additional disk space will be used.
Get:1 http://ftp.ru.debian.org/debian bullseye/main amd64 cloud-guest-utils all 0.31-2 [23.7 kB]
Fetched 23.7 kB in 0s (295 kB/s)
Selecting previously unselected package cloud-guest-utils.
(Reading database … 49752 files and directories currently installed.)
Preparing to unpack …/cloud-guest-utils_0.31-2_all.deb …
Unpacking cloud-guest-utils (0.31-2) …
Setting up cloud-guest-utils (0.31-2) …
Processing triggers for man-db (2.9.4-2) …
# Ядро системы не понимает, что появилось дополнительное место в объеме 40G, поэтому добавленного места никак не видно.
# Для начала посмотрим с каким разделом нам работать.
root@pmg:~# fdisk -l
Device Start End Sectors Size Type
/dev/sda1 34 2047 2014 1007K BIOS boot
/dev/sda2 2048 1050623 1048576 512M EFI System
/dev/sda3 1050624 125829086 124778463 59.5G Linux LVM
# видим, что наш основной раздел, который необходимо расширить-это /dev/sda3
root@pmg:~# growpart -N /dev/sda 3
NOCHANGE: partition 3 is size 124778463. it cannot be grown
# ключ -N как раз только only report what would be done
# так как дополнительного объема до сих пор не видно, то и расширять нечего (it cannot be grown), поэтому надо об этом сообщить ядру. Можно, конечно, ребутнуть машину, но не хотелось бы во время работы.
root@pmg:~# echo 1 > /sys/class/block/sda/device/rescan
root@pmg:~# dmesg | tail -2
[1820746.392044] sd 2:0:0:0: [sda] 209715200 512-byte logical blocks: (107 GB/100 GiB)
[1820746.392197] sda: detected capacity change from 125829120 to 209715200
# посмотрим последние две строчки сообщений ядра dmesg
# как мы видим, диск всё-таки подрос. Посмотрим, что теперь скажет growpart
root@pmg:~# growpart -N /dev/sda 3
CHANGE: partition=3 start=1050624 old: size=124778463 end=125829087 new: size=208664543 end=209715167
# === old sfdisk -d ===
label: gpt
label-id: 3BB9AE04-45B8-4D25-9FBC-E58BE94B68EF
device: /dev/sda
unit: sectors
first-lba: 34
sector-size: 512
/dev/sda1 : start= 34, size= 2014, type=21686148-6449-6E6F-744E-656564454649, uuid=0B1A1004-52CF-4AF1-9C06-EC9DA2C09A90
/dev/sda2 : start= 2048, size= 1048576, type=C12A7328-F81F-11D2-BA4B-00A0C93EC93B, uuid=0E6443EC-4CF8-47B7-909F-CA762D077311
/dev/sda3 : start= 1050624, size= 124778463, type=E6D6D379-F507-44C2-A23C-238F2A3DF928, uuid=25DA5685-4CC5-4777-A204-F54AB1D2773E
# === new sfdisk -d ===
label: gpt
label-id: 3BB9AE04-45B8-4D25-9FBC-E58BE94B68EF
device: /dev/sda
unit: sectors
first-lba: 34
sector-size: 512
/dev/sda1 : start= 34, size= 2014, type=21686148-6449-6E6F-744E-656564454649, uuid=0B1A1004-52CF-4AF1-9C06-EC9DA2C09A90
/dev/sda2 : start= 2048, size= 1048576, type=C12A7328-F81F-11D2-BA4B-00A0C93EC93B, uuid=0E6443EC-4CF8-47B7-909F-CA762D077311
/dev/sda3 : start= 1050624, size= 208664543, type=E6D6D379-F507-44C2-A23C-238F2A3DF928, uuid=25DA5685-4CC5-4777-A204-F54AB1D2773E
# опа. предлагает раздвинуть диск аж на 80 мильонов блоков, тоесть на 40 гиг. Поехали, запускаем growpart, но уже без флага -N (Nичего Nе Nачинай)
root@pmg:~# growpart /dev/sda 3
CHANGED: partition=3 start=1050624 old: size=124778463 end=125829087 new: size=208664543 end=209715167
# что-то успешно поменялось
root@pmg:~# df -h /
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/pmg-root 45G 39G 3.1G 93% /
root@pmg:~# resize2fs /dev/sda3
resize2fs 1.46.2 (28-Feb-2021)
resize2fs: Device or resource busy while trying to open /dev/sda3
Couldn’t find valid filesystem superblock.
# раздел раздвинулся, но ожидаемо, этого мало. надо еще подпилить разделы pvresize и lvextend
root@pmg:~# pvresize /dev/sda3
Physical volume «/dev/sda3» changed
1 physical volume(s) resized or updated / 0 physical volume(s) not resized
root@pmg:~# lvextend -r -l +100%FREE /dev/mapper/pmg-root
Size of logical volume pmg/root changed from 45.12 GiB (11552 extents) to <92.50 GiB (23679 extents).
Logical volume pmg/root successfully resized.
resize2fs 1.46.2 (28-Feb-2021)
Filesystem at /dev/mapper/pmg-root is mounted on /; on-line resizing required
old_desc_blocks = 6, new_desc_blocks = 12
The filesystem on /dev/mapper/pmg-root is now 24247296 (4k) blocks long.
# снова смотрим, что получилось.
root@pmg:~# df -h /
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/pmg-root 91G 39G 48G 45% /
# теперь видно, что наконец все сложилось как надо без всяких перезагрузок и выключений
Всем хорошей работы!!!
Install Proxmox Mail Gateway. Tuning (part 4).
Почтовый релей заработал в штатном режиме. При необходимости его можно слегка «дотюнить», и сегодня как раз об этом…
На одном из форумов по теме, прочитал, что PMG по умолчанию, не видит RAR архивы (понимает только zip, gz и т.д.)
Если в логах, что- то типа:
Надо бы это исправить:
необходимо установить соответствующие библиотеки. Для этого сначала подключим репозитории Debian. Для PMG 6-й версии создаем в /etc/apt/source.list.d/ файл со ссылками на репозитории Debian (например pmg-no-subscription.list) со следующим содержимым:
touch /etc/apt/sources.list.d/pmg-no-subscription.list
nano /etc/apt/sources.list.d/pmg-no-subscription.list
deb http://deb.debian.org/debian buster main contrib non-free
deb-src http://deb.debian.org/debian buster main contrib non-free
deb http://deb.debian.org/debian-security/ buster/updates main contrib non-free
deb-src http://deb.debian.org/debian-security/ buster/updates main contrib non-free
deb http://deb.debian.org/debian buster-updates main contrib non-free
deb-src http://deb.debian.org/debian buster-updates main contrib non-free
Обновляем перечень пакетов и устанавливаем библиотеки RAR для Proxmox Mail Gateway:
apt update
apt install libclamunrar p7zip-rar
После этого возможно потребуется перезапустить службы PMG. Для проверки отправьте себе заархивированный в RAR исполняемый файл и в разделе Tracking Center убедитесь, что почтовый фильтр успешно работает с RAR архивами.
Осталось еще настроить оповещение пользователей о том, что какие-то нужные сообщения могли попасть в спам, чтоб они самостоятельно могли перейти по ссылке и дослать себе письмо.
Об этом здесь.
Копируем,
cp /var/lib/pmg/templates/spamreport-verbose.tt /var/lib/pmg/templates/spamreport-custom.tt
далее уже правим:
nano /var/lib/pmg/templates/spamreport-custom.tt
В настройках выбираем:
Нас интересуют именно вот эти три поля (Custom-это ссылка на только что поправленный шаблон, порт почему-то по умолчанию тут не прописан, поэтому ничего не откроется, здесь вписываем 8006, и Quarantine Host-none).
Где можно сразу провалиться в письмо, и самому отрулить, что именно делать с письмом.
Можно дотюнить что-то еще, об этом написано тут:
Но я больше пока не стал загоняться…
В конце своего повествования, немного статистики эксплуатации.
Еще один важный момент, который заметен не сразу или не заметен вообще. Проскакивают ошибки, когда сервера получателей проверяют нашу spf запись, не могут его проверить и отфутболивают письмо. На самом деле, spf запись присутствует и на прописана в нашей внешней DNS зоне, но здесь мой Relay использует внутренние DNS сервера, поэтому необходимо добавить spf записи в зонах моих локальных DNS серверов.
На этом пока все… Пост буду дополнять по мере возникающих вопросов.
Отдельная благодарность коллегам TSA и Станиславу за нужные рекомендации и правильные советы.
Полезные ссылки по теме:
https://pmg.proxmox.com/pmg-docs/pmg-admin-guide.html
https://habr.com/ru/post/662670/
https://interface31.livejournal.com/65886.html
Всем хорошей работы!!!