Squid-Kit-2
Version vom 17. April 2025, 15:03 Uhr von Thomas.will (Diskussion | Beiträge) (→Erstellen einer Passwort Datei)
Beispielkonzept
Bestimmte Rechner dürfen alles alle Anderen dürfen nur auf bestimmte Webseiten.
- Diese Rechner dürfen alles
- vi /etc/squid/teamleitung.txt
172.17.113.24 172.17.113.33 172.17.113.49
- Der Rest bekommt Einschränkungen welche Seite sie aufrufen dürfen.
- vi /etc/squid/badsites.txt
bild.de sex www.faz.net
- In die squid.conf kommen nun die acls
acl teamleitung src "/etc/squid/teamleitung.txt" acl badsites url_regex "/etc/squid/badsites.txt"
- Anwenden der acls
http_access allow teamleitung http_access deny badsites http_access allow it-dmz http_access allow it-lan
Authentifizierung
Zur Vermeidung von ungewollten Zugriffen lässt sich in Squid auch eine Authetifizierung erzwingen =Installation von htpasswd
- apt install apache2-utils
Erstellen einer Passwort Datei
- htpasswd -c /etc/squid/password martha
- htpasswd /etc/squid/password leroy
| Option | Bedeutung |
|---|---|
htpasswd |
Programmname (zum Verwalten von HTTP-Authentifizierungsdateien) |
-c |
Erstellt eine neue Passwortdatei (nur beim ersten Mal verwenden!) |
passwordfile |
Beliebiger Dateiname und Speicherort für die Passwortdatei |
username |
Beliebiger Benutzername, der eingetragen werden soll |
Änderungen an der squid.conf
Folgende Einträge werden am Anfang der squid.conf eingefügt:
auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwd auth_param basic children 20 startup=0 idle=1 auth_param basic concurrency 0 auth_param basic credentialsttl 500 seconds auth_param basic realm xinux proxy server auth_param basic casesensitive off acl ncsa_users proxy_auth REQUIRED http_access allow ncsa_users
Syntax:
- auth_param: Definiert die Parameter für die Authentifizierung
- basic: Teilt squid mit, dass es sich um grundsätzliche Einstellungen handelt, die zur Anwendung kommen wenn keine anderen verfügbar sind. Weitere Optionen siehe squid Manual
- program: Es wird ein externes Programm zur Authentifizierung eingesetzt
- /usr/lib/squid/basic_ncsa_auth: Hier befindet sich das Programm
- /etc/squid/passwd: Dies ist die Passwortdatei
- children: Wieviele Authentifikationsprozesse Squid maximal starten soll
- concurrency: Wieviele Anfragen gleichzeitig bearbeitet werden dürfen
- credentialsttl: Wie lange die Anmeldedaten gültig sein sollen
- realm: Name des Bereichs für den der Proxy zuständig ist. Kann beliebig gewählt werden.
- casesensitive: Legt fest ob der BENUTZERname case-sensitiv sein soll
Time
- Um eine Website zu einer gewissen Zeit freizugeben, benutzt man "time"
erstellen der acl
acl break-time time 12:00-13:00
erstellen der http_access
http_access allow bad-sites break-time
- In diesem Beispiel werden die bad-sites um 12:00-13:00 freigeschaltet