sw_proxmox_mail_gw

Логотип Proxmox

Ansible Роль - Proxmox Mail Gateway

Роль для развертывания Proxmox Mail Gateway на сервере с Linux.

Купите мне кофе

Обработка входящих сообщений Proxmox

Статус теста Molecule Статус теста YamlLint Статус теста PyLint Статус теста Ansible-Lint Ansible Galaxy

Проверено на:

  • 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 по умолчанию

    • Опции по умолчанию:

    • Опции по умолчанию:


Информация

  • Предупреждение: ЕСЛИ ВЫ ИСПОЛЬЗУЕТЕ ПОСВЯЩЕННУЮ ВМ ДЛЯ ЭТОГО НАСТРОЙКИ:

    Вам, вероятно, следует использовать процесс установки 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
Лицензия
other
Загрузки
1604
Владелец
[email protected] | GPG: https://badges.ansibleguy.net/public.gpg