Squid-Zugriffskontrolle über UCR beeinflussen

Mit der Installation des Errata-Updates #163 aus UCS 4.0 werden benutzerdefinierte Regeln für den Proxy-Zugriff unterstützt. Diese können mittels Univention Configuration Registry (UCR) festgelegt werden und erlauben es, Ausnahmen zu definieren, die priorisiert ausgewertet werden, und so die normalen Regeln überschreiben.

Der Aufbau der Regeln über UCR-Variablen wird nachfolgend beschrieben.

Syntax

Die UCR Variablen sind nach folgendem Schema aufgebaut:

squid/acl/NAME/ZUGANG/REGEL/TYP=WERT

NAME ist frei wählbar und dient zur Dokumentation und zum Trennen von ansonsten gleichen UCR-Variablen-Namen.

ZUGANG ist entweder “allow” oder “deny”. “deny”-Regeln verhindern den Zugriff, “allow”-Regeln erlauben ihn.

Zuerst werden die “deny”-Regeln ausgewertet: Sofern eine “deny”-Regel zutrifft wird der Zugriff verweigert.

Danach werden die “allow”-Regeln ausgewertet: Sofern eine “allow”-Regel zutrifft wird der Zugriff gestattet.

Schließlich werden die üblichen Regeln wie zum Beispiel Proxy-Authentifizierung ausgewertet.

Die per UCR definierten Regeln erlauben also das “Überschreiben” der Standardregeln für Spezialfälle.

Die möglichen Werte für REGEL sind:

  • “browser”: Vergleich des User-Agent
  • “browser-i”: Vergleich des User-Agent ohne Berücksichtigung der Groß/Kleinschreibung
  • “dstdomain”: Vergleich der Ziel-Domain
  • “dstdomain-i”: Vergleich der Ziel-Domain ohne Berücksichtigung der Groß/Kleinschreibung
  • “port”: Vergleich des Ziel-Ports

TYP legt fest in welcher Weise der WERT zu interpretieren ist:

Die folgenden TYPen sind für “browser”, “browser-i”, “dstdomain”, und “dstdomain-i”:

  • “string”: Exakte Übereinstimmung mit WERT
  • “substring”: Suche nach der Teilzeichenfolge WERT
  • “regex”: (Erweiterter) Regulärer Ausdruck muss mit ganzer Zeichenfolge übereinstimmen

Die folgenden TYPen sind für “port”

  • “number”: Exakte Übereinstimmung mit WERT (angegeben als Dezimalzahl)

Beispiel

ucr set squid/acl/Beispiel/allow/dstdomain/string=en.wikipedia.org

Die Regel “Beispiel” erlaubt (“allow”) den Zugriff wenn die Ziel-Domain (“dstdomain”) exakt (“string”) “en.wikipedia.org” ist.

Mastodon