Das folgende Skript baut einen Nginx Server aus dem Nginx GIT Source, erstellt einen systemd service und
startet den Nginx. Wichtig: Unbedingt die OpenSSL Version prüfen! Alte OpenSSL Versionen haben z.T. böse Securityprobleme.

Die Skripte sind unter https://github.com/ip6li/nginx-build-docker zu finden.

DocumentRoot ist per Default unter /usr/local/nginx/html/ zu finden.

Konfiguration

Damit die neuen Features TLS 1.3 und Brotli auch funktionieren, müssen diese konfiguriert werden.

Im Abschnitt "http":

    brotli on;     brotli_static on;     brotli_buffers 16 8k;     brotli_comp_level 6;     brotli_types *;

Im Abschnutt "server":

    ssl_protocols  TLSv1.2 TLSv1.3;     ssl_ecdh_curve X25519:prime256v1:secp521r1:secp384r1;     ssl_ciphers TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-256-GCM-SHA384:TLS13-AES-128-GCM-SHA256:CHACHA20-POLY1305-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-CHACHA20-POLY1305:RSA-PSK-CHACHA20-POLY1305:DHE-PSK-CHACHA20-POLY1305:ECDHE-PSK-CHACHA20-POLY1305:PSK-CHACHA20-POLY1305:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:ECDHE-RSA-DES-CBC3-SHA:ECDHE-ECDSA-DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA;