HowTo: Squid Proxy Server unter Debian schnell eingerichtet
11Manchmal kommt es vor, dass man schnell mal einen Proxy-Server benötigt. Das kann zum Beispiel sein, wenn man Inhalte aus dem Ausland (z.B. Musikstreamingdienste) benutzen möchte, aber in Deutschland lebt und somit eigentlich keinen Zugang zu diesen hat.
In meinem Fall nutzt ein Bekannter von mir eine spezielle Marktplatzsoftware mit der er nur innerhalb von Deutschland Zugriff auf den Marktplatz hat. Damit er nun auch im Urlaub den Marktplatz checken kann, wollte ich ihm schnell einen kleinen Proxy-Zugang einrichten. Da es im Internet haufenweise komplitzierte Anleitungen und HowTos gibt, ich aber nur einen einfachen http-Proxy mit Zugangsbeschränkung (Username, Passwort) benötigte, beschreibe ich im Folgenden wie man sich schnell und einfach einen kleinen http Proxy mit squid unter Debian Linux installiert und konfiguriert.
1. Squid installieren
apt-get install squid
2. Squid Konfiguration ( /etc/squid/squid.conf ) anpassen
Die squid.conf bearbeiten, dafür einfach den bevorzugten Editor benutzen. Ich benutze „nano“.
Dort muss man entsprechende Zeilen einkommentieren oder die folgenden am Ende der Datei hinzufügen.
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd acl password proxy_auth REQUIRED http_access allow password
Wer möchte kann noch den Standard-Port (3128) auf dem Squid horcht wie folgt ändern:
http_port 3128
Mit http_access allow password erlauben wir den http Zugriff via Proxy mit der Access Control Liste, die wir davor definiert haben und somit der Userliste aus der passwd-Datei entspricht. Die passwd-Datei müssen wir dafür natürlich an der entsprechenden Stelle erstellen. Dafür können wir das Tool htpasswd nutzen:
htpasswd -c passwd username passwort
3. Squid neustarten
Nachdem wir nun die Konfiguration angepasst haben, müssen wir Squid noch neustarten, damit es mit der neuen Konfiguration startet.
/etc/init.d/squid restart
Ab jetzt kann man den Proxy verwenden und z.B. in den Proxyeinstellungen von gängigen Browsern eintragen und damit testen.
Hallo, irgendwie hänge ich an dem Punkt mit htpasswd. Könntest du mir das bitte etwas genauer erklären ?
Gebe den Befehl so ein : htpasswd -cb passwd username passwort
c = neue Datei erstellen
b = Benutze den Benutzernamen und das Passwort aus der comando Zeile
info zu htpasswd
-c Create a new file.
-n Don’t update file; display results on stdout.
-m Force MD5 encryption of the password.
-d Force CRYPT encryption of the password (default).
-p Do not encrypt the password (plaintext).
-s Force SHA encryption of the password.
-b Use the password from the command line rather than prompting for it.
-D Delete the specified user.
Mfg
opencola
htpasswd -cb passwd username passwort
cp passwd /etc/squid/
Ich war gerade in dieser Situation. Ich brauchte mal schnell einen Proxy… Vielen Dank für die Anleitung. So konnte ich blitzschnell auf der Maschine zuhause per SSH squid installieren und nutzen.
beste Grüße
Ronny
Hallo, leider klappt es bei mir nicht. Bekomme keine Authentifizierungs Abfrage am Client und sofort immer ein Access Denied 🙁
Hallo, hat nun doch geklappt. Der Trick war die o.a. Änderungen an den Beginn der squid.conf einzutragen und nicht am Ende. Danke für das sonst wirklich tolle tutorial.
Coole Sache. Vielen Dank, funzt einwandfrei!!!
[…] […]
Coole Sache. Ich brauchte für Test- und Demozwecke kurz enen Squid3 Proxy mit Login. Nachdem ich mich wegen eines Fehlers fast eine Stunde lang mit der squid.config rumgeschlagen habe fand ich diesen Beitrag. Danach brauchte ich nur noch alles aus der squid.config zu schmeissen und deine Zeilen reinzutun und fertig wars! Den ganzen Aufwand den ich hatte, hätte ich mir sparen können. Es war auch doof von mir für meine Zwecke einen Squid Proxy mit allem drum und dran zu konfigurieren.
Hallo ich habe nicht viel Erfahrung
Was soll mit
„htpasswd -c passwd username passwort“
genau passieren und wo soll es hin.
Auch in die Config so eingetragen werden?
/usr/lib/squid/ncsa_auth muss jetzt lauten /usr/lib/squid/basic_ncsa_auth