Když ssh vstoupím na vzdálený server, na kterém není spuštěn žádný typ desktopového prostředí X11, zobrazí se mi následující zpráva.
$ ssh [email protected]
X11 forwarding request failed
$ ssh [email protected] ls
X11 forwarding request failed on channel 1
file1
file2
...
Jak se mohu těchto zpráv zbavit?
Přijatá odpověď:
Tyto zprávy lze eliminovat pomocí 1 ze 3 metod pouze pomocí možností SSH. Vždy můžete posílat zprávy na /dev/null
ale tyto metody se snaží vypořádat se zprávou prostřednictvím konfigurace, spíše než ji pouze zachytit a zahodit.
Metoda č. 1 – instalace xauth
Server, na který se vzdáleně připojujete, si stěžuje, že nemůže vytvořit záznam v .Xauthority
uživatele soubor, protože xauth
není nainstalován. Můžete jej tedy nainstalovat na každý server, abyste se zbavili této nepříjemné zprávy.
Na Fedoře 19 nainstalujete xauth
takhle:
$ sudo yum install xorg-x11-xauth
Pokud se poté pokusíte o ssh
na serveru uvidíte zprávu, že se vytváří záznam v .Xauthority
uživatele soubor.
$ ssh [email protected]
/usr/bin/xauth: creating new authority file /root/.Xauthority
$
Při následných přihlášeních se již tato zpráva nebude zobrazovat.
Metoda č. 2 – deaktivujte ji pomocí ForwardX11
Můžete zadat příkaz ssh
klienta, aby se nepokoušel povolit předávání X11 zahrnutím parametru SSH ForwardX11.
$ ssh -o ForwardX11=no [email protected]
Totéž můžete udělat s -x
přepínač:
$ ssh -x [email protected]
Toto pouze dočasně zakáže tuto zprávu, ale je to dobrá volba, pokud nemůžete nebo nechcete nainstalovat xauth
na vzdáleném serveru.
Metoda č. 3 – deaktivujte ji pomocí sshd_config
Toto je obvykle výchozí nastavení, ale v případě, že tomu tak není, můžete nastavit sshd
server, takže X11Forwarding je vypnutý, v /etc/ssh/sshd_config
.
X11Forwarding no
Ze 3 metod obecně používám #2, protože často budu chtít X11Forwarding
na většině mých serverů, ale pak nechci vidět X11....
varování
$HOME/.ssh/config
Většinu času se tyto zprávy ani nezobrazí. Obvykle jsou přítomny pouze tehdy, když máte v $HOME/.ssh/config
následující položky soubor, nahoře.
ServerAliveInterval 15
ForwardX11 yes
ForwardAgent yes
ForwardX11Trusted yes
GatewayPorts yes
Takže je to toto nastavení, které nakonec řídí generaci těchto X11..
zpráv, takže znovu se metoda #2 zdá být nejvhodnější, pokud chcete pracovat s ForwardX11 yes
ve výchozím nastavení zapnuto, ale poté jej selektivně zakázat pro určitá připojení z ssh
pohled klienta.
Zabezpečení
Obecně se nedoporučuje spouštět s ForwardX11 yes
zapnutý po celou dobu. Pokud tedy chcete provozovat svá připojení SSH v co nejbezpečnějším prostředí, je nejlepší udělat následující:
- Nezahrnujte
ForwardX11 yes
ve vašem$HOME/.ssh/config
soubor - Používejte ForwardingX11 pouze v případě potřeby prostřednictvím
ssh -X [email protected]
- Pokud můžete, vypněte
X11Forwarding
zcela na serveru, takže je to zakázáno
Odkazy
- SSH:Secure Shell – Definitivní průvodce – 9.3. X Přeposílání