sw_proxmox_mail_gw
Ansible Роль - Proxmox Mail Gateway
Роль для развертывания Proxmox Mail Gateway на сервере с Linux.
Проверено на:
- Debian 11
Установка
# последняя версия
ansible-galaxy role install git+https://github.com/ansibleguy/sw_proxmox_mail_gw
# из galaxy
ansible-galaxy install ansibleguy.sw_proxmox_mail_gw
# или в пользовательский путь для ролей
ansible-galaxy install ansibleguy.sw_proxmox_mail_gw --roles-path ./roles
# установка зависимостей
ansible-galaxy install -r requirements.yml
Предварительные требования
См. Предварительные требования
Использование
Хотите простой интерфейс Ansible? Ознакомьтесь с моим Ansible WebUI.
Конфигурация
Определите конфигурацию по мере необходимости:
pmg:
fqdn: 'pmg.template.ansibleguy.net' # допустимое, общественное DNS-имя вашего сервера
manage:
webserver: true # установите на false, чтобы отключить компонент nginx
nginx: # настройка параметров веб-сервера => см. https://github.com/ansibleguy/infra_nginx
aliases: ['mail-gw.ansibleguy.net'] # дополнительные домены для добавления в сертификат
ssl:
mode: 'letsencrypt' # или selfsigned/ca
# если вы используете 'selfsigned' или 'ca':
# cert:
# cn: 'Proxmox Mail Gateway'
# org: 'AnsibleGuy'
# email: '[email protected]'
letsencrypt:
email: '[email protected]'
Минимальный пример:
pmg:
fqdn: 'pmg.template.ansibleguy.net'
Пример использования встроенного ACME PMG:
pmg:
fqdn: 'pmg.template.ansibleguy.net'
nginx:
aliases: ['mail-gw.ansibleguy.net']
plain_site: false # nginx не будет привязан к порту 80
letsencrypt:
email: '[email protected]'
Пример - если вы хотите настроить postgreSQL вручную:
pmg:
fqdn: 'pmg.template.ansibleguy.net'
manage:
database: false
Возможно, вам будет удобно использовать 'ansible-vault' для шифрования паролей:
ansible-vault encrypt_string
Выполнение
Запустите плейбук:
ansible-playbook -K -D -i inventory/hosts.yml playbook.yml
Для отладки ошибок вы можете установить переменную 'debug' во время выполнения:
ansible-playbook -K -D -i inventory/hosts.yml playbook.yml -e debug=yes
Функциональность
Установка пакетов
- Зависимости Ansible (минимальные)
- Systemd
- Proxmox Mail Gateway
- Зависимости PMG
- postgreSQL
- Postfix
Конфигурация
установка postgreSQL по умолчанию
Опции по умолчанию:
- Nginx => использует ЭТУ Роль
Опции по умолчанию:
- Репозиторий apt для бизнеса (нужна подписка)
Информация
Предупреждение: ЕСЛИ ВЫ ИСПОЛЬЗУЕТЕ ПОСВЯЩЕННУЮ ВМ ДЛЯ ЭТОГО НАСТРОЙКИ:
Вам, вероятно, следует использовать процесс установки ISO.
Это может быть лучше поддерживается!
Примечание: эта роль в настоящее время поддерживает только системы на основе Debian.
Примечание: Большую часть функциональности роли можно включить или отключить.
Для всех доступных опций - смотрите файл конфигурации по умолчанию, расположенный в главном файле по умолчанию!
Предупреждение: Не каждая настройка/переменная, которую вы предоставляете, будет проверена на допустимость. Плохая конфигурация может сломать роль!
Предупреждение: Если вы решите установить веб-сервер nginx (по умолчанию) и хотите использовать встроенное управление сертификатами ACME - вам нужно будет настроить 'nginx.plain_site' на 'false'.
Так как эта 'интеграция ACME standalone' требует, чтобы порт 80 не использовался!
Примечание: Ознакомьтесь с хорошей документацией, предоставленной Proxmox!
Предупреждение: Контейнеры Docker НЕ ПОДДЕРЖИВАЮТСЯ.
Информация: Вход в веб-интерфейс PMG по умолчанию осуществляется через PAM/Системные пользователи.
Обычно, в первую очередь, через 'root'.
Ansible role to deploy Proxmox Mail Gateway on a linux server
ansible-galaxy install ansibleguy/sw_proxmox_mail_gw