Verwendung von allen Eingabegeräten verhindern

Hallo Michael,

klar kann er rapsis nehmen. Es geht ihm ja generell um das Problem, dass öffentlich zugängliche “PCs”, dazu gehört der Raspi auch, zugang zur USB-Schnittstelle bieten und damit einfachst gesteuert werden können.
klar kannst du argumentieren: die dürfen halt nicht zugänglich sein, aber das war ja nicht die Frage…
ich habe auch ex-DSB von heinekingmedia, also z.B: samsung-bildschirme mit integriertem PC.
Vg, Tobias

Na gut, aber einen RasPi kann man immerhin (im Gegensatz zu einem PC) hinter dem Display verschwinden lassen und so hoch aufhängen, dass da niemand soooo einfach eine Tastatur via USB anklemmen kann??

Hi.
Ja, das stimmt, aber auch die Displays von samsung sind auch so gebaut, dass es zuerst mal nicht so einfach ist, an USB etwas anzustöpseln. Aber weil die oft unbeobachtet sind, hätte man alle Zeit der Welt…

Ok, das stimmt auch … aber mit dem RasPi und einer Tastatur/Maus wäre man schließlich nicht wirklich weiter, da als nächstes die Passwortabfrage zum Login kommt … (je nach verwendeter Software… bei uns zeigt ein tabula.info Server die Pläne und div andere Dinge an)

http://www.tabula.info/dokuwiki/doku.php

Hallo zusammen!

Ich habe im Rahmen des geplanten lmbus-Systems auch in Sachen Maus-/Tastatursperre recherchiert. In Linux kann man Maus und Tastatur über xinput komplett abschalten - habe das aber bisher nur auf einigen Rechnertypen getestet. Per SSH kann man nach wie vor zugreifen.

Details (und Python-Skriptschnipsel) gibt es hier: https://github.com/thoschi/lmbus/wiki/disable_input.

1 „Gefällt mir“

Hallo Thomas,

Das bezieht sich - wenn ich es richtig verstehe - aber nur auf das Abschalten schon angeschlossener Eingabegeräte - oder?

Ich suche eine Lösung dafür, dass unter keinen Umständen Eingabegeräte verwendet werden können - auch nicht solche, die nachträglich angeschlossen werden.

Natürlich könnte man ein Skript schreiben, welches die angeschlossenen Eingabegeräte ständig abfragt und abschaltet - aber den erfolgreichen Anschluss gleich unmöglich zu machen, wäre mir lieber.

Gruß
Stefan

Hallo Tobias,

Per postsync wäre das vielleicht nicht schlecht, dann würde man auch einfach wieder das Image bearbeiten können, wenn man doch mal etwas ändern müsste.

Wo würde ich die Kernelparameter denn eintragen?

Gruß
Stefan

Hallo Stefan,

Noch einfacher als postsync: in der start.conf unter http://docs.linuxmuster.net/de/latest/release-information/linbo.html#boot-konfiguration-mit-grub nachzulesen: einfach

KernelOptions = nosplash dhcpretry=10 nousb

Wie gesagt: PS/2 weiß ich grade nicht, ob es so einfach geht. USB kann ich mir vorstellen, getestet hab ich aber noch nicht. Mach ich gleich, wenn ich drandenke.

VG, Tobias

Hallole,

zur Zeit programmiere ich als kleines “Erholungsprojekt” eine Netzwerksteuerung für unser LinuxMuster-Netz, das epoptes ersetzen soll. Da soll dann auch per Mausklick des Lehrers Tastatur und Maus abgestellt werden können.
Linux kann seit Kernel 2.6 mit einem einfachen root-Befehl das “binding” der Treiber zur hardware lösen. Das geht so:

Mitlsusb -t ermittelt man Bus und Portnummer der Devices:
/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/14p, 480M
|__ Port 3: Dev 9, If 0, Class=Hub, Driver=hub/7p, 480M
|__ Port 4: Dev 7, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 9: Dev 8, If 0, Class=Mass Storage, Driver=usb-storage, 480M
|__ Port 10: Dev 10, If 1, Class=Video, Driver=uvcvideo, 480M
|__ Port 10: Dev 10, If 2, Class=Audio, Driver=snd-usb-audio, 480M
|__ Port 10: Dev 10, If 0, Class=Video, Driver=uvcvideo, 480M
|__ Port 10: Dev 10, If 3, Class=Audio, Driver=snd-usb-audio, 480M
|__ Port 13: Dev 11, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 13: Dev 11, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M

Die Human Interface Devices (Maus und Tastatur schaltet man so ab):
Man muss root sein (sudo funktioniert nicht), dann schreibt man den Wert für Bus-Port, hier z.B. für die Maus per “echo”-Befehl auf:

/sys/bus/usb/drivers/usb/unbind

und zum Einschalten wieder auf:

/sys/bus/usb/drivers/usb/bind

also in obigem Beispiel so:

echo "3-4" > /sys/bus/usb/drivers/usb/unbind

Das schaltet die Maus aus.

Die Tastatur würde man nach obiger lsusb-Ausgabe so abschalten:

echo "3-13" > /sys/bus/usb/drivers/usb/unbind

(Das mach ich jetzt aber mal nicht hier …:wink:)
Vermutlich läuft das bei PS/2-Anschlüssen genau so.
Der Vorteil gegenüber xinput:

Man muss keine Display-Variablen herausfinden und exportieren und / oder man kann damit auch die Tastatur abschalten.
(Und über ssh ganz schnell wieder aktivieren).

Gruß Christoph Gü

Hallo Christoph,

Martin hat das auch speziell für linuxmuster.net gemacht. Maus (Monotor aus) und eine Mini-Schulkonsole „minisk“:
anwenderwiki:classroom_management:start [CommunityWiki]

LG
Max

Hallo, Max,

danke: Von dem Projekt hatte ich gelesen, habe allerdings nicht gemerkt, dass es sich im wahrsten Sinn des Wortes ge"MAUS"ert hat.
Wir haben hier aber folgendes Problem:
In einem Rechnerraum stehen ältere Dualcore-Rechner, die gerade mal das 14.04er-Ubuntu vertragen. Glücklichweise haben sie neben der onboard-Grafik auch noch nVidia-Grafikkarten, die allerdings unter KDE nur mit Hilfe des xrand-Programmes auf die richtige Auflösung gebracht werden können. Aber ich schweife ab…
Jedenfalls reicht es doch eigentlich, wenn man alle 20 sec. einen screenshot macht und per ssh-Dienst vom Server dieses Foto abholen lässt. Das belastet Rechner und Netze wesentlich weniger als die Dauer-streams von vnc & Co.
(Auf dem Server läuft ein passwortloser ssh-Dienst, der auch dazu benutzt wird, Tastatur / Maus abzuschalten usw.).
Ich habe mir ein Monitoring der Schülerrechner ausgedacht, bei dem wie bei iTalc, epoptes usw. in Form von thumbnails die klein abgebildeten Bildschirme zu sehen sind. Dies will ich in Form einer weiteren Seite der Schulkonsole und mit Hilfe von jquery realisieren, da ich gerne die Schülerrechner per Drag’n Drop auf dem Bildschirm frei anordnen lassen möchte.
Wenn dann tatsächlich mal in Echtzeit auf einen Rechner geschaut werden soll, reicht ein Rechtsklick ins Kontextmenü des abgebildeten Bildschirms, es wird der xvncviewer gestartet und übermittelt den Videostream - und nur diesen - an den Lehrer-Rechner.
Am Ende einer Unterrichtsstunde liegen quasi als visuelle “history” pro Rechner ca. 120 Dokumentationsfotos vor. Da kann man dann schnell mal durchscrollen, um zu sehen, wie und was die Schüler gearbeitet haben.
Somit müsste man lediglich drei Programmteile schreiben: Ein “screenshot”-maker am Client, ein entsprechender Dienst am Server, eine Website als visuelle Kontrollmöglichkeit.
Soweit der Plan.

L.G.
Christoph

Hallo,

zu den Raspi-Gehäusen von modmypi kann man Kappen kaufen, die die Ports verdecken (auch für die SD-Karte). Man muss das Gehäuse aufschrauben, um die Kappen wieder zu lösen.

Nicht getestete Idee: Firefox mit Addon R-Kiosk kann nur mit Alt-F4 beendet werden. Kann man in der X-config (oder so) nicht die Taste F4 rausnehmen / umkonfigurieren ? Dann könnte man sogar die Tastatur/Maus dran lassen und es passiert nix :wink: (Höchstens in der angezeigten Website)

Viele Grüße,
Helge

Hallo Christoph,

Jedenfalls reicht es doch eigentlich, wenn man alle 20 sec. einen
screenshot macht und per ssh-Dienst vom Server dieses Foto abholen
lässt. Das belastet Rechner und Netze wesentlich weniger als die
Dauer-streams von vnc & Co.

bei den ganzen Bildschirm"überwachungs" Lösungen sollte man daran
denken, dass, meine ich, die Nutzer darüber informiert werden müssen,
dass das gemacht wird/möglich ist.

LG

Holger

Lieber Holger,

Deinen Worten entnehme ich auch ein gewisses Unbehagen an dieser “Geheimdienstmethode”, den Bildschirm abzufotografieren…hm…tatsächlich hat die Sache ein “Geschmäck’le”. Ich weiß allerdings, dass etliche meiner nicht ganz so medienflinken Kolleginnen und Kollegen es oft nicht mitkriegen, wenn sie von ihren SchülerInnen regelrecht verar…t werden. Da wird dann gerne mal einfach die ganze Stunde über parallel ein Spiel gespielt, neben den online-Recherchen finden weitere Internetspielerein statt…
Ich denke, man muss den Schülerinnen und Schülern ganz klaren Wein einschenken, klare Vorgaben machen - und dann von Zeit zu Zeit ausprobieren, ob sie konzentriert arbeiten - auch ohne Bildschirmüberwachung.
Dessen ungeachtet dient ja das Auf-die-Bildschirme-sehen des Lehrers eine gute Möglichkeit, den Leuten bei ihrem Lernfortschritt aktiv zu unterstützen - somit ist das ganze auch eine positive Kontrolle !
Eigentlich ein sehr interessantes Thema - ich glaub, ich bin etwas off-topic !

L.G.
Christoph Gü

Hallo Christoph,

Deinen Worten entnehme ich auch ein gewisses Unbehagen an dieser
„Geheimdienstmethode“, den Bildschirm
abzufotografieren…hm…tatsächlich hat die Sache ein „Geschmäck’le“.
Ich weiß allerdings, dass etliche meiner nicht ganz so medienflinken
Kolleginnen und Kollegen es oft nicht mitkriegen, wenn sie von ihren
SchülerInnen regelrecht verar…t werden. Da wird dann gerne mal einfach
die ganze Stunde über parallel ein Spiel gespielt, neben den
online-Recherchen finden weitere Internetspielerein statt…
Ich denke, man muss den Schülerinnen und Schülern ganz klaren Wein
einschenken, klare Vorgaben machen - und dann von Zeit zu Zeit
ausprobieren, ob sie konzentriert arbeiten - auch ohne
Bildschirmüberwachung.
Dessen ungeachtet dient ja das Auf-die-Bildschirme-sehen des Lehrers
eine gute Möglichkeit, den Leuten bei ihrem Lernfortschritt aktiv zu
unterstützen - somit ist das ganze auch eine positive Kontrolle !
Eigentlich ein sehr interessantes Thema - ich glaub, ich bin etwas
off-topic !

Off Topic finde ich das garnicht: wir sollten auch diese Dimension
betrachten.
„Unbehagen“ würde ich nicht unbedingt sagen, ich denke nur darüber nach
und habe das GEfühl, dass man das nicht machen darf ohne die NUtzer zu
unterrichten.
Richtig Brisant wird es natürlich, wenn ein Lehrer an einem
Schülerrechner sitzt: oder wird das Loginabhängig gemacht?
Sollte es, denke ich.

Deine Argumentation, finde ich, und das meine ich ganz ehrlich nicht
bös, kommt von der falschen Richtung her: unbestritten gibt es Gründe
und auch vielleicht positive Effekte durch das Beobachten der
Bildschirme. Aber wir sollten es von der anderen Seite her aufrollen:
was darf man den machen? Der Zweck heiligt ja nicht die Mittel.
Und da meine ich eben, dass man das schon machen darf, aber man muss
vorher informieren.

Bei deiner Lösung, fürchte ich, ist es noch brisanter, weil die
Bildschirme nicht nur beobachtet werden, sondern deren Verlauf auch noch
gespeichert wird.
Da denke ich sogar, dass das ganz verboten sein könnte, wenn nicht
gewährleistet ist, dass die Aufnahmen nach x Tagen automatisch gelöscht
werden…
Da bin ich einfach mal des Teufels Advokat …

Ich würde an der Stelle vielleicht mal im KM nachfragen was die Juristen
dort meinen, was gerade aktuelle Rechtssprechung zu dem Thema ist.

Viele Grüße

Holger

Lieber Holger,

Da bin ich ganz d’accord mit Dir (und wieso „bös“ :space_invader:) ?
Natürlich beschränken (schulische) Rechtsvorschriften unsere Möglichkeiten - die meisten wohl aus gutem Grund.
Aber mich interessiert zunächst nicht der ängstliche Blick zur ministeriellen Juristenabteilung, sondern, welche Möglichkeiten und Chancen in der Medienerziehung bestehen und wie man bestimmte Probleme rund um den Rechnerraum lösen kann.
Und da ist es bei uns eben leider oft so, dass das enorme Ablenkungspotential der Rechner, insbesondere, wenn sie Internetzugriff haben, die SuS überfordert. Schade drum ! Aber vermutlich sind wir hier auf längere Sicht einfach gezwungen, die Bildschirme zu überwachen.
Ein Teil des Problems sind natürlich unbestrittenermaßen die naive Herangehensweisen mancher KoK - „Googelt mal nach der Klimabedrohung und fasst die Ergebnisse zusammen“ (in einer halben Stunde und mit einer sechsten Klasse, von denen kein einziger ein Heft in den Computerraum mitgenommen hat…). Dass da nach einiger Zeit das Tohuwabohu herrscht, ist kein Wunder.

L.G.
Christoph G.

Wenn ich Epoptes einsetze, mache ich das ganz häufig so, dass der Beamer auch läuft. Dann schauen sich die SuS schon gegenseitig auf die Finger und merken sofort, wenn jemand etwas anderes macht als er soll … das ist übrigens in allen Jahrgangsstufen gleich. Von daher stimme ich dir voll und ganz zu: Es lebe die Transparenz!

Hallo Tobias, hallo Christoph,

mir geht es momentan v.a. um die Abschaltung von USB. Die Maus- und Tastaturabschaltung kann ich mit xmodmap gut umsetzen.

Vielleicht könnt ihr mir helfen?

Da ich ein Image für verschiedene Kioskclients verwenden möchte, die durch unterschiedliches Postsyncen verschieden spezialisiert werden, ist für mich die start.conf nicht gut geeignet um USB auszuschalten. Kann man den Kernelparameter auch per postsync übergeben? Und wenn ja, wie?

Kann man damit auch auf Clients mit verschiedener Hardware, die EIngabegeräte und USB-Ports gezielt ausschalten?

Gruß
Stefan

P.S: PS/2 könnte ich auch notfalls mechanisch verhindern - z.B. mit Heißkleber.

Lieber Stefan,

Ja, wenn es um die USB-Geräte geht, musst Du ein Bash-Script schreiben (siehe oben, wo ich das Vorgehen erklärt habe).
Den PS/2 schaltet man am besten mit den xinput-Befehlen aus.

Das wird hier z.B. ganz gut erklärt:
https://lxadm.com/Disable_/_enable_keyboard_and_mouse_in_Linux

L.G.
Christoph

Ich hatte gehofft, dass das schon jemand geskriptet hat.
Ich kenne mich da nicht genug mit USB aus.
Ist das so, dass man einfach alle Busse abschalten kann, oder muss man die Busse und Portnummern der Anzeigegeräte bzw. USB-Steckplätze herusfiltern?

Gruß
Stefan