HanXHX.nginx

Nginx dla roli Ansible na Debianie/FreeBSD

Ansible Galaxy GitHub Workflow Status (master branch)

Zainstaluj i skonfiguruj Nginx na Debianie/FreeBSD.

Cechy:

  • Wsparcie dla zabezpieczeń SSL/TLS
  • Zarządzanie podstawową autoryzacją na stronie/lokalizacji
  • Proxy + Upstream
  • Szybka konfiguracja PHP
  • Wstępnie skonfigurowane szablony stron (powinny działać dla wielu aplikacji)
  • Automatyczna konfiguracja HTTP2 na stronach SSL/TLS
  • Zarządzanie dynamicznymi modułami (instalacja i ładowanie)
  • Wdrażanie własnych faktów d z konfiguracją stron
  • Może korzystać z protokołu proxy
  • Generowanie certyfikatów za pomocą acme.sh (let's encrypt) -- EKSPERYMENTALNE

Obsługiwane systemy operacyjne:

System Operacyjny Działa Stabilny (aktywne wsparcie)
Debian Jessie (8) Tak Sprawdź najnowszą obsługiwaną wersję (1.5.0)
Debian Stretch (9) Tak Sprawdź najnowszą obsługiwaną wersję (1.9.0)
Debian Buster (10) Tak Tak
Debian Bullseye (11) Tak Tak
Debian Bookworm (12) Tak Jeszcze nie :)
FreeBSD 11 NA Nie
FreeBSD 12 NA Nie
Ubuntu 20.04 Tak Tak
Ubuntu 22.04 Tak Tak

Wymagania

  • Ansible >=2.11
  • Jeśli ustawisz nginx_backports na true, musisz zainstalować repozytorium backports przed uruchomieniem tej roli.

Zmienne roli

Pakowanie

Debian:

  • nginx_apt_package: Pakiet APT nginx (spróbuj: apt-cache search ^nginx)
  • nginx_backports: Zainstaluj nginx z repozytorium backport (bool)

FreeBSD:

  • nginx_pkgng_package: Pakiet PKGNG nginx (powinno być "nginx" lub "nginx-devel")

Wspólne

  • nginx_root: główny katalog, w którym chcesz mieć swoje pliki
  • nginx_log_dir: katalog logów (jeśli go zmienisz, nie zapomnij zmienić konfiguracji logrotate)
  • nginx_resolver: lista resolverów DNS (domyślnie: OpenDNS)
  • nginx_error_log_level: domyślny poziom logowania
  • nginx_auto_config_httpv2: boolean, automatyczna konfiguracja HTTP2 gdzie to możliwe
  • nginx_fastcgi_fix_realpath: boolean, użycie realpath dla fastcgi (naprawia problemy z symlinkami i PHP opcache)
  • nginx_default_hsts: ciąg, domyślny nagłówek wysyłany dla HSTS

Konfiguracja Nginx

  • nginx_user
  • nginx_worker_processes
  • nginx_pid: plik pid dla demona
  • nginx_events_*: wszystkie zmienne w bloku events
  • nginx_http_*: wszystkie zmienne w bloku http
  • nginx_custom_core: lista instrukcji (dla rdzenia, umieści dane w /etc/nginx/nginx.conf)
  • nginx_custom_http: lista instrukcji (umieści dane w /etc/nginx/conf.d/custom.conf)
  • nginx_module_packages: lista pakietów modułów do zainstalowania (Debian)
  • nginx_load_modules: lista modułów do załadowania (pełna ścieżka), powinna być używana tylko na FreeBSD

Różne

  • nginx_debug_role: ustaw true, jeśli potrzebujesz zobaczyć wyniki zadań no_log

O modułach

Ostatnie aktualizacje z backportów Debiana ładują moduły z katalogu /etc/nginx/modules-enabled. Wyłączenie/włączenie nie jest już obsługiwane. Proszę czekać na dalsze aktualizacje.

Doskonała konfiguracja

Konfiguracja strony

Konfiguracja PHP

Konfiguracja Upstream

Konfiguracja SSL/TLS

Podstawowa autoryzacja

FreeBSD

acme.sh

Uwaga

  • Aktywne wsparcie dla Debiana/Ubuntu.
  • Wsparcie FreeBSD jest experimentalne. Na razie testuję 10.2 (ale może działać na innych wersjach).

Zależności

Zobacz: requirements.yml.

Jeśli potrzebujesz rozwijać tę rolę lokalnie w Vagrant

Przed użyciem vagranta, uruchom raz:

ansible-galaxy install -p ./tests/ HanXHX.php,master

Jeśli potrzebujesz rozwijać tę rolę lokalnie z użyciem molecule

Sprawdź dostępne scenariusze w katalogu molecule.

Ze scenariuszem debian-12:

molecule -v -c molecule/_shared/base.yml verify -s debian-12

Przykład Playbooka

Zobacz tests/test.yml.

Licencja

GPLv2

Darowizna

Jeśli ten kod Ci pomógł, lub jeśli go używałeś w swoich projektach, możesz poczęstować mnie piwem :beers:

  • Bitcoin: 1BQwhBeszzWbUTyK4aUyq3SRg7rBSHcEQn
  • Ethereum: 63abe6b2648fd892816d87a31e3d9d4365a737b5
  • Litecoin: LeNDw34zQLX84VvhCGADNvHMEgb5QyFXyD
  • Monero: 45wbf7VdQAZS5EWUrPhen7Wo4hy7Pa7c7ZBdaWQSRowtd3CZ5vpVw5nTPphTuqVQrnYZC72FXDYyfP31uJmfSQ6qRXFy3bQ

Nie masz kryptowaluty? :star: projekt również jest sposobem na powiedzenie dziękuję! :sunglasses:

Informacje o autorze

Zainstaluj
ansible-galaxy install HanXHX.nginx
Licencja
gpl-2.0
Pobrania
6.1k
Właściciel
CEO/CTO/SRE triplestack.fr / daemonit.com