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.