hispanico.nginx_revproxy

ansible-role-nginx_revproxy

Instalacja i konfiguracja Nginx jako serwera pośredniczącego (reverse proxy) dla wielu stron internetowych.

GitHub Jakość Pobrania Galaxy Wersja
CI quality downloads Galaxy Version

Wymagania

Ta rola wymaga Ansible 2.4 lub wyższej.

Zmienne roli

Domyślne wartości:

nginx_revproxy_sites:                                         # Lista stron do reverse proxy
  default:                                                    # Ustaw domyślną stronę, aby zwracała 444 (połączenie zamknięte bez odpowiedzi)
    ssl: false                                                # Ustaw na True, jeśli chcesz przekierować http na https
    letsencrypt: false

  example.com:                                                # Nazwa domeny
    domains:                                                  # Lista aliasów server_name
      - example.com
      - www.example.com
    upstreams:                                                # Lista upstreamów
      - { backend_address: 192.168.0.100, backend_port: 80 }
      - { backend_address: 192.168.0.101, backend_port: 8080 }
    auth:                                                     # Zdefiniuj ten blok dla pojedynczego użytkownika/hasła HTTP lub pozostaw nieskonfigurowany dla niezautoryzowanych vhostów
      login: myusername
      password: mysecretpassword
    extra_locations:                                           # Ustaw ten blok, aby dodać dodatkową lokalizację, lub pozostaw niezdefiniowany jeśli dodatkowa lokalizacja nie jest potrzebna
      websocket:                                              # nazwa dodatkowej lokalizacji
        upstreams:                                            # lista upstreamów dla dodatkowej lokalizacji
          - { backend_address: 192.168.0.102, backend_port: 8088 }
    listen: 9000                                              # Określ, na którym porcie chcesz nasłuchiwać z użyciem zwykłego HTTP, lub pozostaw niezdefiniowany dla 80
    ssl: false                                                # Ustaw na True, jeśli chcesz przekierować http na https
    letsencrypt: false                                        # Ustaw na True, jeśli chcesz używać letsencrypt
    conn_upgrade: true                                        # Ustaw wartości nagłówka Connection upgrade
    acls:                                                     # Ogranicz dostęp do określonych adresów klientów (wartości mogą być adresem, CIDR, unix lub all)
      - { mode: allow, value: 192.168.0.1 }
      - { mode: deny, value: all }

  example.org:                                                # Nazwa domeny
    domains:                                                  # Lista aliasów server_name
      - example.org
      - www.example.org
    upstreams:                                                # Lista upstreamów
      - { backend_address: 192.168.0.200, backend_port: 80 }
      - { backend_address: 192.168.0.201, backend_port: 8080 }
    listen: 9000                                              # Określ, na którym porcie chcesz nasłuchiwać z użyciem zwykłego HTTP, lub pozostaw niezdefiniowany dla 80
    listen_ssl: 9001                                          # Określ, na którym porcie chcesz nasłuchiwać za pomocą HTTPS, lub pozostaw niezdefiniowany dla 443
    ssl: true                                                 # Ustaw na True, jeśli chcesz przekierować http na https
    ssl_certificate: /etc/ssl/certs/ssl-cert-snakeoil.pem     # certyfikat ssl, używany jeśli letsencrypt jest fałszywy
    ssl_certificate_key: /etc/ssl/private/ssl-cert-snakeoil.key # klucz certyfikatu ssl, używany jeśli letsencrypt jest fałszywy
    letsencrypt: false                                        # Ustaw na True, jeśli chcesz użyć letsencrypt
    letsencrypt_email: ""                                     # Ustaw e-mail dla certyfikatu letsencrypt

nginx_revproxy_certbot_auto: false                             # Ustaw na true, aby zainstalować certbot-auto

nginx_revproxy_certbot_packages:                              # Zainstaluj te pakiety z repozytorium, gdy nie używasz certbot-auto
  - certbot
  - python3-certbot-nginx

Zależności

Brak.

Przykładowy plik Playbook

  - hosts: all
    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

Licencja

Licencjonowane na podstawie licencji GPLv3. Zobacz plik LICENSE po szczegóły.

Informacje o autorze

Hispanico

Zainstaluj
ansible-galaxy install hispanico.nginx_revproxy
Licencja
gpl-3.0
Pobrania
69.4k
Właściciel
@openwisp Contributor and @ninuxorg Member