Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
— | anwenderwiki:linuxclient:maus [2017/02/09 21:17] (aktuell) – angelegt - Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | {{tag> maus classroommanagement}} | ||
+ | ====== MAus1 - Classroommanagement ====== | ||
+ | <note warning> | ||
+ | Programm als Ersatz zu iTALC. Sendet in einem Computerraum ssh-Befehle an die Linux-Clients oder Netzwerk-Befehle an die Windows-Clients um die **M**onitore **Aus**zuschalten. Der Key zur Authentifizierung der ssh-Befehle bzw. das Passwort der Netzwerk-Befehle wird am Server im Programmverzeichnis abgelegt und ist nur für die Gruppe Lehrer lesbar. An den Windows-Clienst läuft ein " | ||
+ | |||
+ | Features: | ||
+ | * einfaches Fenster auf dem Desktop mit drei Buttons | ||
+ | * steuernder Master/ | ||
+ | * zu steuernder Client/ | ||
+ | * Sperren, Freigeben der Schüler-PC in einem Raum mit schwarzem Bildschirm oder einem Sperrbild | ||
+ | * Einzelne Schüler-PC können für die Funktionen selektiert werden | ||
+ | * Herunterfahren, | ||
+ | * Nachrichten können an einzelne oder alle Schüler-PC gesendet werden | ||
+ | * Beliebige Shell- bzw. Commandline-Befehle können an einzelnen oder allen Schüler-PC ausgeführt werden (unter User root bzw. dem angemeldeten Windows-Anwender) | ||
+ | * bis zu 20 verschiedene Räume sind konfigurierbar | ||
+ | * nur ein Lehrer kann die Schüler-PC des Raumes sperren, da nur ein Lehrer Zugriff auf den private ssh-Key bzw. das Mausdienst-Passwort hat | ||
+ | * der Lehrer-PC ist variabel oder kann fest vorgegeben werden | ||
+ | * nur der pgmadmin kann die Konfiguration der Räume bearbeiten | ||
+ | * Programm kann über das Unity-Startmenü (Dash) gestartet werden oder dem Startmenue bei Windows | ||
+ | * IP und MAC - Adressen können aus der workstations-Datei importiert werden | ||
+ | * per VNC kann mit einzelnen Schüler-PC verbunden werden (am Schüler-PC muss dazu ein VNC-Server laufen) | ||
+ | |||
+ | |||
+ | {{ : | ||
+ | ===== Vorbereitung am Server ===== | ||
+ | |||
+ | Die Konfiguration des Programms erfolgt über den Benutzer " | ||
+ | # smbldap-usermod -G teachers pgmadmin | ||
+ | # sophomorix-passwd -u pgmadmin --shell /bin/bash | ||
+ | |||
+ | ===== Programm installieren am Linux-Client ===== | ||
+ | **Download: | ||
+ | |||
+ | |||
+ | **Am Linux-Schüler-PC: | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | sudo ./ | ||
+ | Das Script ist __nur__ für die Erstinstallation geeignet. Nach Installation kann das tar-Paket und das entpackte Verzeichnis '' | ||
+ | **Danach reboot des Linux-Schüler-PC und ein Image schreiben.**\\ | ||
+ | Das Image kann problemlos für alle PCs verwendet werden, so dass man nur ein allgemeines Image hat, unabhängig von Schüler PC - Lehrer PC - beliebige Räume. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Das Bild zum Sperrbildschirm muss als X-Windows-Bitmap vorliegen. Es wird am Client unter ''/ | ||
+ | |||
+ | **Universelles postsync-Script: | ||
+ | # cat / | ||
+ | |||
+ | |||
+ | Bei der Installation wird automatisch ein ssh-Keypaar erzeugt. Ebenso wird für den " | ||
+ | | ||
+ | ===== Update ===== | ||
+ | **Zum Updaten am Linux-Schüler-PC: | ||
+ | Dabei werden werden alle Programm-Dateien am Server und am Linux-Client ersetzt. Die Konfigurations-Datei wird beibehalten. Die ssh-Keys (ggf. mit VNC-Passwort-Datei) werden nicht verändert sondern vom Server zum Client zurückgeschrieben. | ||
+ | |||
+ | Das update-Script eignet sich auch um auf einem zweiten Linux-Image MAus zu installieren. Beide Images benutzen dann dieselben Keys und Passwort-Dateien.\\ Nach einem Update von Version 0.4x auf Version >0.50 müssen die VNC-Passwörter neu gesetzt werden (als pgmadmin im Konfigurations-Menü). | ||
+ | ===== Programm als pgmadmin starten und Räume konfigurieren ===== | ||
+ | |||
+ | Nur der pgmadmin hat die Rechte um die Liste der Computerräume zu bearbeiten. An einem Client sich deshalb als pgmadmin anmelden, | ||
+ | Programm " | ||
+ | Alternativ kann die Datei **'' | ||
+ | |||
+ | Zu einer Raum-Konfiguration gehören: | ||
+ | - Name des Raumes | ||
+ | - IP des Lehrer-PC (IP-Adresse oder *) | ||
+ | - IP-Liste aller Schüler-PC (ohne Lehrer-PC), ggf auch mit MAC-Adressen (werden für WakeOnLAN benötigt), ggf. auch mit PC-Namen für die Liste | ||
+ | - PC-Typ: Linux-, Windows- oder Dual-Boot-Client. Je nach Typ wird der PC vom Master verschieden angesteuert. | ||
+ | |||
+ | Mit der Funktion " | ||
+ | |||
+ | |||
+ | ===== Programm an einem Lehrer PC als Lehrer starten ===== | ||
+ | Das Kontext-Menu zu einem einzelnen Schüler-PC ist per RMT erreichbar. | ||
+ | {{ : | ||
+ | ===== Konfigurationsdatei - Beispiel ===== | ||
+ | Die Konfigurations-Datei kann als pgmadmin über das Programm selbst oder mit einem Editor bearbeitet werden. Sie liegt unter **''/ | ||
+ | <code text maus.cfg> | ||
+ | [Programm] | ||
+ | # | ||
+ | BorderStyle=single | ||
+ | FixedPosition=1 | ||
+ | xpos=-30 | ||
+ | ypos=30 | ||
+ | width=320 | ||
+ | # optional: height=100 | ||
+ | ButtonAnzahl=0 | ||
+ | |||
+ | PrivateKey=maus-key | ||
+ | CopyPrivKey=0 | ||
+ | AdminUsers=root, | ||
+ | debug=0 | ||
+ | |||
+ | Raumanzahl=2 | ||
+ | SperrBild=1 | ||
+ | WOLDelay=0 | ||
+ | # VNCPort=0 disables VNC | ||
+ | VNCPort=4711 | ||
+ | VNCPassPfad=x11vnc.pass | ||
+ | SendeNachrichtVisible=1 | ||
+ | SendeBefehlVisible=0 | ||
+ | PCListeVisible=0 | ||
+ | |||
+ | # SleepTimeSSL=100 | ||
+ | # SleepTimeTCP=50 | ||
+ | # SleepTimeNAC=100 | ||
+ | |||
+ | [Windows] | ||
+ | width=320 | ||
+ | # optional: height=100 | ||
+ | PuttyKey=maus-key.ppk | ||
+ | VNCPassPfad_text=x11vnc.text | ||
+ | FingerprintPfad=host-rsa-key.fingerprint | ||
+ | plinkPfad=plink.exe | ||
+ | WOLPfad=wol.exe | ||
+ | UltraVNCPfad=C: | ||
+ | |||
+ | [MausDienst] | ||
+ | Port=9731 | ||
+ | UseSSL=0 | ||
+ | UseAuth=1 | ||
+ | |||
+ | [Button1] | ||
+ | Name=" | ||
+ | Exec=" | ||
+ | BefehlsAusgabeAnzeigen=1 | ||
+ | |||
+ | [Raum1] | ||
+ | Raumname=CR001 | ||
+ | LehrerIP=* | ||
+ | PC-Anzahl=6 | ||
+ | SchuelerIP1=10.16.100.101, | ||
+ | SchuelerIP2=10.16.100.102, | ||
+ | SchuelerIP3=10.16.100.103, | ||
+ | SchuelerIP4=10.16.100.104, | ||
+ | SchuelerIP5=10.16.100.105, | ||
+ | SchuelerIP6=10.16.100.106, | ||
+ | |||
+ | [Raum2] | ||
+ | Raumname=CR002 | ||
+ | LehrerIP=10.16.200.100 | ||
+ | PC-Anzahl=4 | ||
+ | SchuelerIP1=10.16.200.101, | ||
+ | SchuelerIP2=10.16.200.102, | ||
+ | SchuelerIP3=10.16.200.103, | ||
+ | SchuelerIP4=10.16.200.104, | ||
+ | |||
+ | |||
+ | </ | ||
+ | * **CopyPrivKey=1** : Beim Start von MAus wird der ssh-Key in das home des Benutzers kopiert (nach < | ||
+ | * **ButtonAnzahl=x** : Dadurch können weitere Buttons auf dem Widget zugefügt werden, genaueres siehe -> [[anwenderwiki: | ||
+ | * **PrivateKey** : Der Pfad zum private ssh-Key kann sowohl relativ als auch absolut angegeben werden. Bei einer relativen Angabe (Ohne "/" | ||
+ | * **FixedPosition**: | ||
+ | * **SendeNachrichtVisible** Mit dem Kontext-Menue zum PC kann man an diesen Nachrichten absetzen | ||
+ | * **SendeBefehlVisible** Mit dem Kontext-Menue zum PC kann man an diesen Shell-Befehle absetzen | ||
+ | * **PCListeVisible**: | ||
+ | * **LehrerIP**: | ||
+ | * **SchuelerIPx**: | ||
+ | * **WOLDelay=x**: | ||
+ | * **SperrBild=1** Beim Sperren wird am Client-PC ein zweiter X-Server gestartet, der ein Bild mit oder ohne Uhr anzeigt | ||
+ | * **UseAuth** Für die Steuerung der Windows-Clients wird eine Passwort-Authentifikation verwendet | ||
+ | * **UseSSL** Für die Kommunikation zwischen Master und Windows-Client wird SSL verwendet, //Funktion noch experimentell!// | ||
+ | * **SleepTime...** Verzögerungszeiten (in Millisekunden), | ||
+ | * weitere Optionen siehe -> [[anwenderwiki: | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | |||
+ | ===== Optional: Rechte der ssh-Keys direkt am Server setzen ===== | ||
+ | Die Zugriffsrechte der Keys und Passwörter können auch am Server gesetzt werden (normal nicht notwendig, wenn die Gruppenzugehörigkeit des pgmadmin zu den teachers gesetzt ist): | ||
+ | # chown -R pgmadmin: | ||
+ | # chmod 640 / | ||
+ | # chmod 640 / | ||
+ | # chmod 640 / | ||
+ | # chmod 640 / | ||
+ | # chmod 640 / | ||
+ | |||
+ | ===== Sicherheitsüberlegungen ===== | ||
+ | |||
+ | Der Zugriff von einem Client auf einen anderen Client kann missbraucht werden. Alle Zugangsschlüssel und Kennwörter für die Clients sind für alle Lehrer lesbar. Ein Zugriff auf den Server ist damit aber nicht möglich. | ||
+ | |||
+ | **Sicherheitsproblem " | ||
+ | |||
+ | **Sicherheitsproblem " | ||
+ | |||
+ | **Sicherheitsproblem " | ||
+ | ===== Zugriff auf die Schüler-PC per VNC ===== | ||
+ | **Voraussetzung: | ||
+ | * Am Client ist ein VNC-Server installiert. Das Installationsscript von MAus führt diese Installation __nicht__ durch! | ||
+ | * Der VNC-Server ist per Kennwort auf Port 4711 erreichbar | ||
+ | * **für Linux-Master: | ||
+ | * **für Windows-Master: | ||
+ | * Nach Installation muss der verwendete VNC-Port bei den Programm-Optionen von MAus gesetzt werden, was die VNC-Funktionalität dann auch freischaltet | ||
+ | |||
+ | |||
+ | |||
+ | Zum Installation eines VNC-Servers kann man z.B. vorgehen wie in -> [[anwenderwiki: | ||
+ | cp / | ||
+ | chown pgmadmin: | ||
+ | chmod 640 / | ||
+ | |||
+ | ===== MAus auf Windows-PC als Master ===== | ||
+ | |||
+ | An einem Linux-Clients muss MAus zuerst mit dem obigen tar-Paket installiert werden. Dabei werden auch für Windows notwendige Keys und Hilfs-Programme angelegt (ab Version 0.42) und die Windows-Programmdatei am Server abgelegt. | ||
+ | |||
+ | **Installation am Windows-PC: | ||
+ | |||
+ | Zum Benutzen der VNC-Bildschirmübertragung am Windows-PC zusätzlich -> [[http:// | ||
+ | Zum Ansteuern der Linux-Clients wird das Putty-Kommandozeilentool "'' | ||
+ | |||
+ | Das Windows-Programm verwendet dieselbe Konfiguration und Räume wie unter Linux. Nur die Höhe und die Breite des Desktopfensters kann getrennt festgelegt werden. | ||
+ | |||
+ | ===== MAus auf Windows-PC als Client: " | ||
+ | < | ||
+ | |||
+ | siehe -> [[anwenderwiki: | ||
+ | |||
+ | |||
+ | |||
+ | ===== Deinstallation von MAus bis Version 0.54 ===== | ||
+ | |||
+ | Um MAus vollständig vom Client zu entfernen sind folgende Dateien am Client zu löschen: | ||
+ | |||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | |||
+ | Folgenden Dateien sind zu editieren: | ||
+ | / | ||
+ | -> Dort die Zeile mit " | ||
+ | / | ||
+ | -> Dort die Zeile mit dem rsa-Key von MAus löschen. | ||
+ | |