SquidGuard URLs werden nicht geblockt

Gemeinsam ins Internet mit Firewall und Proxy.
Antworten
DomCom
Beiträge: 4
Registriert: 08.05.2015 16:23:01

SquidGuard URLs werden nicht geblockt

Beitrag von DomCom » 11.05.2015 11:32:30

Guten Tag Allerseits.

Ich bin jetzt seit einigen Tagen daran Squid mit SquidGuard auf enem Debian Rechner zum Laufen zu bringen, hänge aber bei SquidGuard irgendwie fest und ich hoffe ihr könnt mir evt. helfen.

Zum System.
Es ist eine normale Debian 8 installation die momentan zu testzwecken auf einem normalen Desktop PC läuft. Es läuft darauf Squid3.4 und SquidGuard 1.5, installiert habe ich die beiden über das normale repository.

Zum Problem.
Squid läuft und blockiert auch Seiten die ich mit Hilfe der acls in der squid.conf eingetragen habe. Aber ich habe eigentlich nicht vor, Squid alleine zu verwenden, sondern im Zusammenhang mit SquidGuard. Und da fangen die Probleme an, denn sobald ich die acls aus der squid.conf raus nehme und über die squidguard.conf mit Hilfe einer heruntergeladenen Backlist konfigurieren will, wird keine Seite mehr blockiert. In dem Access log File wird auch immer schön eingetragen welche Seite geöffnet wurde(TCP_MISS/302 375 GET http://www.cnn.com/
, obwohl sie Blockiert sein müsste.

Meine Konfig files :
/etc/squid3/squid.conf

Code: Alles auswählen

acl localnet src 192.168.0.0/24 # RFC1918 possible internal network
acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost manager
http_access deny manager
http_access allow localhost
http_access allow localnet
url_rewrite_program /usr/bin/squidGuard -c /etc/squidguard/squidGuard.conf
url_rewrite_children 2

http_port 3128
cache_dir ufs /var/spool/squid3 400 16 256
access_log daemon:/var/log/squid3/access.log squid
coredump_dir /var/spool/squid3
refresh_pattern ^ftp:           1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
refresh_pattern .               0       20%     4320
/etc/squidguard/squidGuard.conf

Code: Alles auswählen

dbhome /var/lib/squidguard/db
logdir /var/log/squidguard
dest porn {
        domainlist blacklists/porn/domains
        urllist blacklists/porn/urls
        expressionlist  blacklists/porn/expressions
}
dest news {
        domainlist blacklists/news/domains
        urllist blacklists/news/urls
}
acl {
        default {
                pass     !in-addr !porn !news any
        }
}
SquidGuard erstellt auch mit dem Befehl squidGuard -C all die Datenbanken von den Blacklists die ich konfiguriert habe:

Code: Alles auswählen

2015-05-11 11:09:11 [18822] INFO: New setting: dbhome: /var/lib/squidguard/db
2015-05-11 11:09:11 [18822] INFO: New setting: logdir: /var/log/squidguard
2015-05-11 11:09:11 [18822] init domainlist /var/lib/squidguard/db/blacklists/porn/domains
2015-05-11 11:09:11 [18822] INFO: loading dbfile /var/lib/squidguard/db/blacklists/porn/domains.db
2015-05-11 11:09:11 [18822] init urllist /var/lib/squidguard/db/blacklists/porn/urls
2015-05-11 11:09:11 [18822] INFO: loading dbfile /var/lib/squidguard/db/blacklists/porn/urls.db
2015-05-11 11:09:11 [18822] init expressionlist /var/lib/squidguard/db/blacklists/porn/expressions
2015-05-11 11:09:11 [18822] init domainlist /var/lib/squidguard/db/blacklists/news/domains
2015-05-11 11:09:11 [18822] INFO: loading dbfile /var/lib/squidguard/db/blacklists/news/domains.db
2015-05-11 11:09:11 [18822] init urllist /var/lib/squidguard/db/blacklists/news/urls
2015-05-11 11:09:11 [18822] INFO: loading dbfile /var/lib/squidguard/db/blacklists/news/urls.db
2015-05-11 11:09:11 [18822] INFO: squidGuard 1.5 started (1431335351.932)
2015-05-11 11:09:11 [18822] INFO: squidGuard ready for requests (1431335351.933)
aber ich komme trotzdem noch auf die geblockten Seiten...

Die Berechtigungen der Verzeichnisse von Squid:

ls -lah /etc/squid3/
insgesamt 512K
drwxr-xr-x 2 root root 4.0K Mai 11 10:05 .
drwxr-xr-x 145 root root 12K Mai 11 09:56 ..
-rw-r--r-- 1 root root 1.6K Aug 28 2014 errorpage.css
-rw-r--r-- 1 root root 421 Aug 28 2014 msntauth.conf
-rw-r--r-- 1 root root 1.2K Mai 11 10:05 squid.conf
-rw-r--r-- 1 root root 202K Jan 9 13:41 squid.conf.dpkg-old

ls -lah /etc/squidguard/
insgesamt 32K
drwxr-xr-x 2 root root 4.0K Mai 11 09:56 .
drwxr-xr-x 145 root root 12K Mai 11 09:56 ..
-rw-r----- 1 proxy proxy 338 Mai 8 16:46 squidGuard.conf

ls -lah /var/lib/squidguard/db/blacklists/
insgesamt 444K
drwxr-s--- 109 proxy proxy 4.0K Mai 4 06:09 .
drwxr-s--- 3 proxy proxy 4.0K Mai 4 11:19 ..
drwxr-s--- 2 proxy proxy 4.0K Mai 4 06:09 abortion
drwxr-s--- 2 proxy proxy 4.0K Mai 4 06:09 ads
drwxr-s--- 2 proxy proxy 4.0K Mai 4 06:09 adult
drwxr-s--- 2 proxy proxy 4.0K Mai 4 06:09 aggressive
...
Langsam habe ich keine Ideen mehr ausser, das evt. irgendwo die Berechtigungen nicht stimmen, aber die sollten, meines Wissens nach, richtig mit apt-get installiert worden sein.

Freundliche Grüsse
DomCom

uname
Beiträge: 10057
Registriert: 03.06.2008 09:33:02

Re: SquidGuard URLs werden nicht geblockt

Beitrag von uname » 11.05.2015 14:23:11

Irgendwie weicht die Angabe zum Eintrag in squid.conf:

http://www.squidguard.org/Doc/verify.html

von anderen Angaben wie

Code: Alles auswählen

redirect_program /usr/bin/squidGuard -c /etc/squid/squidGuard.conf
ab. Leider weiß ich nicht was richtig ist.

Teste zudem die Konfiguration laut obigen Link (squidGuard -d). Poste Meldungen.
Mit dem Neustart von Squid müssten etliche squidGuard-Prozesse laufen. Schau mal entsprechend z.B. mit "ps" oder "top".

DomCom
Beiträge: 4
Registriert: 08.05.2015 16:23:01

Re: SquidGuard URLs werden nicht geblockt

Beitrag von DomCom » 11.05.2015 16:22:33

Danke für die schnelle Antwort.
Das von den 2 verschiedenen redirect und rewrite habe ich auch gesehen, aber es scheint als ob es Versions abhängig ist, welchen man einsetzen muss.
Aber leider hat sich auch durch das ändern dieser Zeile nichts verändert. Die News und Porno Seiten gehen immer noch ohne Einschränkungen.

url_rewrite_program /usr/bin/squidGuard -c /etc/squidguard/squidGuard.conf
redirect_program /usr/bin/squidGuard -c /etc/squidguard/squidGuard.conf

Nach dem ich in der konfig url_rewrite_program mit redirect_programm ersetzt habe, startet SquidGuard immer noch gleich und meldet, er wäre für die Arbeit bereit.
squidGuard -d

Code: Alles auswählen

2015-05-11 15:00:25 [20919] INFO: New setting: dbhome: /var/lib/squidguard/db
2015-05-11 15:00:25 [20919] INFO: New setting: logdir: /var/log/squidguard
2015-05-11 15:00:25 [20919] init domainlist /var/lib/squidguard/db/blacklists/porn/domains
2015-05-11 15:00:25 [20919] INFO: loading dbfile /var/lib/squidguard/db/blacklists/porn/domains.db
2015-05-11 15:00:25 [20919] init urllist /var/lib/squidguard/db/blacklists/porn/urls
2015-05-11 15:00:25 [20919] INFO: loading dbfile /var/lib/squidguard/db/blacklists/porn/urls.db
2015-05-11 15:00:25 [20919] init expressionlist /var/lib/squidguard/db/blacklists/porn/expressions
2015-05-11 15:00:25 [20919] init domainlist /var/lib/squidguard/db/blacklists/news/domains
2015-05-11 15:00:25 [20919] INFO: loading dbfile /var/lib/squidguard/db/blacklists/news/domains.db
2015-05-11 15:00:25 [20919] init urllist /var/lib/squidguard/db/blacklists/news/urls
2015-05-11 15:00:25 [20919] INFO: loading dbfile /var/lib/squidguard/db/blacklists/news/urls.db
2015-05-11 15:00:25 [20919] INFO: squidGuard 1.5 started (1431349225.289)
2015-05-11 15:00:25 [20919] INFO: squidGuard ready for requests (1431349225.290)
Was mir bei diesem Befehl aufgefallen ist, dass er nach der letzten Zeile nicht wieder zurück zur normalen Eingabe springt sondern einfach wartet. Wenn ich dann Enter drücke kommt folgendes:

Code: Alles auswählen

2015-05-11 16:03:24 [22005] ERROR: Error parsing squid line:
BH message="squidGuard error parsing squid line"
Und es laufen auch beide Dienste, obwohl der SquidGuard nicht immer selbst startet. Der SquidGuard erscheint erst wenn ich squidGuard -d ausgeführt habe.
ps -e | grep squid

Code: Alles auswählen

20888 ?        00:00:00 squid3
20890 ?        00:00:00 squid3
20915 ?        00:00:00 squidGuard
Ich glaube ich habe auch noch ein kleinen Fehler in der squidGuard.conf Datei gefunden und zwar hatte ich bei den zugelassenen Verbindungen beim default any und nicht all drin, hat aber auch nichts gebracht.
Und ja die Verzeichnisse stimmen nicht mit denen auf der SquidGuard Seite überein, stimmen aber soweit ich das nachvollziehen konnte, es wurde halt von debian so installiert.

uname
Beiträge: 10057
Registriert: 03.06.2008 09:33:02

Re: SquidGuard URLs werden nicht geblockt

Beitrag von uname » 11.05.2015 16:31:47

Versuche mal sowas:

Code: Alles auswählen

echo "http://foo.com/ 127.0.0.1 - GET" |  /usr/bin/squidGuard -c /etc/squid/squidGuard.conf
URL entsprechend mal einsetzen.

DomCom
Beiträge: 4
Registriert: 08.05.2015 16:23:01

Re: SquidGuard URLs werden nicht geblockt

Beitrag von DomCom » 12.05.2015 08:25:19

Wenn ich den von dir vorgeschlagenen Befehl ausführe, mit einer Adresse die Blockiert sein sollte bekomme ich folgende Ausgabe:

echo "http://cnn.com/ 127.0.0.1 - GET" | /usr/bin/squidGuard -c /etc/squidguard/squidGuard.conf
ERR

Im SquidGuard Log wird folgendes geloggt:

/var/log/squidguard/squidGuard.log

Code: Alles auswählen

2015-05-12 08:16:13 [30571] INFO: New setting: dbhome: /var/lib/squidguard/db
2015-05-12 08:16:13 [30571] INFO: New setting: logdir: /var/log/squidguard
2015-05-12 08:16:13 [30571] init domainlist /var/lib/squidguard/db/blacklists/porn/domains
2015-05-12 08:16:13 [30571] INFO: loading dbfile /var/lib/squidguard/db/blacklists/porn/domains.db
2015-05-12 08:16:13 [30571] init urllist /var/lib/squidguard/db/blacklists/porn/urls
2015-05-12 08:16:13 [30571] INFO: loading dbfile /var/lib/squidguard/db/blacklists/porn/urls.db
2015-05-12 08:16:13 [30571] init expressionlist /var/lib/squidguard/db/blacklists/porn/expressions
2015-05-12 08:16:13 [30571] init domainlist /var/lib/squidguard/db/blacklists/news/domains
2015-05-12 08:16:13 [30571] INFO: loading dbfile /var/lib/squidguard/db/blacklists/news/domains.db
2015-05-12 08:16:13 [30571] init urllist /var/lib/squidguard/db/blacklists/news/urls
2015-05-12 08:16:13 [30571] INFO: loading dbfile /var/lib/squidguard/db/blacklists/news/urls.db
2015-05-12 08:16:13 [30571] INFO: squidGuard 1.5 started (1431411373.352)
2015-05-12 08:16:13 [30571] INFO: squidGuard ready for requests (1431411373.353)
2015-05-12 08:16:13 [30571] INFO: squidGuard stopped (1431411373.353)

uname
Beiträge: 10057
Registriert: 03.06.2008 09:33:02

Re: SquidGuard URLs werden nicht geblockt

Beitrag von uname » 12.05.2015 08:42:23

ERR bedeutet Sperrung und OK bedeutet der Zugriff ist erlaubt. Somit scheint SquidGuard zu arbeiten. Die Anbindung von Squid scheint nicht zu klappen. Leider habe ich dazu keine Idee.

DomCom
Beiträge: 4
Registriert: 08.05.2015 16:23:01

Re: SquidGuard URLs werden nicht geblockt

Beitrag von DomCom » 12.05.2015 13:42:07

ah ok, also würde diese Ausgabe stimmen. Das Problem ist aber auch, dass wenn ich den befehl mit http://google.com ausführe auch ERR als Ausgabe erhalte.

Irgendwie glaube ich das der Parsing Error das Hauptproblem ist, aber leider finde ich im internet nichts was zu meinem problem passt und die Meldung selber ist für mich auch nicht gerade aussagekräftig.
ERROR: Error parsing squid line:
BH message="squidGuard error parsing squid line"

acurti
Beiträge: 1
Registriert: 12.08.2019 18:13:22

Re: SquidGuard URLs werden nicht geblockt

Beitrag von acurti » 12.08.2019 19:20:42

Hi,
ich war sicher 2 wochen am proxy squid bis alle funktionierte inkl https filtern mit squidguard
Jetzt wird auch https gefiltert und blockiert die ich will blockieren mit squidguard. Zusätzlich erstellt mein proxy fake zert. oben im zert steht google oder was auch immer und weiter unten zertifiziert von meiner domäne.
wichtig:
squid source runterladen und https directive aktivieren und kompilieren und installieren. um https filtern zu können muss proxy entschlüsseln und verschlüsseln können.
iptables
Dann iptables 2x redirect von 80 auf 3129 und 443 auf 3130 für http und https inkl. zert weil alle zert von proxy gefakt werden. extrem gut so kann entschlüsselt und wieder verschlüsselt werden.
squid config:
Dann 3128 normal im squid belassen
3129 transaparent http einstellen
3130 transparent aber eben mit directive https_port und zert (generiert dann eben die fakezert)
zusätzlich den 3128 belassen ansonsten routing fehler, denn einige infos laufen über den 3128

Grob erklährt wenn du eine genaue anleitung benötigst dann melde dich ich werde dann meine konfigdateien dir zusenden.
Wenn du dann alles manuell eingerichtet hast kannst du noch squidguard modul im webmin installieren und sarg und sarg im webmin. So kannst du einfach die seiten hinzufügen die blockiert werden sollen. absolut wichtig ist auch wenn du etwas mit webmin änderts im squidguard dann musst du am schluss die rechte wieder einstellen dort wo die spam db sind also mit chmod benutzer proxy und gruppe proxy voll schreibrechte. webmin ändert dies immer wieder auf root. ansonsten funktioniert squidguard nicht richtig.

iptables:
-----------
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3129
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 443 -j REDIRECT --to-port 3130



squid die wichtigsten einträge Betreff https und squidguard:
--------------------------------------------------------------------------
url_rewrite_program /usr/bin/squidGuard -c /etc/squidguard/squidGuard.conf

# Squid normally listens to port 3128
http_port 3128
http_port 3129 intercept
https_port 3130 intercept ssl-bump cert=/usr/local/squid/etc/ssl_cert/mySquidCA.pem generate-host-certificates=on dynamic_cert_mem_cache_size=4MB


acl step1 at_step SslBump1


ssl_bump peek step1


ssl_bump bump all
sslcrtd_program /usr/local/squid/libexec/security_file_certgen -s /usr/local/squid/var/logs/ssl_db -M 4MB

sslcrtd_children 8 startup=1 idle=1
httpd_suppress_version_string on

redirect_program /usr/bin/squidGuard -c /etc/squidguard/squidGuard.conf

Genau so funktioniert jetzt beim mir squidguard und proxy http/https inkl. filtern.

Am Schluss auf allen client das cert installieren


das sieht dann so aus betreff cert: https://drive.google.com/open?id=1KfWQZ ... zOqhe5XThD

Gruss
andi aus der Schweiz

Antworten