Squid Web Cache Proxy Server installieren unter Ubuntu 10.10

Ich habe ein kleines Howto geschrieben, wie man den Squid squid-3.0.STABLE25 auf einem Ubuntu 10.10 installieren und konfigurieren kann.
Hier gibts es 2 Wege, einmal den etwas komplizierteren über die eigene Installation – oder über das fertige debian Paket.
Ich beschreibe beide Wege……
### Die einfache Variante über ein fertiges Ubuntu Paket

sudo apt-get install squid3

Fertig 🙂 – Das Startscript etc. wird automatisch angelegt. Der Config Folder ist nun aber /etc/squid3/.
Für eine einfachere Konfiguration über ein Webinterface empfehle ich die Installation von webmin. Diese Webseite bereitet die Konfig etwas vereinfacht auf.
# webmin installieren

cd /tmp
wget http://prdownloads.sourceforge.net/webadmin/webmin_1.530_all.deb
sudo dpkg --install webmin_1.530_all.deb

– Eventuell – falls Abhängigkeiten fehlen sollten noch:

apt-get install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl

Im webmin unter Servers / squid web proxy cache müssen dann evlt. noch die Pfade angepasst werden, wenn squid nicht per apt-get insall squid installiert wurde.
Folgende Werte müssen geändert werden:
Full path to squid config file: /usr/local/squid/etc/squid.conf
Squid executable: /usr/local/squid/sbin/squid
Full path to PID file: /usr/local/squid/var/logs/squid.pid
Full path to squid cache directory: /usr/local/squid/var/cache
Squid cachemgr.cgi executable: /usr/local/squid/libexec/cachemgr.cgi
Full path to squid log directory: /usr/local/squid/var/logs
(Thanks to http://www.admin-wissen.de/eigene-tutorials/linux/squid/squid-tutorial-teil-3/)
### Installation via Source Files (….weiterlesen)

Weiterlesen

Squid Proxy – Blockieren von Bestimmten Dateitypen

Eigentlich ganz simpel. Ich habe einen Squid Proxy erstellt und möchte den Zugriff auf bestimmte Dateitypen wie z.B. den Download von Mp3’s, Avi’s etc. verbieten. Durch die Access Control Lists die Squid verwendet, funktioniert dies sehr einfach.
Als erstes legen wir uns eine Datei an, in der wir die entsprechenden Dateitypen eintragen.

vi /etc/squid3/forbidden_filetypes.acl

Ich habe diese im Format:

\.[Aa][Vv][Ii]$
\.[Mm][Pp]3$

bei mir eingetragen. Speichern und fertig.
Nun öffnen wir die squid Config

vi /etc/squid3/squid.conf

Im Bereich der ACL’s fügen wir folgende Zeile hinzu:

acl forbidden_filetypes urlpath_regex "/etc/squid3/forbidden_filetypes.acl"

Damit wird eine Regel „forbidden_filetypes“ angelegt. Nun muss dieser Regel noch eine Aktion hinzugefügt werden (Zeile hinzufügen):

http_access deny forbidden_filetypes

Wenn man eine gesonderte Fehlermeldung für diese Regel anzeigen möchte kann man dafür eine neue Fehlerseite angeben: (Zeile hinzufügen)

deny_info ERR_BLOCKED_FILETYPE forbidden_filetypes

Nun muss man noch eine HTML Datei anlegen unter /usr/share/squid3/errors + gewünschter Sprache mit dem Namen: ERR_BLOCKED_FILETYPE
Anschließend noch die Config speichern und Squid neustarten. Das wars.

/etc/init.d/squid3 restart

Squid Proxy – Active Directory Authentifizierung / LDAP

Diesen Beitrag musste ich einfach schreiben, mich hat es beinahe in den Wahnsinn getrieben, dass ich dieAuthentifizierung gegen eine Windows 2008 R2 Domäne auf anhieb nicht funktionieren wollte.
Ich habe mich auch an diverse Anleitungen / Howto’s gehalten, doch es klappte einfach nicht.
Beispiel, wie es in mehreren Blogs beschrieben wird:

/usr/lib/squid/group_ldap_auth -b dc=my-domain,dc=de -h "server.my-domain.de" -p 636 -g distinguishedName -d "CN=lookup,OU=Services,OU=Users,DC=my-domain,DC=de" -w lookup -u cn -m member -o group -S

oder

auth_param basic program /usr/lib/squid/ldap_auth -b o=Company -h ldapserver -D cn=Tim,ou=IT-Services,o=Company -w timspassword -f (&(objectclass=person)(cn=%s))

Bekam ich jedesmal den Fehler: Invalid Credentials for Binddn
Ich wusste, dass es also an der Authentifizierung des Users liegt, welcher das AD abfragt. (LDAP Abfragen, ohne Authentifizierung sollte ja bei jedem ausgeschaltet sein 😉
Nur warum funktioniert es nicht…..
Am nächsten Tag, habe ich das ganze nochmal mit dem LDAP Browser nachgestellt, und da ist es mir direkt ins Auge gesprungen….
Anstatt bei dem Befehl -D „CN=…..“ anzugeben, muss „DOMAINE\USERNAME“ stehen 🙂
So funktioniert es bei uns:
# Testen

admin@SQUIDSRV:/usr/lib/squid3$ ./squid_ldap_auth -R -b "DC=DOMAINE,DC=INFO" -D "DOMAINE\LDAPREADUSER" -w "PASSWORT" -f sAMAccountName=%s -h 192.168.0.1

Viele Grüße
Constey