{{tag>identd ipcop ubuntu url-filter proxy linuxclient windowsclient}} ====== IPCop - Proxy loggt Benutzernamen zu den Seitenaufrufen mit ====== Will man in den URL-Filter Logs nach einem "Übeltäter" suchen, so muss man erst die verbotene Seite suchen und dann die dort eingetragene IP mit den An/Abmelde-Logs auf dem Server (**''/var/log/linuxmuster/userlogins''**) abgleichen. Installiert man auf dem Client einen ident-Dämon (kurz identd), so meldet er auf Anfrage des IPCop den Nutzernamen des angemeldeten Users. (Technischer Hinweis siehe unten) Dieser Name wird dann direkt in die Logs des Proxys und des URL-Filters geschrieben und man kann einen Nutzer dadurch direkt ermitteln und ihn ggf. vom Internet ausschließen. ===== 1. Ident Dämon auf dem Client installieren ===== ==== Windows-Clients ==== Zuerst installiert man den ident Dämon. Man findet viele im Internet, einen auch hier im Wiki: [[version2:misc:dansguardianlog]] (ganz unten). Einen speziell angepaßten Dämon gibt es auch auf Nachfrage in der Liste. Die Startdatei des identD schiebt man dann aus dem eigenen User-autostart-verzeichnis in das All Users Autostartverzeichnis ( C:\Dokumente und Einstellungen\All Users\Startmenü\Programme\Autostart\ ). So stellt man sicher, dass er bei jedem Login gestartet wird. Nun muss man ihn einmal starten, damit die lokale Firewall eine Blockregel erstellt (Immer erlauben). Danach erstellt man ein Image. ==== Linux-Clients: Ubuntu mit gnome ==== Unter Ubuntu gibt es verschiedene "identd", die man alle mit aptitude installieren kann. Üblicherweise ist der OpenBSD-identd bei Ubuntu installiert. Alle von mir getesteten identd erzeugten aber in den Proxylogs des IPCops keinen Eintrag. Die Ursache dazu scheint der transparente Proxy zu sein, der alle Anfragen auf Port 80 an Port 800 umleitet. Davon bekommt der Ubuntu-Client aber nichts mit. Wenn nun der IPCop-Proxy eine identd-Anfrage für Port 800 an den Ubuntu-Client sendet, gibt dieser keine brauchbare Antwort, da ja niemand bei ihm eine Anfrage auf Port 800 gesendet hat. Falls im Browser der IPCop mit Port 800 als Proxy eingetragen ist, tritt dieses Problem nicht auf. Als Lösung kann man nun auf dem Ubuntu-Client einen identd so installieren und konfigurieren, dass er unabhängig vom Port den aktuell bei gnome angemeldeten User zurückliefert. An einer root-Konsole am Ubuntu-Client eingeben: aptitude install oidentd Nun die folgende Datei **''/etc/gdm/PostLogin/Default''** anlegen. Dieses Script wird bei der Benutzeranmeldung bei gnome ausgeführt. Ein ggf. laufender oidentd-Prozess wird dabei zunächst gelöscht: #!/bin/sh # Dieses Script wird mit root-Rechten nach dem gdm-Login ausgeführt # /usr/bin/pgrep oidentd && /usr/bin/pkill oidentd /usr/sbin/oidentd -u oident -g oident --reply=$LOGNAME exit 0 Achtung: auf Schreibweise oident und oidentd achten!!. Die Datei muss ausführbar sein. ===== 2. Die Nutzerliste der erlaubten User erstellen ===== Dazu benötigt man alle Loginnamen. Der Befehl: ** sophomorix-print -a ** erschafft die Datei /var/lib/sophomorix/print-data/all.csv die man mit Open Office Calc öffnen kann. Dann markiert man die Spalte mit den Loginnamen und kopiert sie in eine Textdatei oder direkt in den IPCop. ===== 3. Authentifizierung im IPcop einstellen ===== Im IPCop wird unter "Dienste"-> "Advanced Proxy" ganz unten die Authentifizierungsmethode auf "identd" gestellt. Danach trägt man ein: Identauthentifizierung erforderlich: Haken Timeout: 10 Ident-fähige Hosts: 10.16.0.0/255.240.0.0 Ziele ohne Authentifizierung: 10.16.1.1 Benutzerbasierte Zugriffsbeschränkungen: Aktivirt: Haken Autorisierte Benutzer: -> hier kopiert man die Liste der Loginnamen rein und ergänzt durch: pgmadmin und administrator Danach "speichern und Neustarten" Der zusätzliche Vorteil dieser Authentifizierung ist, dass vagabundierende Laptops auch keinen Zugang zum Internet mehr bekommen, selbst wenn sie eine gültige IP haben. Außerdem kann man danach einen user gezielt vom Internet ausschließen, indem man seinen Loginnamen in der Liste löscht. Nachteil: wenn man über das Jahr neue Benutzer aufnimmt, muss man daran denken, sie auch hier einzutragen. ===== Problembehebung ===== Ganz gerne erscheint beim "Speichern und Neustart" nach Aktivierung der identd Authentifikation, die Meldung: "Proxyauthentifizierung funktioniert nur, wenn der Proxy im nichttransparenten modus läuft". Kein Problem: Proxy auf Grün: An und transparent Proxy auf Blau: an und nicht transparent ===== Technischer Hinweis zum identd ===== Eine Netzwerkverbindung benutzt üblicherweise zwei Ports (eingehender und ausgehender) , über die die Verbindung abgewickelt wird. Diese Ports ordnet der identd dem Benutzer zu, der die Netzwerkverbindung aufgebaut hat. Ein vollständiger identd kann somit auch bei mehreren angemeldeten Benutzern den korrekten Benutzernamen für eine Netzwerkverbindung liefern. Unter Windows wird normalerweise bei den identd nicht der Port-Benutzer, sondern der angemeldete Benutzer verwendet.