Эти сообщения могут быть удалены одним из трех способов, используя только параметры SSH. Вы также всегда можете отправлять сообщения, /dev/null
но эти методы пытаются обработать сообщение с помощью конфигурации, а не просто перехватывать и сбрасывать их.
Способ № 1 - установить Xauth
Сервер, на который вы обращаетесь, жалуется, что не может создать запись в .Xauthority
файле пользователя , потому что xauth
он не установлен. Таким образом, вы можете установить его на каждом сервере, чтобы избавиться от этого раздражающего сообщения.
На Fedora 19 вы устанавливаете xauth
так:
$ sudo yum install xorg-x11-xauth
Если вы попытаетесь ssh
зайти на сервер, вы увидите сообщение о том, что в .Xauthority
файле пользователя создается запись .
$ ssh root@server
/usr/bin/xauth: creating new authority file /root/.Xauthority
$
Последующие логины больше не будут показывать это сообщение.
Способ № 2 - отключить его через ForwardX11
Вы можете ssh
указать клиенту не пытаться включить пересылку X11, включив параметр SSH ForwardX11.
$ ssh -o ForwardX11=no root@server
Вы можете сделать то же самое с -x
переключателем:
$ ssh -x root@server
Это только временно отключит это сообщение, но это хороший вариант, если вы не можете или не хотите устанавливать его xauth
на удаленный сервер.
Способ № 3 - отключить его через sshd_config
Обычно это значение по умолчанию, но в sshd
противном случае вы можете настроить свой сервер так, чтобы X11Forwarding был отключен, в /etc/ssh/sshd_config
.
X11Forwarding no
Из 3-х методов, которые я обычно использую, # 2, потому что я часто хочу включить их X11Forwarding
на большинстве своих серверов, но потом не хочу видеть X11....
предупреждения
$ HOME / .ssh / конфигурации
В большинстве случаев это сообщение даже не будет отображаться. Они обычно присутствуют только тогда, когда у вас есть следующие записи в вашем $HOME/.ssh/config
файле, вверху.
ServerAliveInterval 15
ForwardX11 yes
ForwardAgent yes
ForwardX11Trusted yes
GatewayPorts yes
Таким образом, именно эта настройка в конечном итоге приводит к генерации этих X11..
сообщений, поэтому, опять-таки, метод № 2 может показаться наиболее подходящим, если вы хотите работать с ForwardX11 yes
включенным по умолчанию, но затем выборочно отключить его для определенных соединений с ssh
точки зрения клиента. ,
Безопасность
Как правило, не рекомендуется работать ForwardX11 yes
на все время. Так что, если вы хотите работать с SSH-соединениями наиболее безопасным способом, лучше всего сделать следующее:
- Не включать
ForwardX11 yes
в ваш $HOME/.ssh/config
файл
- Используйте ForwardingX11 только тогда, когда вам нужно через
ssh -X user@server
- Если можете,
X11Forwarding
полностью отключите на сервере, чтобы он был запрещен
Ссылки
В моем случае добавление этой строки
/etc/ssh/sshd_config
решило проблему:источник
locahost
пересылку X11. Переадресация X11 на двух других все еще работает. Есть идеи, что могло измениться?Я наткнулся на это сегодня и некоторое время бил меня по голове, пока не наткнулся на параметр ssh:
Если это RHEL 7 (centOS, OEL и т. Д.) И ipv6 отключен, ему необходимо:
установить в / etc / ssh / sshd_config.
источник
Другим небольшим изменением будет, если вы захотите прекратить видеть это сообщение (то есть прекратить попытки пересылки X11) для определенных серверов, но при этом оставьте значение по умолчанию ForwardX11 yes для всех других соединений.
Для этого сценария вы можете отключить пересылку X11 для определенного хоста (или диапазона) в вашем ~ / .ssh / config. Что-то вроде этого:
Подтверждение: Это небольшое приукрашивание к существующему (и очень полному) существующему ответу - так как я не мог комментировать!
источник
Если запуск клиента в подробном режиме (
ssh -v user@host
) дает вамно
xauth
на самом деле он установлен на сервере, то, вероятно, потому что sshd ищет исполняемый файл xauth в неправильном месте ( обычно / usr / X11R6 / bin / xauth ). Это можно исправить, установивв / etc / sshd / sshd_config (или где-либо еще, на котором настроен ваш сервер).
источник
Настройка переадресации X11 для каждого хоста
В дополнение ко всем отличным ответам, уже здесь, вы можете настроить
ForwardX11
для каждого хоста, так что, если толькоserver
не удается, как это, вы можете добавить запись в свой~/.ssh/config
файл следующей формы:Вы даже можете использовать такие записи как псевдонимы для целых наборов конфигураций.
Это особенно полезно, если вы настроили автозаполнение имен серверов для SSH и SCP .
источник
Я столкнулся с этим вопросом после столкновения с
sshd-xauth
ошибкой почти десятилетнего возраста. Сообщается о двух решениях: первое - в обходxauth
, второе - для устранения ошибки.Решение 1 - обход Xauth
Удаленный
/etc/ssh/sshd_config
:Удаленный
~/.Xauthority
пустой или не существуетПо местному:
В тесте local работал Ubuntu 18.05, удаленный - Debian Jesse.
Я также разместил это решение в качестве ответа на другой вопрос.
Решение 2 - устранить ошибку sshd / xauth
Это решение близко к решению @systempoet выше , хотя одного этого было недостаточно.
В дополнение к модификации
/etc/ssh/sshd_config
на пульте:/etc/hosts
на пульте также были доработаны:Если любой из них был закомментирован, сообщение об ошибке
появился после
ssh -X ...
звонка. Кроме того,/var/log/auth.log
показанная ошибка:Тест для создания ошибки (до исправления):
Локальная машина:
источник
После внесения изменений в конфигурацию необходимо отметить один важный момент: вам нужно будет убить sshd, чтобы он зафиксировал изменения:
будучи пользователем root.
источник
Установите следующие 2 опции
/etc/ssh/sshd_config
на вашем хосте RHELX11Forwarding yes X11UseLocalhost no
sudo /etc/init.d/sshd reload
sudo yum install xauth
ssh -X yourname@rhelbox
источник