AdvancedProxy mit zeitgesteuertem Logprotokoll

Aus IpcopWiki

Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Übersicht

Argumentation

Das Datenschutzgesetz sieht unter Anderem vor, dass nicht ohne Weiteres ein Logging des Surfverhaltens der Benutzer erfolgen darf. Ich stelle hiermit eine Möglichkeit vor, das Logging ausserhalb der Regelarbeitszeit zu aktivieren und innerhalb der Arbeitszeit wieder zu deaktivieren.

Nachteile

Wird an der Konfiguration des Squid etwas geändert oder ein Update wird eingespielt, werden die jew. Konfigurations- und Settingsdatei dadurch vernichtet oder die Konfigurationsänderungen sind einfach nicht mehr sichtbar nach Ausführen des jew. Scriptes.

Technik

Dazu wird einfach die jew. Conf-Datei des Squid gegen eine andere ausgetauscht und dieser dann neugestartet.

Voraussetzung

mit folgenden Versionen wurde getestet

  • IPCop 1.4.10
  • AdvProxy 1.2.2
  • falls Copfilter in Version 0.82.1 oder höher im Einsatz ist, wird das Starten des HAVP berücksichtigt

Vorgehen

Vorbereitung des Squid

In der Oberfläche des AdvProxy wird das Log deaktiviert und dieser neugestartet. Die Datei /var/ipcop/proxy/squid.conf wird im gleichen Verzeichnis als squid_nolog.conf als Kopie abgelegt. Danach wird das Logging wieder deaktiviert, der Proxy neugestartet und die jetzt veränderte squid.conf wird als squid_log.conf kopiert.

Vorbereitung der Ansicht der Oberfläche

Die Ansicht der Oberfläche ändert sich durch die squid.conf nicht, wenn man diese mit Hand kopieren sollte. Dazu ist die Datei settings da, welche sich im Verzeichnis /var/ipcop/proxy/advanced/ befindet. Hier wird die gleiche Vorbereitung getroffen:

  • Deaktivierung des Log, Neustarten des Proxy und Kopieren der settings nach /var/ipcop/proxy/advsquidsettings_nolog
  • Danach Aktivierung des Log, Neustart des Proxy und Kopieren der settings nach /var/ipcop/proxy/advsquidsettings_log

Scripte

Im Verzeichnis /usr/local/bin werden 2 Dateien erstellt: restartsquid_withnolog und restartsquid_withlog. Die Rechte der Dateien werden auf 775 geändert. Der Inhalt der Dateien:

restartsquid_withnolog

#!/bin/sh
# Hiermit wird Squid und HAVP neugestartet
# Log im Squid wird deaktiviert

CONF=squid_nolog.conf
SETTINGS=advsquidsettings_nolog
cd /var/ipcop/proxy
echo kopiere Conf-Datei
cp $CONF squid.conf
cp $SETTINGS advanced/settings
/usr/local/bin/restartsquid
sleep 2
if [ -f /usr/local/bin/copfilter_restarthavp ]; then
 /usr/local/bin/copfilter_restarthavp
fi

restartsquid_withlog

#!/bin/sh
# Hiermit wird Squid und HAVP neugestartet
# Log im Squid wird aktiviert

CONF=squid_log.conf
SETTINGS=advsquidsettings_log
cd /var/ipcop/proxy
echo kopiere Conf-Datei
cp $CONF squid.conf
cp $SETTINGS advanced/settings
/usr/local/bin/restartsquid
sleep 2
if [ -f /usr/local/bin/copfilter_restarthavp ]; then
 /usr/local/bin/copfilter_restarthavp
fi

Einbau in die Cron-Tabelle

So sieht das bei mir in der crontab aus, wenn ich das Log nur am Wochenende haben möchte:

# Anschalten des Log-Protokolls am Samstag 17 Uhr
0 17 * * 6 /usr/local/bin/restartsquid_withlog

# Ausschalten des Log-Protokolls am Montag 6 Uhr
0 6 * * 1 /usr/local/bin/restartsquid_withnolog

Hilfe zu anderen Einträgen in der Crontab gibts in einer kleinen crontab-Hilfe

Persönliche Werkzeuge