Blacklist-Update unter pfSense funktioniert nicht: Unterschied zwischen den Versionen

Aus ITwiki
Wechseln zu: Navigation, Suche
K
 
(4 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt)
Zeile 11: Zeile 11:
  
 
Ich erkläre nun, wie man am Einfachsten zum Ziel kommt:
 
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)
 
# Erlaube den SSH-Login (Web-GUI auf ''System\Advanced'' und hier ganz unten den Haken bei ''Enable Secure Shell'' setzen)
 
# [http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html Starte Putty] und verbinde dich zur pfSense Box
 
# [http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html Starte Putty] und verbinde dich zur pfSense Box
 
# Melde dich als User root an - Passwort ist dasselbe wie für den pfSense admin
 
# 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
+
# Drücke die Taste {{Taste|8}}, um in die Shell zu kommen
 
# Führe den Befehl aus: ''/etc/rc.conf_mount_rw''
 
# Führe den Befehl aus: ''/etc/rc.conf_mount_rw''
# Führe den Befehl aus: ''vi /etc/rc.embedded''
 
# Editiere die Zeile ''tmpsize='' und stelle den Wert hinter dem Istgleich-Zeichen auf 80m
 
# Editiere die Zeile ''varsize='' und stelle den Wert hinter dem Istgleich-Zeichen auf 80m
 
# Um VIM zu beenden, drücke ESC und dann '':wq''
 
  
Führe nun nachfolgende Befehle aus:
+
Führe nun folgenden Befehl aus ''vi /usr/local/pkg/squidguard_configurator.inc'', ändere nachfolgende Zeilen und drücke zum Speichern der Konfig zunächst {{Taste|Esc}}, dann '':wq'':
# cd /
 
# mkdir /sg
 
# mkdir /sg/tmp
 
# mkdir /sg/db
 
# mkdir /sg/var
 
# chown -R proxy /sg
 
# chgrp -R proxy /sg
 
  
Führe folgenden Befehl aus ''vi /usr/local/pkg/squidguard_configurator.inc'' und editiere diese Einträge:
+
...
# define('SQUIDGUARD_TMP', '/sg/tmp');
+
define('SQUIDGUARD_DBHOME',             '/sg/db');
# define('SQUIDGUARD_DBHOME', '/sg/db');
+
...
# define('SQUIDGUARD_VAR', '/sg/var');
+
define('SG_UPDATE_TARFILE',             '/sg/tmp/squidguard_blacklist.tar');
 +
define('SG_UPDATE_TMPFILE',             '/sg/tmp/squidguard_download.tmp');
 +
...
  
Suche noch in der Datei die Funktion ''function squidguard_ramdisk($enable)'' und schalte die RAM-Disk z. B. wie folgt ab:
+
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:
  
  function squidguard_ramdisk($enable)
+
  mkdir /sg
  {
+
  mkdir /sg/tmp
  return;
+
  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:
+
Zum Schluss beende VIM durch Drücken von {{Taste|Esc}}, dann '':wq'' und führe nachfolgende Befehle aus:
 
# Führe den Befehl aus: ''/etc/rc.conf_mount_ro''
 
# Führe den Befehl aus: ''/etc/rc.conf_mount_ro''
 
# Führe den Befehl aus: ''shutdown -r now''
 
# 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, reduziere den Wert der oben genannten Variablen auf 20m - testen. Evtl. wäre es auch sinnvoll, der Box etwas mehr Arbeitsspeicher zu spenden :-)
+
Versuche nach dem Neustart erneut, die Blacklist zu aktualisieren.
  
 
== Nützliche Links ==
 
== Nützliche Links ==

Aktuelle Version vom 23. Januar 2014, 14:10 Uhr

Problembeschreibung[Bearbeiten]

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[Bearbeiten]

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:

  1. Erlaube den SSH-Login (Web-GUI auf System\Advanced und hier ganz unten den Haken bei Enable Secure Shell setzen)
  2. Starte Putty und verbinde dich zur pfSense Box
  3. Melde dich als User root an - Passwort ist dasselbe wie für den pfSense admin
  4. Drücke die Taste 8, um in die Shell zu kommen
  5. Führe den Befehl aus: /etc/rc.conf_mount_rw

Führe nun folgenden Befehl aus vi /usr/local/pkg/squidguard_configurator.inc, ändere nachfolgende Zeilen und drücke zum Speichern der Konfig zunächst Esc, dann :wq:

...
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:

  1. Führe den Befehl aus: /etc/rc.conf_mount_ro
  2. Führe den Befehl aus: shutdown -r now

Versuche nach dem Neustart erneut, die Blacklist zu aktualisieren.

Nützliche Links[Bearbeiten]