Zurück | Inhalt | Inhalt von Kapitel 6 | Top | Weiter |
Zurück | Inhalt | X-Session über ssh starten? | Top | Weiter |
X-Session über ssh starten?
Mit entsprechend konfiguriertem ssh ist es sehr einfach, übers Netz eine X-Session auf einem anderen Rechner zu starten. Die relevanten Einstellungen sind:
»X11Forwarding yes« in der /etc/ssh/sshd_config des Zielrechners (auf dem man sich einloggt).
»ForwardX11 yes« in der /etc/ssh/ssh_config auf dem Ausgangsrechner (auf dem der X-Server läuft).
Wenn X-Forwarding funktioniert, braucht man sich nur aus einem xterm oder ähnlichem mit ssh einloggen und hat automatisch ein korrekt gesetztes DISPLAY. Das nächste X-Programm, dass man auf dem entfernten Rechner startet, schickt die Ausgabe dann zum X-Server auf dem Ausgangsrechner. Das X-Protokoll läuft dabei verschlüsselt über die ssh-Verbindung. Dies hat drei Vorteile:
Die Verbindung ist verschlüsselt.
Der X-Server weiß nichts davon, dass die Daten in Wirklichkeit übers Netz kommen. Man braucht also die in X11 vorhandenen Zugriffskontrollmechanismen nicht konfigurieren.
Der X-Server braucht keine TCP/IP-Anbindung. Und nur ein nicht vorhandener Netzwerkdienst ist sicher. Siehe http://www2.uibk.ac.at/linuxdoc/LDP/HOWTO/XWindow-User-HOWTO/xsecurity.html.
Zurück | Inhalt | X-Session über telnet starten? | Top | Weiter |
X-Session über telnet starten?
Der klassische Weg übers Netz eine X-Session zu starten:
Irgendwie auf dem entfernten Rechner einloggen (telnet, rexec, rsh, cronjob, CGI-Script)
Umgebungsvariable DISPLAY korrekt setzen. Im einfachsten Fall:
export DISPLAY=rechner.mit.dem.x.server:0
Die Zugriffskontrolle des X-Servers einstellen. Im einfachsten Fall:
xhost +entfernter.rechner.mit.dem.program
Zugriffskontrolle anhand von IP-Adressen ist zum einen relativ leicht zu umgehen. Zum anderen schaltet man damit ohne Unterschied alle Benutzer eines Rechners frei. Und dann geht sowohl telnet als auch X11 unverschlüsselt übers Netz.
Zurück | Inhalt | Zugriffskontrolle eines X-Servers mit xauth | Top | Weiter |
Zugriffskontrolle eines X-Servers mit xauth
In der Datei $HOME/.Xauthority des Benutzers, der den X-Server gestartet hat, finden sich mehrere »MIT-MAGIC-COOKIE«. Kann ein X-Client ein passendes Cookie vorweisen, erhält er Zugriff. Zur Übergabe gibt es zwei Möglichkeiten:
Hat der Client Zugriff auf die andere $HOME/.Xauthority übers Dateisystem (nfs, smbfs, oder zwei Benutzer am selben Rechner), dann braucht man nur die Variable XAUTHORITY umsetzen.
Ansonsten hilft nur der ausführliche Weg.
Liste der Kekse ansehen, passenden aussuchen.
xauth list
Passenden Keks exportieren.
xauth extract austauschdatei rechner.mit.dem.x.server:0
Die Austauschdatei irgendwie zum anderen Rechner transportieren.
Den gewählten Keks importieren.
xauth merge austauschdatei
Mit ssh (bzw. rsh) kann man das alles auch in einer Zeile machen.
xauth nlist rechnername:0 | ssh user@remotehost xauth nmerge -
Zurück | Inhalt | X-Session über su starten? | Top | Weiter |
X-Session über su starten?
Dieser Fall lässt sich grundsätzlich mit den oben angeführten Mechanismen lösen. Es gibt aber drei komfortable Sonderfälle.
root hat an sich immer Zugriff auf $HOME/.Xauthority. Umsetzen von XAUTHORITY reicht also völlig. Das geht allerdings nicht, wenn $HOME über NFS gemountet ist, und die Option no_root_squash auf dem Fileserver nicht gesetzt ist.
pam_xauth
Dieses PAM-Modul erledigt die Keksübergabe automatisch. Wird bei Red Hat seit Version 7 mitgeliefert.
sux
Ein Wrapper um su. http://sourceforge.net/projects/sux/
Zurück | Inhalt | Mehrere X-Server auf dem selben Rechner? | Top | Weiter |
Mehrere X-Server auf dem selben Rechner?
http://www.fisica.uson.mx/carlos/Linux/Docs/lnag/Linux_Xwindows.htm#multiple_X_Sessions
http://www.fisica.uson.mx/carlos/Linux/Docs/lnag/Linux_Xwindows.htm#2nd_GUI_login_prompt
http://www.justlinux.com/nhf/X_Window/Creating_Multiple_GDM_Logins_on_a_Single_Workstation.html
Zurück | Inhalt | Was ist so gefährlich an . oder :: im PATH? | Top | Weiter |
Was ist so gefährlich an ».« oder »::« im PATH?
Wenn in einem Verzeichnis mehrere Leute Schreibrechte haben, wie zum Beispiel in /tmp/, lassen sich so trojanische Pferde unterjubeln. Das mag auf einem Einzelplatzrechner weit hergeholt klingen, aber schlechte Angewohnheiten wird man nur schwer wieder los. Der richtige Weg ein Programm im aktuellen Verzeichnis aufzurufen, sieht so aus:
./program
Ausführliche Beschreibung: http://www.lrz-muenchen.de/services/security/path/
Zurück | Inhalt | Wie kann ich Umgebungsvariablen definieren? | Top | Weiter |
Wie kann ich Umgebungsvariablen definieren?
export VARIABLE=Wert
VARIABLE=Wert export VARIABLE
setenv VARIABLE Wert
Welche Shell man verwendet, sagt einem echo $SHELL oder echo $BASH_VERSION.
Keine Leerzeichen vor und nach dem Gleichheitszeichen
Keine Gleichheitszeichen bei setenv
Wenn Wert Leerzeichen enthält, sollte man Wert mit doppelten Anführungszeichen umgeben:
export VARIABLE="In space, no one can hear you fart."
Wenn Wert "härtere" Sonderzeichen wie etwa "$" enthält, helfen einfache Anführungszeichen:
export VARIABLE='Go directly to jail. Do not pass Go, do not collect $200.'
Zurück | Inhalt | Wie kann ich mit einem Skript die Umgebungsvariablen der laufenden Shell ändern? | Top | Weiter |
Wie kann ich mit einem Skript die Umgebungsvariablen der laufenden Shell ändern?
Wenn man ein Shell-Skripts auf die übliche Art startet, wird dazu ein eigener Prozess erzeugt. Umgebungsvariablen werden dabei vom Elternprozess an den Kindprozess vererbt (man kann das mit env auch verhindern). Es gibt aber keine Möglichkeit in der Umkehrrichtung Variablen zu setzen.
Um durch ein Skript Umgebungsvariablen einer laufenden Shell zu ändern, muss man es statt dessen »ein-sourcen«:
source Datei
oder
. Datei
Zurück | Inhalt | Kopieren und Einfügen (Zwischenablage unter X11)? | Top | Weiter |
Kopieren und Einfügen (Zwischenablage unter X11)?
X11 kennt zwei Arten der Zwischenablage.
Kopiert wird durch Auswählen mit der linken Maustaste. Doppelklick markiert wortweise, Dreifach-Klick zeilenweise. Man kann stattdessen auch einfach mit gedrückter Maustaste über die Auswahl ziehen.
Eingefügt wird durch Drücken der mittleren Maustaste (bei einer Zweitastenmaus durch gleichzeitiges Drücken linker und rechte Maustaste).
Einige Textmodus-Programme (vim, links, mc) beherrschen unter X11 (also innerhalb eines xterm oder ähnlichem) eine eigene Maussteuerung. Ein Klick mit der linken Maustaste versetzt dann etwa den Cursor oder springt einen Hyperlink an. Die Funktionalität der Primary Selection erreicht man in dem Fall durch Festhalten der Hochstelltaste (englische Beschriftung ist Shift) während des Mausklicks.
Kopiert wird in zwei Schritten:
Auswahl der zu kopierenden Daten mit Maus oder Tastatur.
Auslösen des Kopierkommandos, durch den Menüpunkt Bearbeiten → Kopieren, oder der Tastenkombination Strg+C.
Eingefügt wird mit Bearbeiten → Einfügen, oder der Tastenkombination Strg+V.
Die englischen Bezeichnungen sind Edit → Copy bzw. Edit → Paste und Ctrl statt Strg. Antike Software (etwa Netscape 4.x) verwendet statt dessen auch Alt.
http://linux.about.com/library/bl/open/newbie/blnewbie4.3.10.htm
http://www.faqs.org/docs/lnag/lnag_xwindows.html#copy_paste
http://www.jguru.com/faq/view.jsp?EID=569572
Zurück | Inhalt | Screenshots in X11, KDE, Gnome? | Top | Weiter |
Screenshots in X11, KDE, Gnome?
xwd, Teil von X11 selbst
import, Teil von ImageMagick
gimp, File → Acquire → Screen Shot …
ksnapshot, ist unter KDE meist schon unter ALT+Druck bzw. STRG+Druck vorkonfiguriert
Außerdem xwpick, xgrab, xv, xdmp
Zurück | Inhalt | Screenshots im Framebuffer? | Top | Weiter |
Screenshots im Framebuffer?
Es ist zwar möglich, /dev/fb0 direkt auszulesen, aber von den vielen Speicherformaten werden nur die wenigsten von ImageMagick unterstützt. Ohne ein spezielles Konversionsprogramm geht es im allgemeinen nicht.
http://hem.bredband.net/gmogmo/fbgrab/
http://www.sfires.net/fbshot/
Zurück | Inhalt | Screenshots im Textmodus? | Top | Weiter |
Screenshots im Textmodus?
Damit kann man im reinen Textmodus die Maus zum Selektieren und Kopieren von Text verwenden.
Der Inhalt virtueller Konsolen kann auch direkt ausgelesen werden.
Mit der Tastenkombination »C-a H« wird das Logging eingeschaltet, dabei werden auch sämtliche Terminalsteuerzeichen aufgezeichnet. Diese lassen sich mit colcrt rausfiltern.
Zurück | Inhalt | Ende dieser Seite | Check | Top | Weiter |