• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Problem beim Installieren von Squidguard

an_no

Newbie
Hallo Linux-Gemeinde,

ich habe schon eine Ewigkeit gegoogelt und auch in diesem Forum gesucht. Doch leider bin ich nicht fündig geworden. Mein Problem:
Ich habe Linux 10.2 incl. squid installiert. nun möchte ich squidguard nutzen um bestimmte Inhalte zu sperren (der Server ist für eine Schule). Nach langer Recherche habe ich herausgefunden, dass ich dazu die BerkeleyDB brauch. Die Installation ist mir auch geglückt. Das Teil liegt jetzt in /usr/local/BerkeleyDB.4.5/ . Den Squidguard habe ich in der Version 1.2.0 . configure rufe ich mit dem Zusatz --with-db=/u.s.w. auf. Das klappt auch super (habe /etc/ld.so.conf vorher angepasst). Bei make ist dann aber schluss. folgende Meldung erscheint

making all in squidGuard-1.2.0p3
make[1]: Entering directory `/data/squidGuard-1.2.0p3/src'
making all in src
gcc -I.. -I. -I. -I/usr/local/BerkeleyDB4.5/include -DHAVE_CONFIG_H -g -O2 -I/usr/local/BerkeleyDB4.5/include -c main.c
gcc -I.. -I. -I. -I/usr/local/BerkeleyDB4.5/include -DHAVE_CONFIG_H -g -O2 -I/usr/local/BerkeleyDB4.5/include -c sgLog.c
gcc -I.. -I. -I. -I/usr/local/BerkeleyDB4.5/include -DHAVE_CONFIG_H -g -O2 -I/usr/local/BerkeleyDB4.5/include -c sgDb.c
gcc -I.. -I. -I. -I/usr/local/BerkeleyDB4.5/include -DHAVE_CONFIG_H -g -O2 -I/usr/local/BerkeleyDB4.5/include -c sgDiv.c
yacc -d sg.y || (cp y.tab.c.bison y.tab.c && cp y.tab.h.bison y.tab.h)
/bin/sh: yacc: command not found
gcc -I.. -I. -I. -I/usr/local/BerkeleyDB4.5/include -DHAVE_CONFIG_H -g -O2 -I/usr/local/BerkeleyDB4.5/include -c y.tab.c
: sg.l || cp lex.yy.c.flex lex.yy.c
gcc -I.. -I. -I. -I/usr/local/BerkeleyDB4.5/include -DHAVE_CONFIG_H -g -O2 -I/usr/local/BerkeleyDB4.5/include -c lex.yy.c
gcc: lex.yy.c: No such file or directory
gcc: no input files
make[1]: *** [lex.yy.o] Error 1
make[1]: Leaving directory `/data/squidGuard-1.2.0p3/src'
make: *** [all] Error 1
Ich habe keine Ahnung, was falsch läuft und hoffe sehr auf eure Hilfe...
 

Dr. Glastonbury

Advanced Hacker
Hi,
sach mal, warum installierst du nicht einfach die entsprechenden RPMs? Sollten eigentlich schon auf der SuSE-CD/DVD drauf sein. Und nachdem der Squidguard eh seit Jahren nicht mehr maintained wird, hast du mit der RPM sowieso die neueste Version...

Wozu also noch kompilieren?
 
OP
A

an_no

Newbie
Ich würde ja liebend gern ein rpm installieren nur liefert suse ab version 10.2. kein squidguard mehr mit. Du schreibst dass das Programm nicht mehr gepflegt wird. Wie kann man sonst noch Inhalte filtern ???
 

Dr. Glastonbury

Advanced Hacker
Nja,
also ich seh hier schon ne RPM für SuSE 10.2 - kann aber natürlich wirklich sein, dass die nicht mehr auf der DVD ist: http://rpm.pbone.net/index.php3/stat/4/idpl/3697949/com/squidGuard-1.2.0-408.i586.rpm.html

Ansonsten ist der Dansguardian natürlich noch ne Alternative. Ich mag ihn allerdings nicht, weil er dermaßen "schlecht" programmiert ist, dass er nicht unter OpenBSD läuft!
 

Stefan Staeglich

Advanced Hacker
http://www.linux-club.de/faq/Quellen_für_openSUSE_10.2
http://ftp.gwdg.de/pub/opensuse/distribution/10.2/repo/oss/suse/i586/squidGuard-1.2.0-408.i586.rpm

Ist nur nicht mehr auf der DVD, aber immer noch in der Online-Installationsquelle.
 
OP
A

an_no

Newbie
Vielen Dank,

ich habe das rpm-packet gefunden und installiert, dann in Squid eingebunden und die entsprechenden Einträge in der squidguard.conf vorgenommen. Der Zugriff auf den Proxy erfolgt über IE6. Das Problem ist nur, dass keinerlei Inhalte geblockt werden. Rufe ich squidguard -d auf, dann erhalte ich
Code:
fsegs:/usr/sbin/squidGuard-1.2.0/log # /usr/sbin/squidGuard -d
2007-02-22 17:48:58 [4470] init domainlist /usr/sbin/squidGuard-1.2.0/db/porn/domains
2007-02-22 17:48:58 [4470] loading dbfile /usr/sbin/squidGuard-1.2.0/db/porn/domains.db
2007-02-22 17:48:58 [4470] init urllist /usr/sbin/squidGuard-1.2.0/db/porn/urls
2007-02-22 17:48:58 [4470] loading dbfile /usr/sbin/squidGuard-1.2.0/db/porn/urls.db
2007-02-22 17:48:58 [4470] squidGuard 1.2.0 started (1172162938.852)
2007-02-22 17:48:58 [4470] squidGuard ready for requests (1172162938.857)
Zur gleichen Zeit steht allerdings in der .log

Code:
2007-02-22 17:20:36 [4147] squidGuard stopped (1172161236.365)
2007-02-22 17:37:15 [4291] squidGuard 1.2.0 started (1172162235.702)
2007-02-22 17:37:15 [4291] db update done
2007-02-22 17:37:15 [4291] squidGuard stopped (1172162235.833)
2007-02-22 17:42:18 [4311] squidGuard 1.2.0 started (1172162538.195)
2007-02-22 17:42:18 [4311] db update done
2007-02-22 17:42:18 [4311] squidGuard stopped (1172162538.256)

als letzter Eintrag. Da stand auch schon mal
... ready for requests ...

das ist die squidguard.conf

Code:
logdir /usr/sbin/squidGuard-1.2.0/log
dbhome /usr/sbin/squidGuard-1.2.0/db
dest porn {
        domainlist porn/domains
        urllist porn/urls
        log porn.log
        }

acl {
        default {
                pass !porn all
                redirect 302:http://www.egs-baddueben.de
        }
 }

Ich bin mir nicht ganz sicher ob die Dateien domainlist und urllist im Verzeichnis porn/ oder porn/domains bzw. porn/urls sein müssen. squidguard -D all klappt allerding nur wenn die Verzeichnisse domains und urls da sind. Wenn nicht bleibt er einfach hängen.
... ??? ...
 
OP
A

an_no

Newbie
Ich habe es inzwischen geschafft. Das Problem war ebenso banal wie wirkungsvoll. Der user Squid braucht volle Rechte auf das db-Verzeichnis. Dann klappt es auch. In der squidguard.log steht als letztes immer noch ... squidguard stopped... aber es funktioniert trotzdem. Nochmal vielen Dank bis zum nächsten mal.
 

mguenther

Newbie
DANKE !!!!!!!

Endlich der entscheidende Tipp, ich habe mir auch schon einen Wolf gesucht, immer die gleichen Hinweise, ohne das diese etwas gebracht hätten.

War exakt das gleiche Problem wie bei Dir:

- OSS 2.5 RC8 installiert (auf Basis SLES 9)
- squid und squidguard korrekt eingerichtet
- alle CONFIGs und ACL's in Ordnung
- blacklist und whitelist des OSS-Servers sowie alle ACL Definitionen ohne Funktion

Es funktionierte nur die Proxy-Authentifizierung, gesperrte Seiten konnten munter angesurft werden, Dienste alle korrekt gestartet, Pfade in Ordnung, nur keine Reaktion von Squidguard.

Dank Deines Tipps mit Konqueror im Systemverwaltungsmodus die Berechtigungen für alle Unterverzeichnisse in /etc/var/lib/squidGuard alle aktiviert, obwohl der User "squid" Besitzer ist, endlich klappts ! :D

Nochmals danke !

Gruß,

M. Günther
 
Oben