Benutzer-Werkzeuge

Webseiten-Werkzeuge


 [[anwenderwiki:classroom_management:skmini]] 

MAus-Schulkonsole: MAusSK für lmn 6 (bisher: Mini-SK)

Programm in der Testphase!
Getestet mit linuxmuster.net 6.1 und 6.2 und auf Basis des „daultcloop“.
Die neuen Versionen >0.8x sind nicht rückwärtskompatibel, so dass man dazu alle Programmbestandteile - Server und Client - ersetzen und ebenso die neue Android-App benutzen muss.
Die MAus-SK lässt sich ab Version 0.83 durch den offline-Modus auf die ehemalige Programmoberfläche von MAus2 umschalten. Ab Version 0.84 werden Kennwörter mit einer einfachen Verschlüsselung übertragen.

MAusSK für linuxmuster.net 7 ist in Entwicklung:
–> maussk

Am Master-Client kann man mit Hilfe von ein-Klick-Buttons Sperren oder Freigaben im aktuellen Raum durchführen. Der eigene PC wird dabei ausgenommen. Es kann eingestellt werden, welche der Buttons und in welcher Anordnung diese angezeigt werden. Die Farbe der Buttons - grün oder rot - zeigt den aktuellen Zustand der jeweiligen Funktion an.
Bisher implementiert:

  • Internet Sperre/Freigabe
  • Intranet Sperre/Freigabe
  • URL-Filter Aktiv/Ausgeschaltet
  • Drucker Sperre/Freigabe (nur die Drucker, die dem Raum zugeordnet sind)
  • Bildschirme Sperre/Freigabe
  • WLAN für Gruppen freigeben/sperren (ab linuxmuster.net 6.2 mit Projekt p_wifi)
  • Dateien austeilen im aktuellen Raum
  • Dateien einsammeln
  • Logout, Reboot, Poweroff, Nachricht senden, Befehl senden, URL öffnen
  • Wake-On-Lan
  • Zeigen, Verbinden (per Menü-Option und VNC-Verbindung, ohne Button)
  • Tumbnails der Schüler-Desktops
  • verschlüsselte Kennwortübertragung über einen Session-Key

Ein Aufrufen der Schulkonsole per Browser benötigt man dazu nicht. Weitergehende Einstellungen, wie in der Schulkonsole, sind nicht möglich.

Am Server muss dazu ein Service, der „schukodaemon“, installiert werden, der die Sperre ausführt. Von dem Client erhält er dazu per Netzwerk den Befehl auf dem Port 9731, der ausgeführt wird, wenn die mitgelieferten Credentials stimmen (d.h. Lehreraccount mit Kennwort). Raum und Drucker werden dabei automatisch ermittelt. Die IPs der zu sperrenden Clients werden aus der Workstations-Datei ermittelt, die dazu aktuell gehalten werden sollte.

Für die Bildschirmsperre an den Clients muss an den Clients (Windows oder Ubuntu-Linux) ein zusätzliches Programm, der „Mausdaemon“ (Linux) oder „Mausdienst“ (Windows) installiert werden, das die Sperre ausführt. Dieses Programm wird auch von der Classroommanagement → MAus2 verwendet.

Für „Zeigen, Verbinden“ muss an den Clients ein VNC-Server installiert sein. Diese Installation führt das Installations-Script nicht durch. Details dazu siehe → VNC bei MAus2

Das Script „/usr/bin/xhost-root“ wird bei Anmeldung eines Benutzers ausgeführt, so dass der „Mausdaemon“ die Berechtigung erhält auf dem Desktop des Benutzers Textmeldungen auszugeben. (dies ist ein Bestandteil des defaultcloop)

Für Android gibt es eine Master-App → MAus-SK App. Diese wird durch die Installation am Server in das www-Verzeichnis abgelegt und kann dann von dort per Browser auf das Android-Device heruntergeladen werden: http://10.16.1.1/maussk. Ggf. müssen dazu passende Firewall-Regeln gesetzt werden.

Netzwerkstruktur - Möglichkeiten

Die Schüler/Clients müssen im grünen Netz sein, die Lehrer/Master können bei geeigneter Konfiguration des blauen Netzes auch über blau oder den Coovachilli die Steuerung übernehmen.
Je nach Betriebssystem müssen verschiedene Programme/Apps oder Dienste/Daemonen/Services installiert werden.

Achtung: Beim Öffnen des grünen Netzes über WLAN sind wichtige Sicherheitsaspekte zu berücksichtigen!

Download

Download neueste Version → maus_sk_0.84.tar.bz2
Zum Update siehe → Update Hinweise

Beinhalten folgende Datei-Pakete:

  • Installations-Scripte
  • maus_sk - Master-Programm für einen Ubuntu-Client
  • maus_sk.exe - Master-Programm für eine Windows-Cient (64-Bit)
  • schukodaemon - Dienst für den linuxmuster.net - Server
  • mausdaemon - Dienst für den Ubuntu-Client
  • mausdienst - Dienst für einen Windows - Client
  • maussk-xxx.apk - Android-App
  • maussk-xxx-wlan.apk - Abdroid-App die nur zur WLAN-Steuerung dient

Die Installation muss zuerst am Server durchgeführt werden. Dann am Client anmelden und dort die Installation mit dem Client-Script abschließen. Die Installationsscripte führen jeweils ein Update durch, falls das Programm schon installiert war. Bei einem Update werden die bisherigen Einstellungen und Kennwörter beibehalten.

Installation am Server

Zur Installation am Server den Download entpacken und das Installations-Script im entpackten Verzeichnis ausführen:

# cd /root/maussk.files
# ./install-server.sh

Dabei wird folgendes durchgeführt:

  • Pakete werden installiert: openssl apg
  • unter /home/samba/progs/ werden zwei Verzeichnisse incl. Dateien angelegt: „mausdienst“, „maus_sk“
  • Kennwörter für den mausdienst werden generiert (mit apg)
  • Zertifikate werden generiert (für zukünftige ssl-Kommunikation)
  • Dateien werden an die richtigen Stellen kopiert
  • Port 9731 der Firewall wird geöffnet und diese neu gestartet
  • Der Dienst „schukodaemon“ wird installiert und gestartet
  • Die APK-Datei der Android-App wird ins Verzeichnis /var/www/ des Servers kopiert

Genaueres zum Script siehe → install-server.sh

Konfigurations-Datei liegt unter /etc/linuxmuster/maus/schukodaemon.cfg:

schukodaemon.cfg
[Programm]
 
Port=9731
useLOG=1
LogPfad=/var/log/linuxmuster/schukodaemon.log
useSSL=0
debug=0
verbose=0
useLineFeed=1
onlyClassrooms=1
 
# useAuth:  0-Keine Authentifizierung  1-mit Name+PW  2-Client-basiert 3-mit Token
useAuth=1
 
# ResetTime in Minuten
ResetTime=45
TokenTime=45
 
# WakeOnLan Delay in Millisekunden
WolDelay=500
# WOLCommand=etherwake
# WOLCommand=wakeonlan
# WOLCommand=linbo-remote
 
# fuer Client-Kommunikation
# MDPort=9731
# MDuseAuth=1
SocketTimeout_CL=200
Netzwerk_DelayTime=100
 
# Optional
# MDPfad=/home/samba/progs/mausdienst/md.pass
# MD5Pfad=/home/samba/progs/mausdienst/md.md5 
# VNCTextPfad=/home/samba/progs/mausdienst/x11vnc.text
# VNCPassPfad=/home/samba/progs/mausdienst/x11vnc.pass
  • useSSL=1: experimentelle Funktion, bisher leider noch instabil
  • debug=1: erzeugt zusätzliche Meldungen in der log-Datei
  • useAuth=: 0 - keine | 1 - per Name + PW | 2 - Client-basiert, d.h. automatische Authentifikation, falls an dem Client ein Lehrer angemeldet ist.
    3 - mit Token, beim Erstkontakt wird ein Token übertragen, das im folgenden für die Authentifikation verwendet wird. Damit wird das Übertragen von Kennwörtern auf ein Mindestmaß verringert.
    Diese Option muss indentisch zur gleichen Option in der maussk.cfg sein.
  • ResetTime: Zeitdauer in Minuten nach der Änderungen automatisch am Server auf die Default-Werte zurückgesetzt werden. Die betrifft Internet-Sperre, Intranet-Sperre und die URL-Filterlist. Andere Änderungen/Sperren werden nicht zurückgesetzt.
  • OnlyClassrooms=1: Nur Räume, die als Klassenräume definiert sind, werden gemanaged
  • SocketTimeout_CL, Netzwerk_DelayTime: Zeiten in Millisekunden, ggf. erhöhen bei Netzwerk-Verbindungsproblemen

Bei Änderungen an der cfg-Datei muss der schukodaemon neu gestartet werden:

# /etc/init.d/schukodaemon.sh stop
# /etc/init.d/schukodaemon.sh start

Installation am Ubuntu-Linuxclient

Am Client als pgmadmin anmelden, dadurch wird das Verzeichnis /home/samba/progs/ gemountet.
Nun das Installations-Script install-ubuntu-client.sh als root ausführen. Dieses befindet sich mit allen notwendigen Dateien in einer samba-Freigabe /home/samba/progs/maussk/ des Servers.

# sudo su
# cd /home/samba/progs/maussk/
# ./install-ubuntu-client.sh

Dabei wird folgendes durchgeführt:

  • Pakete werden installiert: screen, suckless-tools, vncviewer, wakeonlan, xtrlock, openssl
  • Der Dienst „mausdaemon“ wird installiert
  • Dateien werden an die richtigen Stellen kopiert
  • Programmstarter für MAus-SK wirdn installiert

Genaueres zum Script siehe → install-ubuntu-client.sh

Dann einen „reboot“ des Client durchführen und ein Image schreiben und verteilen. Das Programm kann per Dash für einen Lehrer über den Begriff „maussk“ gefunden und gestartet werden.

Installation am Windows-Client

Das Windows-Programm „maus_sk.exe“ kann direkt gestartet werden. Man kann es lokal am Windows-Client ablegen oder auch serverbasiert von /home/samba/progs/maussk/ bzw. K: starten. Die Konfigurationsdatei muss im Programm-Verzeichnis liegen.

Um am Windows-Client den Bildschirm zu sperren oder einen Reboot/Logout/Poweroff durchzuführen muss dort der „mausdienst“ ausgeführt werden. Das Windows-Programm „mausdienst“ muss so installiert werden, dass es bei der Anmeldung eines Benutzers gestartet wird, z.B. über ein Login-Script oder über die Aufgabenplanung. Da der „mausdienst“ Zugriff auf den Desktop des angemeldeten Benutzers benötigt, war ein dauerhaft laufender Hintergrunddienst leider nicht realisierbar. Somit arbeitet der „mausdienst“ nicht, wenn keine Benutzeranmeldung erfolgte.

Installation „mausdienst“ siehe → Mausdienst auf Windows-Client

Konfiguration MAus-SK

Die Konfigurationsdatei für die MAus-SK ist für Linux und Windows die selbe:

maussk.cfg
[Programm]
 
# Konfigurartions-Datei fuer MAus-Schulkonsole
 
Name = "MAus-SK"
xpos = -30
ypos = 30
HeightWin=0
FixedPosition = 0
Hintergrundfarbe = $FFFFFF
debug =0
 
# useAuth:  0-Keine Authentifizierung  1-mit Name+PW  2-Client-basiert 3-mit Token
useAuth=1
 
# Konfiguration der angezeigten Menue-Eintraege
StatusBarVisible=1
MenueVisible=0
PCMenueVisible=0
PCMenueVollVisible=0
PCMenueSperrVisible=1
PCMenuePowerVisible=1
PCMenueVNCVisible=1
WakeOnLANVisible=1
ScreenMenueVNCVisible=1
WechselnVisible=1
ZweitraumVisible=1
StartWithScreens=0
LoginsAbfragen=1
GetInfoAbfragen=1
GetScreenAbfragen=0
PassVomServer=1
 
# Reihenfolge der Button
# Zun Ausblenden eines Buttons dessen Wert auf 0 setzen
InternetButton=1
IntranetButton=2
UrlFilterButton=3
DruckerButton=4
ScreenLockButton=5
AusteilenButton=6
EinsammelnButton=7
NachrichtButton=8
PowerButton=9
BefehlButton=10
WOLButton=11
WLANButton=12
PCListButton=13
 
Spalten=3
Skalierung=100
ThumbnailHeight=150
ThumbnailWidth=200
 
ResetRoomOnStart=0
ResetRoomOnEnd=0
ServerWOL=1
ServerProxy=1
ServerProxyPower=1
LoginLoop=20000
GetInfoLoop=2600
 
WOLDelay=1000
WOLPfad=wol.exe
 
# optional:
# ServerIP = 10.16.1.1
# Port=9731
# AdminUsers=pgmadmin,winadmin | *
# Timeouts bei Server-Anfragen in Millisekunden
# ReceiveTimeout1=5000
# ReceiveTimeout2=10000
# UseSSL=0
# Netzwerk_DelayTime=100
# SocketTimeou_SE=500
# TCPTimeout_SE=5000
# SocketTimeout_CL=200
# TCPTimeout_CL=500
 
# BorderStyle : none | single
BorderStyle = "single"
 
# VNC-Optionen setzen, falls PC-Menue aktiviert wird:
 
# VNCPort=4711
# Optionen fuer VNC-Viewer unter Ubuntu:
# VNCPassPfad=x11vnc.pass
# VNCPassPfad=/home/samba/progs/mausdienst/x11vnc.pass
# VNCTextPfad=x11vnc.text
# VNCTextPfad=/home/samba/progs/mausdienst/x11vnc.text
 
# Optionen fuer VNC-Viewer unter Windows 7 oder Windows 10.
# hier nur absolute Pfadangaben:
# VNCTextWinPfad="K:\mausdienst\x11vnx.text"
# UltraVNCPfad="C:\Program Files\uvnc bvba\UltraVNC\vncviewer.exe"
# UltraVNCPfad="C:\Program Files (x86)\uvnc bvba\UltraVNC\vncviewer.exe"
 
# Die Optionen fuer den MausDienst gelten auch fuer den MausDaemon
[MausDienst]
Port=9731
useSSL=0
useAuth=1
mitUhr=1
SendeNachrichtVisible=1
SendeBefehlVisible=1
 
# MDPassPfad=md.pass
# MDPassPfad=/home/samba/progs/mausdienst/md.pass
# MDPassWinPfad=K:\mausdienst\md.pass
  • Um einen …Button auszublenden, dessen Wert auf „0“ setzen, ansonsten geben die Zahlen die Reihenfolge der Darstellung an
  • Spalten beeinflusst die Gruppierung der Buttons
  • FixedPosition=1 erreicht, dass sich die MAusSK nach Auflösungsänderung wieder richtig positioniert.
  • xpos, ypos: positive Werte zählen von links bzw. oben, negative von rechts bzw. unten
  • Skalierung=100: Skalierung des Fensters in Prozent (minimal 30, maximal 200)
  • MenueVisible=1: Ein Programm-Menü für den Raum wird angezeigt, mit dem man weitere Aktionen ausführen kann (z.B. Poweroff)
  • PCMenueVisible=1, PCMenueVollVisible=1: Ein Programm-Menü für jeden PC wird angezeigt, mit dem man einzelne Aktionen ausführen kann (z.B. Desktop per VNC zeigen, Poweroff)
  • LoginsAbfragen=1: Der aufgelistete PC-Name wird durch den angemeldeten User ersetzt, der vom Server alle 30 Sekunden dabei abgefragt wird
  • debug=1: Ein debug-Menü wird angezeigt, mit dem man ein Debugfenster öffnen kann
  • AdminUsers=pgmadmin: Usernamen, bei denen das Konfigurations-Menü sichtbar wird, Wildcard '*' ist hier möglich
  • mitUhr: Es kann eingestellt werden, ob am Sperrbild eine Uhr erscheint
  • Programm - useAuth: Authentifikationseinstellung zum Server, siehe oben bei schukodaemon.cfg
  • ReceiveTimeout: Timeouts bei Anfragen an den „schukodaemon“ des Servers (hängt von der Netzwerkperfomanz und der Anzahl der zu steuernder Computer ab), ggf. diese Werte freischalten und erhöhen, wenn Timeout-Fehler auftauchen.
  • Mausdienst - useAuth: Authentifikationseinstellung zum Client, Werte 0 oder 1, ob der „mausdaemon“ oder der „mausdienst“ per Kennwort „md.pass“ angesprochen wird. Dieses Kennwort erhält bei Installation automatisch einen zufälligen Wert.

Ab Version 0.52 kann die MAus-SK auch vom Programm aus selbst über einen Menüpunkt konfiguriert werde. Dazu muss man sich als pgmadmin am Client anmelden, da nur dieser Schreibrechte auf die cfg-Datei hat. Danach an der MAusSK als ein Lehrer anmelden. Bei anderen Benutzern erscheint das Konfigurations-Menü nicht. Mit dem Konfigurations-Menü kann man einen Teil der obigen Optionen verändern, ebenso das VNC-Kennwort für Windows setzen. Kritische Optionen, wie z.B. die Server-IP, kann man nur direkt in der Konfigurationsdatei ändern.

Zugriff auf die Schüler-PC per VNC

Für „Zeigen, Verbinden“ muss an den Clients ein VNC-Server installiert sein. Diese Installation führt das Installations-Script nicht durch. Details dazu siehe → VNC bei MAus2.
Die MAus-SK nutzt per default dabei die Kennwörter, die im Verzeichnis von mausdient liegen.

Nach vollständiger Installation kann VNC völlig plattformübergreifend zu Linux/Windows genutzt werden.

Konfiguration Mausdaemon (für Linux-Client)

Folgende Datei liegt nach Installation am Server zunächst unter /home/samba/progs/mausdienst/mausdaemon.cfg. Durch eine Installation am Ubuntu-Client wird diese zum Client kopiert nach /etc/linuxmuster-client/maus/mausdaemon.cfg.

mausdaemon.cfg
[MausDaemon]
 
Port = 9731
UseLog=1
debug=0
UseAuth=1
AcceptMaster=*
DisableBefehl=1
DisableURL=0
 
# optionale Einstellungen
# LogPfad = /var/log/mausdaemon.log
# AcceptMaster=10.16.100.100,10.16.200.100
# IP-Liste, bei denen sich der Mausdaemon selbst beendet:
# ShutdownIP=10.16.100.1,10.16.2.*
  • UseAuth=1: Master muss sich per Passwort am Client authentifizieren, um diesen zu steuern.
  • AcceptMaster: Zugriffsberechtigung für den Master (Z.B. Lehrer-PC) setzen. Die Wildcard „*“ erlaubt jede IP
  • ShutdownIP: Liste von IPs, bei denen sich der Mausdaemon sofort selbst beendet, z.B. für alle Computer im Lehrerzimmer
  • DisableBefehl=1: Der Mausdaemon führt keine gesendeten Shell-Befehle aus

Das Bild zum Sperrbildschirm muss als X-Windows-Bitmap vorliegen. Es wird am Client unter /etc/linuxmuster-client/maus/closed.xbm abgelegt. Das Bild wird, wenn zu klein, als Kachel verwendet.

Konfiguration Mausdienst (für Windows-Client)

Folgende Datei liegt nach Installation am Server unter /home/samba/progs/mausdienst/mausdienst.cfg.

mausdienst.cfg
[MausDienst]
 
Port=9731
AcceptMaster=*
UseAuth=1
debug=0
DisableTaskmgr=1
DisableBefehl=1
DisableURL=0
 
#
# optionale Einstellungen: 
#
# Farbe=$DDEEDD
# Text="Aufpassen!"
# BrowserPfad="C:\Programme\Mozilla Firefox\firefox.exe"
# BrowserPfad="C:\Program Files (x86)\Mozilla Firefox\firefox.exe"
# BrowserPfad="C:\Programme\Internet Explorer\iexplore.exe"
#
# AcceptMaster=10.16.100.100,10.16.200.100
#
# IP-Liste, bei denen sich der Mausdienst selbst beendet:
# ShutdownIP=10.16.100.100,10.16.2.*,10.17.*.*
#
  • UseAuth=1: Master muss sich per Passwort am Client authentifizieren, um diesen zu steuern.
  • debug=1: Der Mausdienst erscheint mit einem Fenster auf dem Desktop, damit kann er auch beendet werden.
  • DisableTaskmgr=1: Der Mausdienst überwacht den Desktop, sobald der Taskmanager geöffnet wird, wird dessen Fenster sofort wieder geschlossen.
  • AcceptMaster: Zugriffsberechtigung für den Master (Z.B. Lehrer-PC) setzen. Die Wildcard „*“ erlaubt jede IP
  • ShutdownIP: Liste von IPs, bei denen sich der Mausdaemon sofort selbst beendet, z.B. für alle Computer im Lehrerzimmer
  • DisableBefehl=1: Der Mausdaemon führt keine gesendeten Shell-Befehle aus
  • Farbe, Text: Konfiguriert das Erscheinungsbild des blockierenden Fensters.

Update

Das Installationsscript ist auch zum Update geeignet. Das Script erkennt selbst, ob es sich um ein Update handelt und lässt dann die Config-Dateien unberührt. Die neuen Config-Dateien werden mit der Endung „.neu“ angelegt, man kann dann ggf. Optionen daraus in die bisherige Config-Datei übertragen oder durch Umbenennen die jeweilige neue Config-Datei ganz verwenden.
Bei einem Update sind neue Funktionalitäten durch die alte Config-Dateien deshalb auch nicht aktiviert. Die Aktivierung muss nach dem Update mit dem Konfigurations-Menü oder durch direktes Editieren der Config-Datei erledigt werden.

Bei einer alten Version < 0.52 empfielt es sich die alte Version komplett zu löschen und eine Neuinstallation auf Clients und Server durchzuführen → maus-deinstallieren

Bei Versionen < 0.80 kann die Update-Funktion benutzt werden, jedoch muss dabei sowohl beim Server als auch beim Client das zugehörige update-Script ausgeführt werden.

Quellcode

Weitere Downloads (alte und aktuelle Entwickler Versionen)

noch Download Vorversion → minisk-maus-0.52e.62.tar.bz2
noch Download Vorversion → minisk-maus-0.72f.68.tar.bz2
noch Download Vorversion → minisk_maus_0.81f.tar.bz2

Ab Version 0.8x wird zur Komminikation JSON-Syntax verwendet. Diese Versionen 0.7x sind deshalb inkompatibel zu den Versionen 0.8x.

Debug-Version → maus_sk_0.83c-debug.tar.bz2 (Schreibt ausführliches Debug-Log ins Home des Users, falls aktiviert)

32-Bit Versionen für Windows:

Der zip-Ordner enthält sowohl die 32-Bit Programme von MAus und miniSK als auch die zugehörigen DLL in 32 Bit.
schukomini.0.81-32bit.zip (ungetestet)

Bildnachweis: commons.wikimedia.org, Tango Desktop Project

 [[anwenderwiki:classroom_management:skmini]] anwenderwiki/classroom_management/skmini.txt · Zuletzt geändert: 2019/09/13 18:36 von martin.res