Startseite

Lehrerfortbildung

Arktur

 

Skripte für den c't-Kommunikationsserver

Auf dieser Seite werde ich nach und nach Skripte usw. veröffentlichen, die ich als nützliche Ergänzungen in unseren c't-Kommuikationsserver eingebaut habe. Mit geringfügigen Änderungen sollten sie auch auf anderen Linux-Systemen laufen. Ich übernehme keine Verantwortung für das fehlerfreie Funktionieren der Skripte. Da Sie für die Einbindung mit root-Rechten auf dem Server arbeiten müssen, sollten Sie auf die Skripte verzichten, falls Sie nicht wissen, was Sie da tun!

Big Brother surft mit...

Das Skript proxy.cgi (10497 Bytes) wertet die Access-Log-Dateien des WWW-Proxies Squid aus und stellt die besuchten Seiten übersichtlich dar. Es ist bei uns in das admin2-Interface eingebunden worden, wozu das Skript admin.cgi (2656 Bytes) geringfügig anzupassen war. Nach Download und entpacken der Skripte (proxy.zip, 8598 Bytes, Zeitstempel: 19.03.01 00:48) müssen diese nur in das korrekte Verzeichnis kopiert und die Rechte angepasst werden:
        cp proxy.cgi /home/www/admin2/
        cp admin.cgi /home/www/admin2/
        chmod 755 /home/www/admin2/*.cgi
        chown www.lehrer /home/www/admin2/*.cgi
Um die NETBIOS-Namen der Rechner korrekt auszugeben, muss man den Hash HOSTS (ab Zeile 21) an die lokalen Gegebenheiten anpassen. Genügt die Ausgabe der IP-Nummern, so reicht hier die Zeile my %HOSTS=( );. Anderenfalls müssen die Rechnernamen in den Subnetzen 192.168.*.* von Hand angepasst werden.
Durch Eintragen der IP-Nummern in den Hash %HIDE können Rechner auch gezielt von der Anzeige ausgenommen werden (z. B. Arbeitsplätze im Lehrerzimmer oder im Verwaltungsbereich).
Voraussetzung für das korrekte Funktionieren ist, dass im Verzeichnis /var/log/proxy auch tatsächlich die Logdateien access.log, access.log.0, ..., access.log.9 vorliegen und für den Benutzer www lesbar sind!

Benutzernamen anzeigen
Wenn Sie eine Anzeige der Benutzernamen zusätzlich zur Platzkennung wünschen, müssen Sie folgende zwei Anpassungen durchführen:

  1. Auf den Clients muss ein identd-Dämon laufen. Für ein Netz mit Windows 95/98-Clients ist das wie folgt zu erreichen:
    • Laden Sie das Freeware-Programm identd (aktuell: Version 1.20) vom Server des Autors herunter.
      URL: http://identd.sourceforge.net/#download.
    • Entpacken Sie das heruntergeladene Archiv identd120.zip (z. B. unter Windows mit WinZip) und kopieren Sie die Datei identd.exe in das Verzeichnis /etc/samba/scripts auf Arktur. Damit die Datei die korrekten Rechte hat, geben Sie als root folgendes ein:
                  chmod 755 /etc/samba/scripts/identd.exe
                  chown root.lehrer /etc/samba/scripts/identd.exe
                
    • Ergänzen Sie die Datei /etc/samba/scripts/logon.bat um die folgende Zeile
      \\arktur\netlogon\identd.exe -q
      Künftig wird identd auf jedem Windows-Client beim Anmelden am Samba-Server auf Arktur gestartet (und beim Abmelden wieder beendet).
    Bitte beachten: Sollten Sie in Ihrem Netz außer Windows 95/98-Clients noch weitere Clients haben, die sich am Samba-Server auf Arktur anmelden (z. B. Windows NT-Clients), so könnten beim Starten des identd-Programms Fehlermeldungen auftreten. In diesem Fall empfehle ich, das Programm jeweils lokal auf den Windows 95/98-Clients zu installieren (und z. B. durch einen Eintrag in die Registry starten zu lassen).
  2. Nun muss Squid noch mitgeteilt werden, dass die Benutzerkennungen abzufragen sind. Dazu ergänzen Sie in den Dateien /etc/squid/squid.conf.in und /etc/squid/squid.conf (überflüssig?) folgende Zeilen:
     - Vor der mit "acl manager" beginnenden Zeile:
              acl darfnicht ident nobody
            
     - Nach den mit "http_access deny" beginnenden Zeilen:
              http_access deny darfnicht
            
    Falls Sie übrigens außer nobody Kennungen weiterer Benutzer aufführen, so hat dies zur Folge, dass diese künftig keinen Zugriff auf das WWW über den Proxy erhalten. Als disziplinarische Maßnahme kann das sinnvoll sein...

    Starten Sie nun squid neu durch folgende Kommandos (als root):

              /sbin/init.d/squid stop
              /sbin/init.d/squid start
            

Hinweis: Wenn nicht alle Benutzer - Schüler und Lehrer - über die Protokollierung und Auswertung des Protokolls informiert wurden bzw. diesem Vorgehen z. B. im Rahmen einer Nutzungsordnung zugestimmt haben, kann die Erhebung und Auswertung der Daten gegen (Landes-)Datenschutzgesetze oder (z. B. kirchliche) Datenschutzordnungen verstoßen!

Folgende Features sollen noch ergänzt werden:

  • Einschränkung des Abfrageergebnisses auf einen Zeitraum innerhalb eines Tages erledigt
  • Anzeige der Benutzernamen erledigt
  • Zusätzliche Sortierkriterien ("nach Platz","nach URL") erledigt


Rückfragen an Joachim Deckers. Stand: 19.03.2001.