ansibleguy.sw_proxmox_mail_gw
Ansible Rolle - Proxmox Mail Gateway
Rolle zur Bereitstellung des Proxmox Mail Gateway auf einem Linux-Server.
Getestet:
- Debian 11
Installation
# neueste Version
ansible-galaxy role install git+https://github.com/ansibleguy/sw_proxmox_mail_gw
# von Galaxy
ansible-galaxy install ansibleguy.sw_proxmox_mail_gw
# oder für benutzerdefinierten Rollenpfad
ansible-galaxy install ansibleguy.sw_proxmox_mail_gw --roles-path ./roles
# Abhängigkeiten installieren
ansible-galaxy install -r requirements.yml
Voraussetzungen
Siehe: Voraussetzungen
Nutzung
Möchten Sie eine einfache Ansible-GUI? Schauen Sie sich meine Ansible WebUI an.
Konfiguration
Definieren Sie die Konfiguration nach Bedarf:
pmg:
fqdn: 'pmg.template.ansibleguy.net' # gültiger, öffentlicher DNS-Hostname Ihres Servers
manage:
webserver: true # auf false setzen, um die Nginx-Komponente zu deaktivieren
nginx: # Konfigurieren Sie die Webserver-Einstellungen => siehe: https://github.com/ansibleguy/infra_nginx
aliases: ['mail-gw.ansibleguy.net'] # zusätzliche Domains zur Zertifikatsanpassung hinzufügen
ssl:
mode: 'letsencrypt' # oder selbstsigniert/ca
# falls Sie 'selbstsigniert' oder 'ca' verwenden:
# cert:
# cn: 'Proxmox Mail Gateway'
# org: 'AnsibleGuy'
# email: '[email protected]'
letsencrypt:
email: '[email protected]'
Minimalbeispiel:
pmg:
fqdn: 'pmg.template.ansibleguy.net'
Beispiel zur Verwendung des integrierten ACME von PMG:
pmg:
fqdn: 'pmg.template.ansibleguy.net'
nginx:
aliases: ['mail-gw.ansibleguy.net']
plain_site: false # Nginx wird nicht an Port 80 gebunden
letsencrypt:
email: '[email protected]'
Beispiel - wenn Sie PostgreSQL manuell einrichten möchten:
pmg:
fqdn: 'pmg.template.ansibleguy.net'
manage:
database: false
Sie können 'ansible-vault' verwenden, um Ihre Passwörter zu verschlüsseln:
ansible-vault encrypt_string
Ausführung
Führen Sie das Playbook aus:
ansible-playbook -K -D -i inventory/hosts.yml playbook.yml
Um Fehler zu debuggen - Sie können die 'debug'-Variable zur Laufzeit setzen:
ansible-playbook -K -D -i inventory/hosts.yml playbook.yml -e debug=yes
Funktionalität
Paketinstallation
- Ansible-Abhängigkeiten (minimal)
- Systemd
- Proxmox Mail Gateway
- PMG-Abhängigkeiten
- PostgreSQL
- Postfix
Konfiguration
Standardinstallation von PostgreSQL
Standardopt-ins:
- Nginx => unter Verwendung DIESE Rolle
Standardopt-outs:
- Enterprise APT-Repository (Abonnement erforderlich)
Informationen
Warnung: WENN SIE EINEN DEDIZIERTEN VM FÜR DIESES SETUP VERWENDEN:
Sie sollten wahrscheinlich den ISO-Installationsprozess verwenden.
Es könnte besser unterstützt werden!
Hinweis: Diese Rolle unterstützt derzeit nur debianbasierte Systeme.
Hinweis: Die meisten Funktionen der Rolle können aktiviert oder deaktiviert werden.
Für alle verfügbaren Optionen - siehe die Standardkonfiguration im Hauptstandard-Datei!
Warnung: Nicht jede Einstellung/Variable, die Sie bereitstellen, wird auf Gültigkeit überprüft. Schlechte Konfigurationen könnten die Rolle beeinträchtigen!
Warnung: Wenn Sie den Nginx-Webserver (Standard) installieren und die integrierte ACME-Zertifikatsverwaltung verwenden möchten, müssen Sie 'nginx.plain_site' auf 'false' konfigurieren.
Da diese 'ACME-Standalone-Integration' den Port 80 benötigt, um nicht in Gebrauch zu sein!
Hinweis: Schauen Sie sich die schöne Dokumentation von Proxmox an!
Warnung: Docker-Container WERDEN NICHT UNTERSTÜTZT.
Informationen: Die Standardanmeldung für die Weboberfläche von PMG erfolgt über PAM/Systembenutzer.
Normalerweise zuerst über 'root'.
Ansible role to deploy Proxmox Mail Gateway on a linux server
ansible-galaxy install ansibleguy.sw_proxmox_mail_gw