BelWue stellt Proxy auf DNS um

Hallo zusammen,

gerade erreicht mich eine Mail von BelWü in der sie ankündigen, dass sie zum Jahresende den BelWü Proxy abschalten und man auf DNS Filterung umstellen soll.
Dazu trägt man den neuen DNS von BelWü ein und macht Port 53 nach außen zu, damit der DNS nicht einfach umgangen werden kann.

Ich halte das für eine gute Idee und freue mich darüber.
Einziger Wehrmutstropfen ist, dass wenn eine https Seite durch die gesperrt ist, man auf eine Sperrseite umgeleitet wird, die erstmal nicht erscheint, wegen eines Zertifikatsfehlers.
Man muss deren CA im Browser integrieren.
Sie sagen aber, dass sie keine https Sitzungen aufbrechen.
Ist die Seite frei, dann wird nicht eingegriffen.

Nähere Infos stehen hier:
https://www.belwue.de/produkte/dienste/jugendschutzfilter/news.html

LG

Holger

Hallo Holger,

eine gute Nachricht. Der Proxyeintrag hat mich schon lange geärgert, weil er sich massiv auf die Performanz ausgewirkt hat.
Also einfach mittels linuxmuster-setup --modify die entsprechenden DNS-Adressen eintragen?

Ich hoffe, dass das DNSSEC-Problem von BelWü auch gleich gelöst worden ist.

Viele Grüße

Wilfried

Hallo zusammen,

wie man die Umstellung im Detail macht wäre schon ein wichtiger Hinweis!
linuxmuster-setup --modify greift ja tief ins System ein … ist das der richtige Weg ? oder doch nur im IPfire an der Kommandozeile setup?

Grüße Rainer

Hallo Rainer,

ich habs noch nicht gemacht, aber ich denke, dass man das nur auf dem IPFire eintragen muss (ja, mit “setup” in der Kommandozeile),.

LG
Max

Hallo,

ich habs noch nicht gemacht, aber ich denke, dass man das nur auf dem
IPFire eintragen muss (ja, mit “setup” in der Kommandozeile),.

das kommt darauf an: wenn der Server auch den IPFire als DNS Resolver
nimmt, dann wäre das ja schön: dann wäre es mit einem Eintrag auf dem
IPFire (z.B. mittels „setup“) getan.

Auf dem Server steht in der /etc/resolv.conf aber er selbst als resolver
drin und der DHCP gibt auch den server als DNS mit.
Also muss ich mal suchen, wo der DNS Server auf dem Server selbst seine
Anfragen hin schickt.
Aha: in der /etc/bind/named.conf.options
steht der IPFire drin.
Also: der Server erhält siene Antworten vom IPFire: wenn wir den neuen
DNS dort eintragen, gelten sie für das ganze Netz.

Das acht uns so direkt aber auch nicht ganz Glücklich: wir haben ja noch
mehr Netze und auch „spezielle“ Clients im Netz: welche die nicht
unserer vollen Gewalt unterliegen, wie z.B. WLAN Clients die wir nach
Grün routen per unifi.
Wollen wir die DNS Filterung richtig machen, dann fehlen ja noch zwei
Schritte:

  1. alle weiteren DNS Anfragen sperren (damit niemand einfach seinen
    eigenen DNS einträgt): also Port 53udp von Grün nach Rot sperren.
  2. die CA im Browser installieren, damit keine Fehlermeldung vor der
    Sperrseite kommt.

Für Blau müssen wir uns entscheiden: da sind private Geräte in der Überzahl.
Wollen wir die über den filternden DNS schicken, dann bekommen sie halt
den Fehler bei Sperrseiten.
Wollen wir das nicht, definieren wir einen anderen DNS für Blau (und
erlauben Port 53udp von Blau nach Rot). Das werde ich wohl erstmal so
machen.

Bei den grünen WLAN Clients ist das nicht so einfach…
Das müssen wir testen (und noch ein wenig drüber nachdenken).

Ich plane noch in den Ferien den IPFire up zu daten und dann auf DNS
Filter von BelWü um zu stellen.

LG

Holger

Hallo,

ich habe den IPFire auf 122 upgedatet (mit linuxmuster-ipfire --upgrade
), den neuen DNS eingerichtet (auf dem IPFire mittels setup).

… Das hat nicht funktioniert, weil der DNS von BelWü natürlich kein
DNSSEC hat (was sie noch 2017 eigentlich für ihre DNS einrichten wollten
…).
Fehlermeldung beim Booten:

ipfire ignoring broken upstream name server 129.143.4.3
falling back to recursor mode

… also mußte ich DNSSEC abschalten nach dieser Anleitung:

Jetzt filtert der DNS… soweit so gut.
Jetzt muss ich noch bei allen Clients die CA einspielen.

LG

Holger

1 „Gefällt mir“

Hallo Holger,

danke für den Hinweis mit DNSSEC.

Ich hatte natürlich auch die Meldung

Die habe ich aber erstmal ignoriert, weil die mit den alten BelWü-Servern auch schon kam, die Namensauflösung aber trotzdem immer funktioniert hat (über welchen externen Nameserver auch immer das dann lief, ist mir nicht klar…)

Viele Grüße

Andreas

Hallo Holger,

laut Belwü werden wir uns DNSSEC bei 129.143.4.3 wohl verabschieden müssen.
Zitat aus einer Antwortmail:
“Bei unserem Jugendschutz-DNS-Server liegt es leider in der Natur eines DNS-Filters, dass er DNS-Antworten fälschen muss, und daher kann er nicht mit DNSSEC arbeiten.”

Nun gibt es auf der angeführten Seite mehrere Möglichkeiten, um DNSSEC zu deaktivieren. Welche Lösung ist zu bevorzugen?

Viele Grüße

Wilfried

Hallo Wilfried,

ich hab das so gemacht, wie Dominik es beschrieben hat:

In der /etc/init.d/unbound (auf IPFire)
alles im Bereich test_nameservers auskommentiert, außer einer Zeile mit
return=2

[code]
test_name_server() {
local ns=${1}
local args

# Return codes:
# 0	DNSSEC validating
# 1	Error: unreachable, etc.
# 2	DNSSEC aware
# 3	NOT DNSSEC-aware

aukommentiert HIB August 2018

# Exit when the server is not reachable

ns_is_online ${ns} || return 1

	return=2

# Determine the maximum edns buffer size that works

local edns_buffer_size=$(ns_determine_edns_buffer_size ${ns})

if [ -n “${edns_buffer_size}” ]; then

args="${args} +bufsize=${edns_buffer_size}"

fi

Hallo Holger,

da fehlt wohl noch das schließende [/code]

Viele Grüße

Andreas

Hallo Andreas,

da fehlt wohl noch das schließende [/code]

hoppla: ich hab meinen Post nicht noch mal angeschaut…
Seltsam: in meiner Mail ist das [/code] durchaus drin.
Mal sehen, wo das abbricht …
Ich schicke meinen Post gleich nochmal.

LG

Holger

Jetzt nochmal:

Hallo Wilfried,

ich hab das so gemacht, wie Dominik es beschrieben hat:

In der /etc/init.d/unbound (auf IPFire)
alles im Bereich test_nameservers auskommentiert, außer einer Zeile mit
return=2

test_name_server() {
	local ns=${1}
	local args

# Return codes:
# 0	DNSSEC validating
# 1	Error: unreachable, etc.
# 2	DNSSEC aware
# 3	NOT DNSSEC-aware
# aukommentiert HIB August 2018
# Exit when the server is not reachable
#ns_is_online ${ns} || return 1
		return=2

# Determine the maximum edns buffer size that works
#local edns_buffer_size=$(ns_determine_edns_buffer_size ${ns})
#if [ -n "${edns_buffer_size}" ]; then
#	args="${args} +bufsize=${edns_buffer_size}"
#fi
#local errors
#for rr in DNSKEY DS RRSIG; do
#if ! ns_forwards_${rr} ${ns} ${args}; then
#errors="${errors} ${rr}"
#fi
#done
#if [ -n "${errors}" ]; then
#echo >&2 "Unable to retrieve the following resource records from ${ns}:
${errors:1}"
#return 3
#fi
#if ns_is_validating ${ns} ${args}; then
# Return 0 if validating
#return 0
#else
# Is DNSSEC-aware
#return 2
#fi
}

Und in der /etc/unbound/unbound.conf

val-permissive-mode: no
auf
val-permissive-mode: yes
gesetzt.

Danach IPfre rebootet.

LG

Holger

Hallo,

es läuft jetzt. Ich habe aber, wie einst von Dominik bei der opndns-Problematik herausgefunden, alle “Schalter” betätigen müssen. Hinweis: Von den betroffenen Dateien vorher Sicherheitskopien anzufertigen, kann nicht schaden.

Zunächst in der Datei /etc/init.d/unbound:

und dann in der Datei /etc/unbound/unbound.conf sowohl val-permissive-mode als auch harden-dnssec-stripped:

conf

Danach wird gefiltert und safesearch ist aktiviert. Ich habe den IPFire neu gestartet, wahrscheinlich reicht auch ein:

/etc/init.d/unbound restart.

Nützliche Befehle: /etc/init.d/unbound test–name-server 129.143.4.3 und auch nslookup www.google.de 129.143.4.3

Verbleibende Probleme:
Beim Neustart des IPFire gibt es die DNSSec-Pause nicht mehr, dafür hängt er bei mir ca. 3 Minuten an der Meldung:
Setting up default gateway (Router-IP Belwü)
Das ist nicht so tragisch, schlimmer ist, dass sich der jetzt sehr gut funktionierende Webfilter bei mir (und wahrscheinlich aus technischen Gründen bei allen) nicht mehr über die Schulkonsole ausschalten lässt.

Viele Grüße

Wilfried

1 „Gefällt mir“

Hallo zusammen,

ich habe auch auf die DNS-Filterung umgestellt (mittels setup auf dem IPFire). Danach stand bei mir der DNS-Server auch auf “local recursor”. Ich habe dann den IPFire nochmal neu gebootet, und jetzt scheint alles OK. Ich habe keine von den von euch beschriebenen Änderungen in den config-files vorgenommen, und erhalte auch nach mehrmaligem Boot immer dieses Bild:
belwue-dns
Stimmt damit was nicht, oder ist das Zufall dass das bei mir klappt?

LG Alex

Hallo Alex,

Gute Frage…

Ich hatte allerdings keinen Reboot gemacht, sondern nur ein /etc/init.d/unbound restart.

Ohne die Änderungen an der unbound.conf und dem Startscript kommt bei mir dann ein

Stopping Unbound DNS Proxy...                                          [  OK  ]
Starting Unbound DNS Proxy...                                          [  OK  ]
Ignoring broken upstream name server(s): 129.143.4.3                   [ WARN ]
Falling back to recursor mode      

Mit den Änderungen:

Stopping Unbound DNS Proxy...                                          [  OK  ]
Starting Unbound DNS Proxy...                                          [  OK  ]
Configuring upstream name server(s): 129.143.4.3                       [  OK  ]

Welche Version von ipfire hast du denn? (Bei mir ist’s core update 119)

Das DNSSEC-Problem gibt es wohl erst seit 106:

Viele Grüße

Andreas

Hallo Alex,

ich habe auch auf die DNS-Filterung umgestellt (mittels setup auf dem
IPFire). Danach stand bei mir der DNS-Server auch auf “local recursor”.
Ich habe dann den IPFire nochmal neu gebootet, und jetzt scheint alles
OK. Ich habe keine von den von euch beschriebenen Änderungen in den
config-files vorgenommen, und erhalte auch nach mehrmaligem Boot immer
dieses Bild:
belwue-dns
Stimmt damit was nicht, oder ist das Zufall dass das bei mir klappt?

… ich war nach dem Umstellen so frei und hab einfach mal, bei
abgeschlateten URL Filter im IPFire, die Seite www.sex.com angesurft …
das hat funktioniert.
Du könntest es ja auch so testen …
Ich wußte dann, dass zwar die 129.143.4.3 eingetragen war, aber
offensichtlich nicht verwendet wurde.
Welcher DNS da verwendet wurde, ist mir nicht bekannt.
Nach den beschriebenen Änderungen konnte ich mit der Seite die
Sperrseite von BelWü provozieren.

LG

Holger

Ich habe Core 121.

LG Alex

Hallo Holger,
das habe ich natürlich auch probiert: Der Belwue-Filter funktioniert.
Dann lass ich das jetzt mal so ohne weitere Änderungen.

LG Alex

Hallo Alex,

ich hatte (um die Reboot-Zeit nach dem Update auf 119 zu verkürzen) damals noch das hier gemacht:

Keine Ahnung, ob das evtl. damit zu tun haben könnte. Vielleicht teste ich das mal bei Gelegenheit…

Viele Grüße

Andreas

Die 3-Minuten Ehrenrunde hab ich auch, stört mich aber nicht, die Tage von ipfire sind in Bezug auf linuxmuster 7 ja wohl eh gezählt.

LG Alex