Zugriff auf den X-Server

Selbst root darf nicht einfach einen fremden Desktop als Ausgabemedium missbrauchen: Der X-Server hat eine eigene Zugriffskontrolle. Geregelt wird dies in der versteckten Datei ~/.Xauthority – und da der "User root" die Daten eines jeden Users lesen kann, kann er die des Users einfach mitverwenden. Die einfachste Variante hierzu ist das Setzen der Umgebungsvariablen XAUTHORITY:

export XAUTHORITY=/home/jo/.Xauthority

Damit aber nicht genug: Da root keinen X-Server gestartet hat, reicht diese Erlaubnis nicht – denn unser Programm kann diese erst nutzen, wenn es auch weiß, dass ein fremdes Display verwendet werden soll. Auch hier hilft das Setzen einer Variablen:

export DISPLAY=:0.0

Bevor das nun beschriebene zusammengefügt wird, hier ein kleiner Test, der die nötige Basis veranschaulicht – und funktionieren sollte:

jo@planet ~$ su -
 Password:
 root@planet:~# export XAUTHORITY=/home/jo/.Xauthority
 root@planet:~# export DISPLAY=:0.0
 root@planet:~# root-tail /var/log/messages

Beenden kann man root-tail in diesem Fall mit der Tastenkombination [Strg+C].

Puzzle

Da nun als root vor dem Start von root-tail noch zwei Variablen gesetzt werden müssen, kann dies nicht mehr mit einem einfachen Aufruf geschehen. Ein kleines Skript schafft hier Abhilfe – allerdings muss dann nicht mehr root-tail, sondern das ganze Skript über super gestartet werden (auch die Variablen muss root setzen, gelten sie doch für ihn). Am Besten legen Sie eine Datei /usr/local/sbin/root-tail.username mit folgendem Inhalt an:

#!/bin/sh
 export XAUTHORITY=/home/username/.Xauthority
 export DISPLAY=:0.0
 /usr/X11R6/bin/root-tail /var/log/messages

Da Skripte, die über Tools wie super aufgerufen werden, leicht durch Modifikationen missbraucht werden können, sollte die Datei nur für root les- und schreibbar sein (ansonsten könnte jeder, der die Datei ändern und über super starten kann, darin beliebige Programme durch einfaches Hinzufügen starten lassen!). Daher als root tippen:

chown root.root /usr/local/sbin/root-tail.username
 chmod 700 /usr/local/sbin/root-tail.username

Anschließend noch die Konfigurationsdatei super.tab anpassen:

root-tail /usr/local/sbin/root-tail.username jo

Und fortan erscheint /var/log/messages auf dem User-Desktop nach Eingabe von super root-tail.

Zugegeben, der Aufwand ist bedingt durch die User-Rechte und den Zugriff auf den X-Server zunächst beträchtlich – aber hat man das einmal verstanden und eingesetzt, so ist es einfach: super gibt beliebige Programme für einen oder mehrere User frei, und ein Skript erlaubt die grafische Ausgabe. Diese Vorgehensweise lässt sich auf zahllose Programme übertragen, so z. B. auch auf den Lieblings-Datei-Manager, den man sich somit ein zweites Mal – aber mit Root-Rechten – ins Startmenü setzen kann. Dieser startet dann ganz ohne zusätzliche Passwortabfrage. Und das ist doch allerhand Aufwand wert.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • out of the box
    Jedes Linux-System schreibt Log-Dateien. Doch wer guckt sich diese schon regelmäßig an? root-tail und tailbeep helfen dabei, wichtige Ereignisse nicht zu verpassen.
  • Jo´s alternativer Desktop
    Wie Ihr Linux-Desktop aussieht, bestimmen allein Sie. Mit deskTOPia nehmen wir Sie regelmäßig mit auf die Reise ins Land der Window Manager und Desktop-Umgebungen, stellen Nützliches und Farbenfrohes, Hingucker und hübsches Spielzeug vor. Ein noch recht unbekanntes Schmuckstück im Land der Linux-Desktops ist Sapphire – ein kleiner und theme-fähiger Window Manager.
  • Jo´s alternativer Desktop
    Wie Ihr Linux-Desktop aussieht, bestimmen allein Sie. Mit deskTOPia nehmen wir Sie regelmäßig mit auf die Reise ins Land der Window-Manager und Desktop-Umgebungen, stellen Nützliches und Farbenfrohes, Hingucker und hübsches Spielzeug vor. Und unser in den letzten beiden Ausgaben vorgestellter Window Maker hat Nützliches im Handgepäck – auch für andere Window-Manager.
  • Jo´s alternativer Desktop
    Wie Ihr Linux-Desktop aussieht, bestimmen allein Sie. Mit deskTOPia nehmen wir Sie regelmäßig mit auf die Reise ins Land der Window-Manager und Desktop-Umgebungen, stellen Nützliches und Farbenfrohes, Hingucker und hübsches Spielzeug vor. Nach drei Ausflügen in die Welt der GNOME wird es nun Zeit für einen Blick über den Tellerrand - schließlich hat Linux mehr zu bieten als den Anzug von der Stange.
  • Jo´s alternativer Desktop
    Wie Ihr Linux-Desktop aussieht, bestimmen allein Sie. Mit deskTOPia nehmen wir Sie regelmäßig mit auf die Reise ins Land der Window-Manager und Desktop-Umgebungen, stellen Nützliches und Farbenfrohes, Hingucker und hübsches Spielzeug vor. Nachdem sich hier nun verschiedene Window-Manager vorstellten, ist es an der Zeit, diese um ein für viele wichtiges Feature zu ergänzen: Desktop-Icons.
Kommentare

Infos zur Publikation

LU 05/2016: DATEISYSTEME

Digitale Ausgabe: Preis € 5,99
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Aktuelle Fragen

MS LifeCam HD-5000 an Debian
Kay Michael, 13.04.2016 22:55, 0 Antworten
Hallo, ich versuche die oben erwähnte Cam an einem Thin Client mit Debian zu betreiben. Linux...
Import von Evolution nach KMail erzeugt nur leere Ordner
Klaus-Christian Falkner, 06.04.2016 12:57, 2 Antworten
Hallo, da ich vor einiger Zeit von Ubuntu auf Kubuntu umgestiegen bin, würde ich gerne meine E...
Sophos lässt sich nicht unter Lubuntu installieren
Chrstina Turm, 30.03.2016 20:56, 3 Antworten
Hi Leute, habe mir vor paar Tagen auf ein Notebook, das ohne Linux ausgedient hätte, Linux dr...
Novell Client auf Raspbian
Chris Baum, 16.03.2016 15:13, 3 Antworten
Hallo Community, ich hätte eine Frage, und zwar geht es um folgendes: Ich möchte eine Datei...
Pantheon konfigurieren (eOS)
John Smith, 16.03.2016 13:50, 0 Antworten
Hallo ins Forum, ich bin neu in der Linuxwelt und fühle mich bereits sehr wohl. Mein neues Sys...