Настройка SMTP Relay в среде Proxmox для эффективной отправки электронных уведомлений. В статье рассмотрены шаги по установке необходимых зависимостей, настройке Postfix, и интеграции с внешним SMTP-сервером, включая ключевые шаги, такие как создание файлов конфигурации, обновление разрешений и проверка корректности настроек.
apt update apt install -y libsasl2-modules postfix-pcre
Устанавливаем необходимые пакеты, включая библиотеки SASL и версию Postfix, скомпилированную с поддержкой PCRE (Perl Compatible Regular Expressions).
echo "[smtp.yandex.ru]:465 [email protected]:Password" > /etc/postfix/sasl_passwd
Устанавливаум учетные данные для входа на SMTP-сервер Yandex.
chmod 600 /etc/postfix/sasl_passwd
Изменяем разрешения файла `sasl_passwd`, чтобы он был доступен только для чтения владельцу.
echo "[email protected] [smtp.yandex.ru]:465" > /etc/postfix/sender_relay
echo "/^From:.*/ REPLACE From: PVE-Allert" > /etc/postfix/header_checks
Эта команда устанавливает правило для замены поля «From» в исходящих электронных письмах.
echo "[email protected] [email protected]" > /etc/postfix/generic
nano /etc/postfix/main.cf
Удаляем содержимое и вставляем конфиг:
# sasl аутентификация отправителя smtp_sender_dependent_authentication = yes sender_dependent_relayhost_maps = hash:/etc/postfix/sender_relay smtp_header_checks = pcre:/etc/postfix/header_checks # релей хост по умолчанию relayhost = [smtp.yandex.ru]:465 # smtp аутентификация smtp_sasl_auth_enable = yes smtp_tls_ciphers = high smtp_tls_protocols = !SSLv2, !SSLv3 smtp_generic_maps = hash:/etc/postfix/generic smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd smtp_sasl_security_options = noanonymous smtp_sasl_tls_security_options = noanonymous # ключи центров сертификации, в системе по-умолчанию smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt smtp_use_tls = yes inet_protocols = ipv4 smtp_tls_security_level = encrypt smtp_tls_wrappermode = yes
postmap /etc/postfix/sender_relay /etc/postfix/sasl_passwd /etc/postfix/generic /etc/postfix/header_checks
Эта команда создает хеш-базы данных для файлов конфигурации.
cat /etc/postfix/sender_relay.db
cat /etc/postfix/sasl_passwd.db
cat /etc/postfix/generic.db
cat /etc/postfix/header_checks.db
service postfix reload
echo "Это тестовое сообщение, отправленное из Postfix на моем сервере Proxmox" | mail -s "Тестовое письмо от Proxmox" [email protected]