Zum Inhalt

doh: NGINX-Modul zum Bereitstellen von DNS-over-HTTPS (DOH) Anfragen

Installation

Sie können dieses Modul in jeder RHEL-basierten Distribution installieren, einschließlich, aber nicht beschränkt auf:

  • RedHat Enterprise Linux 7, 8, 9 und 10
  • CentOS 7, 8, 9
  • AlmaLinux 8, 9
  • Rocky Linux 8, 9
  • Amazon Linux 2 und Amazon Linux 2023
dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install nginx-module-doh
yum -y install https://extras.getpagespeed.com/release-latest.rpm
yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install nginx-module-doh

Aktivieren Sie das Modul, indem Sie Folgendes an den Anfang von /etc/nginx/nginx.conf hinzufügen:

load_module modules/ngx_http_doh_module.so;

Dieses Dokument beschreibt nginx-module-doh v0.1 veröffentlicht am 15. Januar 2020.


Ein einfaches Nginx-Modul zum Bereitstellen von DNS-over-HTTPS (DOH) Anfragen.

CAVEAT EMPTOR: Dieses Modul ist experimentell. Obwohl ich es erfolgreich mit sowohl Firefox als auch Curl verwendet habe, können unentdeckte Fehler vorhanden sein. Der Zonentransfer wird derzeit nicht offiziell unterstützt.

Getestet mit Nginx-Versionen: 1.16.1 (stabil) 1.17.6 1.17.7 (mainline).

Anleitungen zum Erstellen, Installieren und Verwenden von Nginx-Modulen finden Sie unter den folgenden Links.

dynamisch: https://www.nginx.com/resources/wiki/extending/converting/#compiling-dynamic

statisch: https://www.nginx.com/resources/wiki/extending/compiling/

Ich habe eine Konfigurationsdatei für den Bau sowohl als dynamisches als auch als statisches Modul beigefügt.

Dieses Modul darf nur in einem HTTP-Standortblock verwendet werden.

MODUL-DIREKTIVEN

doh: (nimmt keine Argumente) aktiviert DOH in diesem Standortblock, die Standardadresse des Upstream-DNS-Servers ist 127.0.0.1, der Standardport ist 53 und die Standardzeitüberschreitung beträgt 5 Sekunden.

doh_address: (nimmt 1 Argument) legt die Adresse des Upstream-DNS-Servers fest, kann entweder IPv4 oder IPv6 sein.

doh_port: (nimmt 1 Argument) legt den Port fest, um den Upstream-DNS-Server zu kontaktieren (gilt sowohl für TCP- als auch für UDP-Verbindungen).

doh_timeout: (nimmt 1 Argument) legt die Zeitüberschreitung in Sekunden fest.

BEISPIELE

einfachster Anwendungsfall mit Upstream-DNS-Server, der auf 127.0.0.1 auf Port 53 hört:

location /dns-query { 
    doh;
}

setzen Sie eine Upstream-Adresse von 127.0.2.1, einen Port von 5353 und eine Zeitüberschreitung von 2 Sekunden:

location /dns-query { 
    doh;
    doh_address 127.0.2.1;
    doh_port 5353;
    doh_timeout 2;
}

GitHub

Sie finden möglicherweise zusätzliche Konfigurationstipps und Dokumentationen für dieses Modul im GitHub-Repository für nginx-module-doh.