Montag, 13. Dezember 2021

Einrichten eines Proxy-Servers mit Jugendschutzfiltern für das MDM-Netz der paedML-Linux mit Erweiterung für iPads

Anmerkung Johannes Albani: Das LMZ hat nun die Anleitung zu JusProgDNS veröffentlicht.  Dieser Dienst könnte eine Alternative zur im folgenden Vorgestellten Jugendschutz Filterung darstellen. 

Anmerkung Tino Aidam: Wie es scheint, ist die Shalla-Liste zumindest vorrübergehend offline, wann sie wieder online geht ist nicht bekannt. 

 ("Due to personal reasons and the political situation in this country the company Shalla Secure Services has been closed and in consequence the blacklist service has been stopped.
Sorry for any inconveniences.
Time will tell if we can start in another country again.", http://www.shallalist.de/, 17.03.2022)

Diese Anleitung kann weiterhin mit anderen Blacklists genutzt werden, die an Stelle der Shalla-Liste eingetragen werden können. 

 

Wenn man in der paedML-Linux iPads nach der Anleitung des LMZ einsetzten will, wird man feststellen, dass Stand heute (08.12.2021) die aktuellste Anleitung keine wirklich befriedigende Antwort auf die Frage bringt, wie man denn eine Proxyfilterung für diese umsetzen kann. Glücklicherweise bietet die von der paedML-Linux eingesetzte Firewall - die pfSense – eine Möglichkeit, einen Squid-Proxy einzusetzen, um genau das zu erreichen.

Dazu muss man auf der Firewall unter „System/Package Manager“ die beiden Pakete „squid“ und „squidGuard“ installieren. Squid ist dabei der eigentliche Proxy und squidGuard der zugehörige Webfilter.

 

 

Wenn diese Pakete installiert sind, kann man den Proxyserver unter „Services/Squid Proxy Server“ konfigurieren.

Hier aktivieren wir nun einige Punkte:

   1. Enable Squid Proxy:

Ziemlich selbsterklärend

 

        2. Proxy Interfaces:

Hier wählen wir aus, auf welchen Interfaces unser Proxy laufen soll. In meinem Fall ist das das IPAD-Netz (entspricht dem MDM Netz aus der LMZ-Anleitung).
Zumindest bei mir ist der Proxy bereits angewesen und dem pädagogischen Netz zugewiesen, dies ist aber laut technischem Support LMZ nicht notwendig, da auf dem Server der paedML-Linux (10.1.0.1) bereits ein squid-Proxy läuft.

 

        3. Transparent HTTP Proxy:

Damit man keine Einstellungen auf den iPads machen muss, wir der Proxy als transparenter Proxy aufgesetzt.

 

        4. Transparent Proxy Interface(s):

Hier wählen wir wieder aus, auf welches Netzwerk wir den Proxy anwenden wollen. In meinem Fall das IPAD-Netz.

 

 

Da wir nicht nur HTTP-Anfragen abfangen wollen (die meisten „interessanten“ Webseiten benutzen inzwischen HTTPS), müssen wir nun noch das DNS-Filtering für HTTPS aktivieren.

Um das tun zu können, müssen wir unter „System/Cert. Manager“ noch eine neue interne CA (Certification Authority) hinzufügen (Falls man das gleiche Fenster benutzt, speichern nicht vergessen).
Auf dem Bild ist meine neue CA schon zu sehen, ich habe sie nicht extra nochmal gelöscht

 

Dazu auf „Add“ gehen und einfach eine neue Authority erstellen. Hier einen Namen eintragen. Ich habe noch die Haken bei „Trust Store“ und „Randomize Serial“ gesetzt, die restlichen Felder bleiben unberührt.

Nun mit Save erstellen und wieder zu „Services/Squid Proxy Server“ wechseln.

Dort stellen wir noch folgendes ein:

        5. HTTPS/SSL Interception:

Aktivieren, damit gefiltert wird

 

    6. SSL/MITM Mode:

            Splice All, sonst müssen wir auf allen Clients Zertifikate installieren

 

   7. SSL Intercept Interface(s):

Auch hier geben wir wieder die Interfaces an, auf denen das ganze laufen soll. In meinem Fall wieder IPAD.

 

        8. CA:


Hier wählen wir die eben erstellte interne CA aus.

Was das Logging angeht, dürft ihr selbst entscheiden, ob ihr Loggen wollt, wie viele Tage geloggt werden sollen usw.

Nun speichern wir das Ganze und haben damit unseren Proxy erstellt.

 

Jetzt müssen wir noch die Filter setzen. Das machen wir unter „Services/SquidGuard Proxy Filter“.

Hier habe ich die Haken bei

Enable

Enable Log

Enable Log Rotation

Und Enable Blacklist

gesetzt. Außerdem ist als Blacklist-URL http://www.shallalist.de/Downloads/shallalist.tar.gz hinterlegt. Die Shalla-Liste ist eine Liste, die diverse Kategorien von Webseiten enthält, von denen wir später auswählen können, welche wir blocken wollen. Sie ist außerdem die Liste, die vom LMZ in der paedML-Linux bereits benutzt wird, da bleibt man also konsequent.



Das ganze natürlich wieder mit Save speichern.

Achtung: Alle Einstellungen, die wir hier machen, werden erst aktiv, wenn der grüne Apply-Button gedrückt wird. Auch wenn man eine Einstellung geändert und gespeichert hat, ist sie noch nicht gültig, bis der Knopf gedrückt wurde. Bei der Ersteinrichtung ist auch der Status des Squid Gurads noch „Stopped“.

Nun unter der Unterkategorie „Blacklist“ einmal die hinterlegte Shalla-Liste durch einen Klick auf „Download“ herunterladen.

Jetzt gehen wir noch in die Unterkategorie „Common ACL“ und erweitern Target Rules List durch einen Klick auf das +-Symbol:

 

Hier Setzt man als unterstes den „Default access“ auf „allow“, damit grundsätzlich das Surfen im Internet erlaubt ist. Darüber kann man dann nach Kategorien auswählen, was man Blocken will.
Da ich nicht genau weiß, was in der Shalla-Liste enthalten ist und tendenziell eher für weniger als für mehr Restriktionen bin, habe ich mich mit dem Blocken mal zurück gehalten und werde die Liste nach Bedarf ausbauen.

Da ich vorhabe, auch die Dienst-iPads unserer Lehrer in dieses Netzwerk aufzunehmen, werde ich vielleicht auch noch unter der Unterkategorie „Groups ACL“ weitere Einschränkungen nur für die shared iPads unserer Schule hinzufügen, dass muss sich noch zeigen.

Nachdem wir unsere Filter-Einstellungen wieder gespeichert haben, müssen wir jetzt nochmal unter „General settings“ den Grünen Apply-Button drücken, denn sonst sind unsere Filter zwar schön und gut, aber leider nicht aktiv.

Nach der Anwendung läd sich die Seite einmal neu und der Status bleibt auf „STOPPED“. Wenn man die Seite allerdings 30 Sekunden später nochmal manuell neu läd, hat sich der Status auf „STARTED“ aktualisiert und ihr solltet von den iPads aus dem Netzwerk aus keine geblockten Webseiten mehr erreichen können (und ggf. jedes Mal ein wunderschönes Log speichern. Viel Spaß beim Erklären, wieso euer iPad auf www.porno.de wollte ;-P)

Ich habe das ganze zugegebenermaßen nicht alleine herausgefunden, sondern mich sehr stark an dieser Anleitung orientiert und bin dort abgewichen, wo mir eine andere Vorgehensweise sinnvoller erschien.

Ich hoffe, diese Anleitung hat euch weitergeholfen,

Viele Grüße,
Tino Aidam

 

Montag, 8. November 2021

Google Chrome Roamingprofile in der PaedML

 

Google Chrome verliert nach einem Neustart des PCs die zuletzt gespeicherten Daten wie Lesezeichen oder die Historie.
Das liegt daran, das Chrome alles nach appdata/local speichert. Da das Benutzerprofil, nachdem abmelden vom PC gelöscht wird, gehen auch die Chrome Einstellungen verloren. 
Dieses Problem lässt sich umgehen, indem man einen Regkey per Benutzeranmeldeskript verteilt. 

Einfach mit dem Windows Explorer auf den Server verbinden \\server\netlogon\

Darunter die Batchdatei programme.bat mit einem Editor bearbeiten.

In die vorletzte Zeile folgende Befehle reinkopieren:

mkdir "\\server\%username%\AppData\Google\Chrome\User Data\Default"

Anschließend eine Benutzerrichtlinie anlegen, die einen Registry Eintrag erstellt. Die Sicherheitsfilterung sollte auf wie gewünscht auf Lehrer und/oder Schüler wirken oder gleich auf alle Domainbenutzer.

Benutzerkonfiguration/Einstellungen/Windows-Einstellungen/Registrierung



Überprüfen, ob ein Gerät Roaming-Profile verwendet

Wenn Sie wissen möchten, ob Roaming-Nutzerprofile auf einem Windows-Computer verwendet werden, geben Sie im Browserfenster des Geräts chrome://sync-internals ein. Prüfen Sie dann unter dem Tab About (Info) im Bereich Local State (Lokaler Status), ob die Einstellung Local Sync Backend Enabled (Lokales Back-End für Synchronisierung aktiviert) den Wert "true" (wahr) hat. Ist dies der Fall, sind Roaming-Nutzerprofile aktiviert. Unter Local Backend Path (Lokaler Back-End-Pfad) wird der Speicherort der Roaming-Profildatei angezeigt.

Donnerstag, 2. September 2021

PrintNightmare in der paedML

Sicherlich haben es schon alle mitbekommen, bzw. auch die letzten Wochen und Monate mitverfolgt -> Microsoft hat ein gewaltiges Drucker-/Sicherheitsproblem.

Die Auswirkungen des letzten Microsoft Patchdays im August 2021 lassen auch die paedML nicht unberührt, da seit dem letzten Update eingeschränkte Benutzer (=keine Administrationsrechte) keine Drucktreiber mehr installieren dürfen.

Hat zur Folge, dass man bei einer Anmeldung als Lehrer oder Schüler erst sehr lange (5 bis 10 Minuten) auf die Anmeldung warten muss und dann die Vertrauensstellungs-Abfrage für die Druckerinstallation kommt, die nur abgebrochen werden kann.

Der Trick, bzw. der mittlerweile wieder zwingend benötigte Standard ist der damalige Druckerinstallationsmechanismus aus der paedML 7.0, bzw das OPSI-Paket "druckertreiber". 

Die Vorgehensweise ist in Kapitel 6.6 des Administrationshandbuchs 7.0 vom 04.04.2019 beschrieben -> LMZ-Handbücher 

Dadurch werden die Drucktreiber auf den Clients vorinstalliert und sind bei der Anmeldung und Druckerverbindung schon vorhanden. 

Montag, 19. Juli 2021

Windows Updates kastrieren

In einem Gastbeitrag auf meinem Blog wurde vor 2 Jahren vorgeschlagen, dass man Windows-PCs jeden Zugang zu Updates abdrehen kann. Ich selbst bin von dieser Methode nicht begeistert und werde sie an meiner Schule auch nicht einsetzen, ich hatte aber bezüglich der Einstellung mehrere Rückfragen. Daher möchte ich Ihnen hier die Überarbeitete Richtlinie vorstellen, die mit von Herrn Hadouchi der TesKa Karlsruhe zur Verfügung gestellt wurde. 

Die folgenden Einstellungen sollten Windows-Clients jeden Zugang zu Updates verwehren, da sie als Update-Pfad nur sich selbst fragen dürfen (127.0.0.1). Updates können zwar weiterhin über Opsi verteilt werden, aber die volle Verantwortung liegt nun beim Netzwerkbetreuer/Dienstleister. Setzen Sie diese Richtlinie von daher nur in vollem Bewusstsein der Konsequenzen ein. 

Durch die Folgende Richtlinie ist auch nicht speziell für die paedML Linux/GS sondern beschränkt generell Windows in den folgenden Bereichen, auch wenn teilweise die Einstellungen in der paedML L/GS z.B. schon mit configW10 oder Gruppenrichtlinien eingeschränkt war.  Dies betrifft:

- Windows Telemetrie

- Insider Preview

- Microsoft Store

- Windows Defender Antivirus, bzw. dessen Definitionsupdates

- Windows Update

Folgende Gruppenrichtlinien unterbinden die oben genannten Verbindungen zu Microsoft:

Donnerstag, 15. Juli 2021

WebUntis per LDAP mit paedML Linux/GS-7.2 verbinden

Update: 

Endlich habe ich auch die LDAPs Verbindung erfolgreich umsetzen können. Dank des Artikels bei Univention 
https://help.univention.com/t/ldaps-mit-lets-encrypt/18452
gibt es nun auf meinem Blog eine Anleitung, bei der die LDAPs Verbindung über die Zertifikate der Nextcloud hergestellt wird:

https://paedmllinux.blogspot.com/2022/12/ldaps-fur-webuntis.html

Klarstellung: Es wird hier nur die Synchronisation der Schülerkonten beschrieben! Lehrerkonten sind zwar denkbar, wird aber in untenstehender Lösung nicht beschrieben, da ich die Verwaltung der Lehrer-Konten der Schulleitung überlasse und das Risiko nicht auf die Netzwerkbetreuung verlagern möchte. Das Vorgehen ist aber direkt Analog auch für Lehrkräfte umsetzbar.  

Schritt 1: Firewall 

Firewall per Browser öffnen (10.1.0.11) und als Administrator anmelden. 

Klick auf Firewall --> NAT

Auf Hinzufügen (Pfeil nach unten) klicken um eine neue Regel zu erstellen. 

Protokoll auf TCP/UDP umstellen, 

Bei Quelle auf "Zeige Erweiterte", 

dann bei Quelle "Einzelner Host oder Alias" mit der IP 213.208.138.146 eintragen.

Bei Ziel auf INTERNET adress mit Zielportbereich LDAP einstellen. 

Umleitungsziel "Einzelner Host" auf 10.1.0.1, als Umleitungsport "Anderer" mit "7389" wählen. 

Beschreibung ergänzen, z.B. "LDAP-Weiterleitung für WebUntis"

Unten auf Speichern klicken und die Regel anwenden lassen. 

Schritt 2: WebUntis Konfigurieren

In WebUntis als Admin auf "Administration" --> "Integration" klicken und LDAP auswählen. 

Den Haken "aktiv" erst NACH Fertigstellung setzen!

Bei "LDAP Server URL" ist "ldap://8.8.8.8" ist die IP oder URL der Schule anstelle der 8.8.8.8 einzutragen.

Für LDAPs muss hier unter "LDAP Server URL" der Wert "ldaps://cloud.meine-schule.de" eingegeben werden, dabei ist cloud.meine-schule.de durch die Nextcloud Adresse ihrer Schule zu ersetzen. Siehe dazu https://paedmllinux.blogspot.com/2022/12/ldaps-fur-webuntis.html.

Für "LDAP Benutzer" verwenden Sie den LDAPSuche-Account mit "uid=ldapsuche,cn=users,dc=paedml-linux,dc=lokal", 

das LDAP Passwort zu diesem ist auf dem Server unter /etc/ldapsuche.secret zu finden.

Der "Userfilter" mit (&(objectclass=ucsschoolStudent)(uid={0})) fragt in dieser Konfiguration nur Schüler ab, falls auch Lehrer gefunden werden sollen muss die Konfiguration angepasst werden. 

BaseDn für Benutzersuche: ou=schule,dc=paedml-linux,dc=lokal

LDAP Mail Attribut: mailPrimaryAddress

Haken bei "Unbekannten Benutzer nach erfolgreicher Anmeldung anlegen" und

"Anmeldung für nicht identifizierten Benutzer verbieten" setzen. 

LDAP Personenrolle Attribut: ucsschoolSourceUID

Bei den weiteren Einträgen habe ich keine Lehrer importiert, daherist bei "Lehrkraft" auch die "Standard-Benutzergruppe" auf  "<Auswahl>". 

In der Kategorie Schüler:

Personenrolle: schule-student

Personenidentifzierung: Einzelattribut

LDAP ID Attribute: ucsschoolRecordUID

Elementdaten ID Feld: externKey

Einen Klick auf speichern sollte die Konfiguration hinterlegen. Klicken Sie auf Test und geben Sie Benutzer und Passwort eines SchülerInnen Accounts ein, die Abfrage sollte "ldap connection ist ok" und etwas wie "found uid=maxi.muster,cn=schueler..." ausgeben. 

Nach erfolgreichem Test den Haken "aktiv" ganz oben setzen und speichern. 

Ich werde die Vorhandenen Schüler Accounts meiner Schule zum Schuljahreswechsel löschen, dann können sich unsere Schüler mit ihren Computerraum-Anmeldedaten bei WebUntis anmelden. Durch die erstmalige Anmeldung wird jeweils ein neuer Account erschaffen und über den Schlüsselvergleich direkt mit dem Stammdaten/Stundenplänen der Schülerinnen und Schüler verknüpft. 


Dienstag, 22. Juni 2021

Windows 10 Update 2004

 Hallo!

Mich erreichten ein paar Zuschriften bezüglich des Zwangsupdates von Windows 10 auf Version 2004. Ich äußere mich an dieser Stelle aber nur als Netzwerkberater meiner Schule, keine offizielle Empfehlung. 

Um das Update besser beherrschen zu können bin ich wie folgt vorgegangen:

  • Per Opsi auf allen Clients das Paket "config-win10" mit der Property "config_updates" "LocalPeerToPeer" erneut ausrollen. Updates werden dann unter den Clients selbst verteilt ohne die Internetleitung zu sehr zu belasten. 
  • Das Laufwerk K (Programme) wird unter 2004 nicht mehr korrekt installiert. Dazu gibt es eine Standard-Lösung, die man bei der Hotline erfragen kann. Hier eine Zusammenfassung (ohne Gewähr):

Die Datei \\server\netlogon\programme.bat bearbeiten und die Zeile 

@net use K: /DELETE

durch 

rem @net use K: /DELETE

ersetzen. 

Eine neue Gruppenrichtlinie anlegen und unter Benutzerkonfiguration -> Einstellungen -> Windows-Einstellungen -> Laufwerkszuordnungen auf Neu -> Zugeordnetes Laufwerk auswählen

Aktion: Aktualisieren

Speicherort: \\server\programme

Beschriften als: Programme

Laufwerkbuchstabe: K

Danach noch auf dem Opsi mit Putty ein "samba-tool ntacl sysvolreset" ausführen.

  •  Das Opsi-Paket  paedml-login NACH dem Updatevorgang ausrollen. Dadurch wird unter anderem der Desktophintergrund wieder richtig dargestellt. 

Montag, 7. Juni 2021

W10AdminVM: RSAT Tools ab 2004

Aktuell rollt Microsoft die Zwangsupdates auf Windows 10 2004 aus, wovon auch die W10AdminVM betroffen ist.

Nach dem Update funktionieren die RSAT Tools zur Verwaltung der Serverkomponenten (Gruppenrichtlinien, Druckverwaltung, etc.) nicht mehr, da Microsoft die Implementierung geändert hat.

Die (Re-)Installation der RSAT Tools geschieht über PowerShell:


1) Befehl für die Abfrage des aktuellen Installationsstatus der einzelnen Tools:

Get-WindowsCapability -Name RSAT* -Online | Select-Object -Property DisplayName, State

IdR. ist die Ausgabe in der Spalte State "Not Present"


2) Befehl für die Installation aller RSAT Tools:

Get-WindowsCapability -Name RSAT* -Online | Add-WindowsCapability –Online

Die Installation dauert je nach System 5 bis 10 Minuten. Danach sind alle Verwaltungskomponenten wieder verfügbar.


Eine Übersicht für die granulare Installation einzelner Tools findet man auf Windows-FAQ.de