Tinyproxy-Zielfilter, Client-ACLs und CONNECT-Ports
Verwenden Sie Tinyproxy-Zielfilter für Hostnamen-Beschränkungen und unterscheiden Sie sie von Regeln, die Quellclients oder CONNECT-Ports steuern.
Eine Allow-Zeile in Tinyproxy beantwortet, wer den Proxy nutzen darf. Sie bedeutet nicht, dass diese Clients nur den dort eingetragenen Host erreichen können. Die Zielfilterung ist eine separate Einstellung.
Für einen Proxy, der einen benannten Dienst erreichen soll, kann der Filter als Positivliste dienen:
Filter "/etc/tinyproxy/allowed-hosts"
FilterDefaultDeny Yes
FilterURLs No
Die Datei enthält dann die Zielmuster, die in Ihrer gewählten Filtersyntax erlaubt sind. Halten Sie das Muster eng und exakt hostbezogen, und prüfen Sie den konfigurierten FilterType, bevor Sie Anker für reguläre Ausdrücke oder Platzhaltersyntax wählen. Ein für einen Modus geschriebenes Muster kann in einem anderen etwas anderes bedeuten.
Es gibt drei verschiedene Kontrollen
- Client-Regeln
Allow/Denybeschränken Quellclients. - Die Zielfilterung beschränkt den angeforderten Host oder die URL.
ConnectPortbeschränkt CONNECT-Zielports.
Das Tinyproxy-Handbuch dokumentiert diese getrennt. Ein Zielfilter fügt keine Proxy-Authentifizierung hinzu, und eine Portfreigabe beschränkt Anfragen nicht auf einen Hostnamen.
Für HTTPS über einen normalen Tunnel arbeiten Sie mit dem Zielhost. Der verschlüsselte Anforderungspfad ist nicht als gewöhnlicher, für den Proxy sichtbarer Text verfügbar, daher sollte man nicht annehmen, dass ein Pfadausdruck, der für Klartext-HTTP funktioniert, HTTPS-Seitenpfade prüft.
Berücksichtigen Sie auch die Abhängigkeiten der Website. Eine Seite kann Bilder abrufen oder sich über andere Hosts authentifizieren. Fügen Sie nur die tatsächlich benötigten Ziele hinzu; eine exakte Host-Regel in ein breites Suffix zu verwandeln, um ein fehlendes Bild zu reparieren, kann deutlich mehr Verkehr zulassen. Halten Sie die Liste so verständlich, dass jedes erlaubte Ziel einen Grund hat.