nginx: Authentifizierung wahlweise über IP oder HTTP-Auth

Wie beim apache lässt sich sich auch beim nginx eine IP whitelist mit einer HTTP Basic Authentication kombinieren.
Dabei muss entweder die IP des Benutzers whitelisted sein, oder er muss Benutzername und Passwort eingeben.

Mit folgender nginx Konfiguration wird das erreicht:

server {
  # [...]
  satisfy any;
  allow 127.0.0.1;  # 127.0.0.1 sollte immer whitelisted sein 
  allow 1.2.3.4;
  # allow ...
  deny all;

  auth_basic           "Administrator’s Area";
  auth_basic_user_file conf/htpasswd;
}

Das ganze ist auch im location Kontext möglich.

Weitere Möglichkeiten finden sich in der nginx Dokumentation Restricting Access with HTTP Basic Authentication.

Published by

Steven Varco

Steven ist ein Redhat RHCE- und Kubernetes CKA Zertifizierter Linux-Crack und ist seit über 20 Jahren sowohl beruflich wie auch privat auf Linux spezialisiert. In seinem Keller steht ein Server Rack mit diversen ESX und Linux Servern.

One thought on “nginx: Authentifizierung wahlweise über IP oder HTTP-Auth”

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert