Blacklist-Update unter pfSense funktioniert nicht
Problembeschreibung
Wer pfSense auf einem Rechner mit Alix 2D13 Board am Laufen hat, wird feststellen, dass für squidGuard das Update der Blacklist-Datei nicht wirklich funktioniert. Bei mir fing er zwar mit dem Download an, schloss diesen auch ab, aber das Datenbank-Update schlug stets fehl - pfSense machte nicht weiter, da konnte man warten, solange man wollte.
Lösung
Mir haben zwei Artikel weitergeholfen:
http://forum.pfsense.org/index.php?topic=53695.0 http://the-flakes.blogspot.de/2012/07/pfsense-embedded-edit-files.html
Ich erkläre nun, wie man am Einfachsten zum Ziel kommt:
- Erlaube den SSH-Login (Web-GUI auf System\Advanced und hier ganz unten den Haken bei Enable Secure Shell setzen)
- Starte Putty und verbinde dich zur pfSense Box
- Melde dich als User root an - Passwort ist dasselbe wie für den pfSense admin
- Drücke die Taste 8, um in die Shell zu kommen
- Führe den Befehl aus: /etc/rc.conf_mount_rw
- Führe den Befehl aus: vi /etc/rc.embedded
Führe nun folgenden Befehl aus vi /usr/local/pkg/squidguard_configurator.inc, suche die Funktion und deaktiviere die RAM-Disk wie folgt:
function squidguard_ramdisk($enable) { return; ... }
Ändere auch die folgenden Einträge wie gezeigt ab und drücke dann zum Schluss ESC, gib :wq zum Speichern ein:
... define('SQUIDGUARD_DBHOME', '/sg/db'); ... define('SG_UPDATE_TARFILE', '/sg/tmp/squidguard_blacklist.tar'); define('SG_UPDATE_TMPFILE', '/sg/tmp/squidguard_download.tmp'); ...
Grund für obige Änderungen: der Ordner /tmp ist bei pfSense auf einer extra Partition. Beim Download dieser Blacklist-Datei(en) wird der komplette Platz verbraucht, das Entpacken bzw. der Download schlägt dann bereits fehl, das wird aber in der Web GUI nicht angezeigt - die Statusanzeige bleibt einfach hängen. Ich verschiebe daher die Datenbank sowie die (temporäre und finale) Download-Datei auf ein Medium, wo mehr Platz ist. Obige Ordner müssen natürlich noch angelegt werden:
mkdir /sg mkdir /sg/tmp mkdir /sg/db chown -R proxy /sg chgrp -R proxy /sg
Zum Schluss beende VIM durch Drücken von ESC, dann :wq und führe nachfolgende Befehle aus:
- Führe den Befehl aus: /etc/rc.conf_mount_ro
- Führe den Befehl aus: shutdown -r now
Versuche nach dem Neustart erneut, die Blacklist zu aktualisieren. Falls der Vorgang nun noch immer hängen bleibt, erhöhe den Wert der oben genannten Variablen weiter - testen.