Kann ich Linux in den Status "Party / Kiosk-Modus" bringen?

3164
Cihan Keser

Ich möchte ein Linux-Benutzerkonto erstellen (in Ubuntu oder Debian oder was auch immer für ein Release besser geeignet ist), das nichts weiter tun kann, als nur eine vordefinierte Webseite anzuzeigen. Art des Kiosk-Stils, so dass der Benutzer von dieser Webseite aus beobachten kann, was los ist; kann nicht ausgeführt oder geschrieben werden (und diese Blockierung wird vorzugsweise auch über die GUI vorgenommen, dh der Benutzer kann den Browser nicht minimieren oder schließen, kann keine Startmenüs anzeigen) alles auf dem Computer. Wie kann ich das machen?

3

2 Antworten auf die Frage

2
Ivo Flipse

Auf dieser Website finden Sie mehrere Tutorials zum Einrichten von Linux nach Ihren Wünschen. Beachten Sie, dass es etwas veraltet sein kann ...

Ich werde die "Nur-Website" -Version zitieren, aber auf der Website finden Sie weitere Informationen.

Dies ist Teil eines Experiments zur Verwendung von Linux als Kiosksystem. "Kiosk-System" kann mehrere Bedeutungen haben, aber hier wird davon ausgegangen, dass es sich nur um einen Computer handelt, der nur eine Anwendung - einen Webbrowser - ausführt und dem Benutzer nichts anderes erlaubt, als diesen Browser zu verwenden. Auf diese Weise kann der Computer unbeaufsichtigt bleiben, z. B. an öffentlichen Orten (öffentliche Bibliotheken, ...)

Zu den häufig verwendeten Ansätzen gehört es, Windows zu installieren, es zu sperren und dem Benutzer eine begrenzte menüähnliche Benutzeroberfläche zu präsentieren - oft mit spezieller Software (z. B. WinU). Aber das fühlt sich ein bisschen wie Verschwendung von Ressourcen und Geld an: Sie müssten eine Windows-Lizenz für einen Computer erwerben, der kaum verwendet wird (nur ein Browser ...), und außerdem müssen Sie dafür zusätzliche Software bezahlen Führen Sie nur diesen einen Browser aus. Also haben wir es aus einem anderen Blickwinkel betrachtet: Ist das etwas, was Linux ohne all den Overkill tun könnte?

Was brauchen wir ?

Um nur einen Webbrowser auszuführen, benötigen wir keinen ausgewachsenen Desktop: Ein minimales X-Windows-System reicht aus: Alles, was wir brauchen, ist ein Fenster, in dem der Browser ausgeführt werden kann. Dieser Ansatz wird auch in diesem "minimalen GUI" -Setup für einen Linux-Server verwendet, bei dem wir einen Webbrowser zur Verfügung stellen, um die grafischen Frontends zur Konfiguration des Systems zu nutzen. Darauf aufbauend werden wir ein Linux-Basissystem einrichten (nur das Betriebssystem installieren - z. B. Debian 3) und einige X-Window-Komponenten hinzufügen, um einen Webbrowser (Firefox) auszuführen.

Angenommen, dieser Computer wird unbeaufsichtigt sein, wir möchten nicht, dass Benutzer mit ihm spielen, und wir möchten definitiv nicht, dass Benutzer ihn knacken oder versuchen, seine Privilegien zu erhöhen oder eigene Software zu installieren, damit der Computer zum Zombie wird oder was nicht - also verweigern wir ihnen allen den Zugang zum System. Dafür verwenden wir 'Bastille'. Bastille ist ein Programm, das Sie durch die Schließbewegungen des Systems führt. (siehe Bastille home)

Schließlich möchten wir, dass alles mehr oder weniger automatisch funktioniert, also nutzen wir Runlevel und Startskripte.

Installation der Software und Grundkonfiguration

Das Basis-Setup Wir installieren nur ein Basissystem und fügen dann die Pakete hinzu, die wir benötigen / möchten. Das hier verwendete Betriebssystem ist Debian 3.0, Netzwerkinstallation. Wir fügen Bastille, Firefox und einige Komponenten aus dem x-windows-System hinzu: gerade genug, um Fenster zu erstellen und dem Benutzer eine GUI-Anmeldung bereitzustellen. Wir fügen auch ssh für die Remote-Verwaltung von root und vim hinzu, um Textdateien zu bearbeiten.

apt-get install x-window-system fvwm vim ssh

Systemanforderungen: Jeder PC, der Linux (Textmodus) + Xwindows ausführen kann. Festplattenspeicher: ... mb (System + Software) + Swap + Speicherplatz für Browser-Cache / temporäre Dateien. Das bedeutet: Jeder alte PC wird es tun.

erstellen Sie einen Benutzer erstellen wir 1 Benutzer (www) mit Passwort www. Dieses Konto wird verwendet, um den PC als Web-Client zu verwenden.

useradd -m -s / bin / false -p mkpasswd www SDwww

Das Windows-Setup Das Einrichten von X-Windows bedeutet, dass Sie einige Eingaben machen müssen (Monitor, Tastatur, Maus, ...). So ändern Sie die Konfiguration: dpkg-reconfigure xserver-xfree86 oder bearbeiten Sie die Konfigurationsdatei (/ etc / X11 / X86config-4).

Die Konfiguration der Windows-Umgebung befindet sich im Home-Verzeichnis des Benutzers (~ / .xinitrc). Wenn diese fehlt, wird der Systemstandard verwendet: / usr / X11R6 / lib / X11 / xinit / xinitrc (siehe XFree86 HOWTO) . (Unter Debian) xinitrc ruft nur / etc / X11 / Xsession auf, was sich wiederum auf Dateien in /etc/X11/Xsession.d und ~ / .Xsession bezieht. In /etc/X11/Xsession.d finden wir ein Skript 99xfree86-common_start mit einer ausführbaren $ STARTUP-Anweisung. Angenommen, hier können wir die Programme, die wir ausführen wollen, in X einfügen, ersetzen wir exec $ STARTUP durch 'exec firefox'. Auf diese Weise wird Firefox gestartet, sobald der xserver gestartet wird. Wenn Sie Firefox beenden, wird auch die xwindows-Sitzung beendet.

Um dies zu tun: Lesen Sie die Debian-Dokumentation zur Konfiguration von Fenstermanagern und finden Sie heraus, wie sich all diese x11-Dateien miteinander verhalten. Finden Sie einen Weg, um Höhe und Breite in Firefox zu erzwingen. Wir wollen es im Vollbildmodus. "firefox -height 600-width 800" sollte funktionieren? Problemumgehung: Führen Sie Firefox einmal aus, konfigurieren Sie die Einstellungen und Fenster. Diese Einstellungen werden beim nächsten Mal verwendet

Die Runlevels Sie können jetzt feststellen, dass Ihr System jetzt ein grafisches Login anbietet und Firefox sofort startet, was wir uns ohnehin gewünscht haben, mit der Ausnahme, dass root eine Eingabeaufforderung bevorzugt, um das System weiter einzurichten. Wir ändern also den Standard-Runlevel auf 3 (in / etc / inittab) und deaktivieren die X-Startskripts in rc2.d (Runlevel 2). Jetzt startet das System auf Runlevel 3 (mit GUI-Login für Benutzer www und Firefox, das sofort gestartet wurde) - root kann init 2 für eine Eingabeaufforderung booten und muss sich keine Sorgen machen.

der Bonus Wenn Sie jetzt über eine grafische Benutzeroberfläche verfügen, können Sie einen Bildschirmschoner hinzufügen. "Die Matrix" ist eine schöne.

die BastilleBastille ist ein Programm, das Sie durch eine Vielzahl von Konfigurationseinstellungen führt, um Ihr System sicherer zu machen. Einige beziehen sich auf Netzwerke, z. B. wird eine Firewall eingerichtet, die - im Falle eines Web-Kiosks - nur ausgehende http zulässt und nur Antworten auf ausgehenden Datenverkehr akzeptiert. Ein weiterer Satz von Einstellungen sichert das System als solches, indem es "chroot" verwendet, einige Dateisystemberechtigungen modifiziert und die Verwendung von SUID verschärft. Eine Funktion ist für einen unbeaufsichtigten PC äußerst nützlich: Setzen eines (Root-) Passworts auf Runlevel 1 ('Einzelbenutzermodus', 'Root-Modus', 'Wiederherstellungsmodus'; 'Wartungsmodus'). Im Einzelbenutzermodus könnte man das root-Passwort zurücksetzen und sich folglich als root anmelden - eindeutig eine Bedrohung für einen unbeaufsichtigten Computer:

Ein weiterer Punkt ist die Deaktivierung von Druckern und / oder die Möglichkeit, Druckaufträge nur im Stammverzeichnis zu verwalten. Sie müssen dies herausfinden, je nachdem, wofür dieser PC verwendet wird und ob der WWW-Benutzer gedruckt werden muss oder nicht. Dieses gesperrte Ubunto / Gnome-Desktop-Kiosk-System enthält einige Details zu den entsprechenden Einstellungen.

datiert? okt. 2005. Ja, man könnte sagen, es ist veraltet. :) Hier ist eine Juli-2006-Version, die Ubuntu (dieselbe Site) verwendet: http://users.telenet.be/mydotcom/howto/linuxkiosk/ubuntu01.htm ... da gibt es doch irgendwo ein neueres HOWTO. quack quixote vor 14 Jahren 0
Meine Superuser-Seite stürzte bei mir ab, als ich eine neuere Version hinzufügte Ivo Flipse vor 14 Jahren 0
Er könnte nur Linux von einer LiveCD laufen lassen, wodurch ein Teil des Problems behoben wird! Ivo Flipse vor 14 Jahren 0
1
fpmurphy1

Dies kann mit SELinux erfolgen. Die Fedora SElinux-Richtlinie unterstützt einen speziellen Gastbenutzer namens xguest

Das xguest-Paket enthält ein Kiosk-Benutzerkonto. Dieses Konto wird zum Sichern von Computern verwendet, auf die die Benutzer zugreifen, z. B. in Bibliotheken, Banken, Flughäfen, Informationskiosken und Cafés. Das Kiosk-Benutzerkonto ist sehr gesperrt: Im Wesentlichen können sich Benutzer nur anmelden und mit Firefox Internet-Websites durchsuchen. Alle Änderungen, die während der Anmeldung mit seinem Konto vorgenommen wurden, z. B. das Erstellen von Dateien oder das Ändern von Einstellungen, gehen beim Abmelden verloren.

Siehe das Fedora 11 Security Enhanced Linux-Benutzerhandbuch.