Squid-Kit-2: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| (5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 23: | Zeile 23: | ||
Zur Vermeidung von ungewollten Zugriffen lässt sich in Squid auch eine Authetifizierung erzwingen | 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== | ==Erstellen einer Passwort Datei== | ||
| − | *htpasswd -c /etc/squid/ | + | *htpasswd -c /etc/squid/password martha |
| + | *htpasswd /etc/squid/password leroy | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | {| class="wikitable" | |
| + | ! Option !! Bedeutung | ||
| + | |- | ||
| + | | <code>htpasswd</code> || Programmname (zum Verwalten von HTTP-Authentifizierungsdateien) | ||
| + | |- | ||
| + | | <code>-c</code> || Erstellt eine neue Passwortdatei (nur beim ersten Mal verwenden!) | ||
| + | |- | ||
| + | | <code>passwordfile</code> || Beliebiger Dateiname und Speicherort für die Passwortdatei | ||
| + | |- | ||
| + | | <code>username</code> || Beliebiger Benutzername, der eingetragen werden soll | ||
| + | |} | ||
==Änderungen an der squid.conf== | ==Änderungen an der squid.conf== | ||
| Zeile 41: | Zeile 48: | ||
<pre> | <pre> | ||
| − | auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/ | + | auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/password |
auth_param basic children 20 startup=0 idle=1 | auth_param basic children 20 startup=0 idle=1 | ||
auth_param basic concurrency 0 | auth_param basic concurrency 0 | ||
| Zeile 47: | Zeile 54: | ||
auth_param basic realm xinux proxy server | auth_param basic realm xinux proxy server | ||
auth_param basic casesensitive off | auth_param basic casesensitive off | ||
| − | |||
acl ncsa_users proxy_auth REQUIRED | acl ncsa_users proxy_auth REQUIRED | ||
| − | |||
http_access allow ncsa_users | http_access allow ncsa_users | ||
| − | |||
</pre> | </pre> | ||
| − | + | {| class="wikitable" | |
| − | + | ! Option || Bedeutung | |
| − | + | |- | |
| − | + | | <code>auth_param</code> || Definiert die Parameter für die Authentifizierung | |
| − | + | |- | |
| − | + | | <code>basic</code> || Grundsätzliche Einstellungen, die verwendet werden, wenn keine anderen definiert sind (siehe Squid-Manual für weitere Optionen) | |
| − | + | |- | |
| − | + | | <code>program</code> || Externes Programm, das zur Authentifizierung verwendet wird | |
| − | + | |- | |
| − | + | | <code>/usr/lib/squid/basic_ncsa_auth</code> || Pfad zum Authentifizierungsprogramm | |
| − | + | |- | |
| − | + | | <code>/etc/squid/passwd</code> || Passwortdatei mit Benutzern und verschlüsselten Passwörtern | |
| − | + | |- | |
| + | | <code>children</code> || Anzahl der maximalen Authentifizierungsprozesse, die Squid starten darf | ||
| + | |- | ||
| + | | <code>concurrency</code> || Gibt an, wie viele Anfragen gleichzeitig verarbeitet werden können | ||
| + | |- | ||
| + | | <code>credentialsttl</code> || Legt fest, wie lange Anmeldedaten im Cache gültig sind (z. B. 2 Stunden) | ||
| + | |- | ||
| + | | <code>realm</code> || Beschreibung oder Name des Authentifizierungsbereichs (wird dem Benutzer angezeigt) | ||
| + | |- | ||
| + | | <code>casesensitive</code> || Legt fest, ob Benutzernamen groß-/kleinschreibungssensitiv behandelt werden | ||
| + | |} | ||
=Time= | =Time= | ||
Aktuelle Version vom 1. Juli 2025, 08:52 Uhr
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/password 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
| Option | Bedeutung |
|---|---|
auth_param |
Definiert die Parameter für die Authentifizierung |
basic |
Grundsätzliche Einstellungen, die verwendet werden, wenn keine anderen definiert sind (siehe Squid-Manual für weitere Optionen) |
program |
Externes Programm, das zur Authentifizierung verwendet wird |
/usr/lib/squid/basic_ncsa_auth |
Pfad zum Authentifizierungsprogramm |
/etc/squid/passwd |
Passwortdatei mit Benutzern und verschlüsselten Passwörtern |
children |
Anzahl der maximalen Authentifizierungsprozesse, die Squid starten darf |
concurrency |
Gibt an, wie viele Anfragen gleichzeitig verarbeitet werden können |
credentialsttl |
Legt fest, wie lange Anmeldedaten im Cache gültig sind (z. B. 2 Stunden) |
realm |
Beschreibung oder Name des Authentifizierungsbereichs (wird dem Benutzer angezeigt) |
casesensitive |
Legt fest, ob Benutzernamen groß-/kleinschreibungssensitiv behandelt werden |
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