Wenn ich eine SSH-Verbindung zu einem Remote-Server herstelle, auf dem keine X11-Desktopumgebung ausgeführt wird, erhalte ich die folgende Meldung.
$ ssh [email protected]
X11 forwarding request failed
$ ssh [email protected] ls
X11 forwarding request failed on channel 1
file1
file2
...
Wie kann ich diese Nachrichten loswerden?
Akzeptierte Antwort:
Diese Nachrichten können durch 1 von 3 Methoden eliminiert werden, indem nur SSH-Optionen verwendet werden. Sie können Nachrichten immer an /dev/null
senden auch, aber diese Methoden versuchen, mit der Nachricht durch Konfiguration umzugehen, anstatt sie nur abzufangen und auszugeben.
Methode Nr. 1 – xauth installieren
Der Server, auf den Sie remoten, beschwert sich, dass er keinen Eintrag in der .Xauthority
des Benutzers erstellen kann Datei, weil xauth
es ist nicht installiert. Sie können es also auf jedem Server installieren, um diese lästige Meldung loszuwerden.
Auf Fedora 19 installieren Sie xauth
so:
$ sudo yum install xorg-x11-xauth
Wenn Sie dann versuchen, ssh
In den Server sehen Sie eine Meldung, dass ein Eintrag in der .Xauthority
des Benutzers erstellt wird Datei.
$ ssh [email protected]
/usr/bin/xauth: creating new authority file /root/.Xauthority
$
Bei nachfolgenden Anmeldungen wird diese Meldung nicht mehr angezeigt.
Methode Nr. 2 – Deaktivieren Sie es über ForwardX11
Sie können ssh
anweisen Client, nicht zu versuchen, die X11-Weiterleitung durch Einbeziehung des SSH-Parameters ForwardX11.
$ ssh -o ForwardX11=no [email protected]
Das gleiche können Sie mit -x
machen Schalter:
$ ssh -x [email protected]
Dies deaktiviert diese Meldung nur vorübergehend, ist aber eine gute Option, wenn Sie xauth
nicht installieren können oder wollen auf dem Remote-Server.
Methode #3 – über sshd_config deaktivieren
Dies ist normalerweise die Standardeinstellung, aber falls dies nicht der Fall ist, können Sie Ihre sshd
einrichten Server so, dass X11Forwarding deaktiviert ist, in /etc/ssh/sshd_config
.
X11Forwarding no
Von den 3 Methoden verwende ich im Allgemeinen #2, weil ich oft X11Forwarding
möchte für die meisten meiner Server eingeschaltet, möchte dann aber X11....
nicht sehen Warnungen
$HOME/.ssh/config
Meistens werden diese Nachrichten nicht einmal angezeigt. Sie sind normalerweise nur vorhanden, wenn Sie die folgenden Einträge in Ihrem $HOME/.ssh/config
haben Datei, ganz oben.
ServerAliveInterval 15
ForwardX11 yes
ForwardAgent yes
ForwardX11Trusted yes
GatewayPorts yes
Es ist also dieses Setup, das letztendlich die Generierung dieser X11..
vorantreibt Nachrichten, also scheint Methode #2 wieder die geeignetste zu sein, wenn Sie mit ForwardX11 yes
arbeiten möchten standardmäßig aktiviert, aber dann selektiv für bestimmte Verbindungen über ssh
deaktivieren Kundenperspektive.
Sicherheit
Es ist im Allgemeinen nicht ratsam, mit ForwardX11 yes
zu laufen immer an. Wenn Sie also Ihre SSH-Verbindungen so sicher wie möglich betreiben möchten, gehen Sie am besten wie folgt vor:
- Nicht
ForwardX11 yes
einschließen in Ihrem$HOME/.ssh/config
Datei - Verwenden Sie ForwardingX11 nur, wenn Sie über
ssh -X [email protected]
müssen - Wenn möglich, deaktivieren Sie
X11Forwarding
komplett auf dem Server, also ist es nicht erlaubt
Referenzen
- SSH:Die sichere Shell – Der endgültige Leitfaden – 9.3. X Weiterleitung