hispanico.nginx_revproxy

ansible-role-nginx_revproxy

Installiert und konfiguriert Nginx als Reverse-Proxy für mehrere Webseiten.

GitHub Qualität Downloads Galaxy Version
CI qualität downloads Galaxy Version

Anforderungen

Dieses Rollen benötigt Ansible 2.4 oder höher.

Rollenvariablen

Standardwerte:

nginx_revproxy_sites:                                         # Liste der Seiten für Reverse Proxy
  default:                                                    # Setze die Standardseite, um 444 (Verbindung geschlossen ohne Antwort) zurückzugeben
    ssl: false                                                # Auf True setzen, wenn du http nach https umleiten willst
    letsencrypt: false

  example.com:                                                # Domainname
    domains:                                                  # Liste der server_name Aliase
      - example.com
      - www.example.com
    upstreams:                                                # Liste der Upstreams
      - { backend_address: 192.168.0.100, backend_port: 80 }
      - { backend_address: 192.168.0.101, backend_port: 8080 }
    auth:                                                     # Definiere diesen Block für einen einzelnen HTTP Benutzer/Passwort, oder lasse ihn undefiniert für nicht authentifizierte vhosts
      login: meinbenutzername
      password: meinpasswort
    extra_locations:                                           # Setze diesen Block, um zusätzliche Standorte hinzuzufügen, oder lasse ihn undefiniert, wenn keine zusätzlichen Standorte benötigt werden
      websocket:                                              # Name des zusätzlichen Standorts
        upstreams:                                            # Liste der Upstreams für den zusätzlichen Standort
          - { backend_address: 192.168.0.102, backend_port: 8088 }
    listen: 9000                                              # Gib den Port an, auf dem du mit klarem HTTP hören möchtest, oder lasse ihn undefiniert für 80
    ssl: false                                                # Auf True setzen, wenn du http nach https umleiten willst
    letsencrypt: false                                        # Auf True setzen, wenn du letsencrypt verwenden möchtest
    conn_upgrade: true                                        # Setze die Werte für den Connection Upgrade Header
    acls:                                                     # Begrenze den Zugriff auf bestimmte Client-Adressen (Werte können Adresse, CIDR, Unix oder alle sein)
      - { mode: allow, value: 192.168.0.1 }
      - { mode: deny, value: all }

  example.org:                                                # Domainname
    domains:                                                  # Liste der server_name Aliase
      - example.org
      - www.example.org
    upstreams:                                                # Liste der Upstreams
      - { backend_address: 192.168.0.200, backend_port: 80 }
      - { backend_address: 192.168.0.201, backend_port: 8080 }
    listen: 9000                                              # Gib den Port an, auf dem du mit klarem HTTP hören möchtest, oder lasse ihn undefiniert für 80
    listen_ssl: 9001                                          # Gib den Port an, auf dem du mit HTTPS hören möchtest, oder lasse ihn undefiniert für 443
    ssl: true                                                 # Auf True setzen, wenn du http nach https umleiten willst
    ssl_certificate: /etc/ssl/certs/ssl-cert-snakeoil.pem     # ssl-Zertifikat, verwendet, wenn letsencrypt falsch ist
    ssl_certificate_key: /etc/ssl/private/ssl-cert-snakeoil.key # ssl-Zertifikatsschlüssel, verwendet, wenn letsencrypt falsch ist
    letsencrypt: false                                        # Auf True setzen, wenn du letsencrypt verwenden möchtest
    letsencrypt_email: ""                                     # Setze die E-Mail für das letsencrypt Zertifikat

nginx_revproxy_certbot_auto: false                             # Auf true setzen, um certbot-auto zu installieren

nginx_revproxy_certbot_packages:                              # Installiere diese Pakete aus dem Repository, wenn kein certbot-auto verwendet wird
  - certbot
  - python3-certbot-nginx

Abhängigkeiten

Keine.

Beispiel-Playbook

  - hosts: alle
    roles:
      - hispanico.nginx_revproxy
    vars:
      nginx_revproxy_sites:
        default:
          ssl: false
          letsencrypt: false

        example.com:
          domains:
            - example.com
            - www.example.com
          upstreams:
            - { backend_address: 192.168.0.100, backend_port: 80 }
            - { backend_address: 192.168.0.101, backend_port: 80 }
          ssl: true
          letsencrypt: false

Lizenz

Lizenziert unter der GPLv3-Lizenz. Siehe die LICENSE-Datei für Details.

Autoreninformation

Hispanico

Installieren
ansible-galaxy install hispanico.nginx_revproxy
Lizenz
gpl-3.0
Downloads
69.4k
Besitzer
@openwisp Contributor and @ninuxorg Member