SSH XForwarding falla - xauth nombre para mostrar incorrecto


9

Estoy tratando de configurar XForwarding sobre ssh, pero falla. El mismo resultado sucede si uso el argumento -X o -Y para ssh. El error que recibo.

a@ASUS-N53SM:~$ ssh -X -p 6623 pinker@192.168.0.200
pinker@192.168.0.200's password: 
Last login: Sun Feb  2 18:42:08 2014 from 192.168.0.201
/usr/bin/xauth: (stdin):1:  bad display name "pinker-server:10.0" in "remove" command
/usr/bin/xauth: (stdin):2:  bad display name "pinker-server:10.0" in "add" command
xdpyinfo:  unable to open display "pinker-server:10.0".

En el archivo del cliente ~ / .ssh / config

ForwardX11 yes

En el archivo del cliente / etc / ssh / ssh_config (comentarios eliminados).

Host *
ForwardX11 yes
ForwardX11Trusted yes
SendEnv LANG LC_*
HashKnownHosts yes
GSSAPIAuthentication yes 
GSSAPIDelegateCredentials no

En el archivo del servidor / etc / ssh / sshd_config (comentarios eliminados).

Port 6623
Port 6624
Port 6625
Protocol 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
UsePrivilegeSeparation yes
KeyRegenerationInterval 3600
ServerKeyBits 768
SyslogFacility AUTH
LogLevel INFO
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes
RSAAuthentication yes
PubkeyAuthentication yes
IgnoreRhosts yes
RhostsRSAAuthentication no
HostbasedAuthentication no
PermitEmptyPasswords no
ChallengeResponseAuthentication no
X11Forwarding yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
AcceptEnv LANG LC_*
Subsystem sftp /usr/lib/openssh/sftp-server
UsePAM yes
X11UseLocalhost no
AllowTcpForwarding yes

Encontré esta pregunta similar , pero ninguna de las respuestas funciona.

ACTUALIZAR:

En el servidor, agregué al archivo / etc / hosts.

127.0.0.1       pinker-server

En el servidor, instalé el paquete xbase-clients. En las echo $DISPLAYsalidas de conexión ssh :0.0.

Ahora recibo un nuevo error.

X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
xdpyinfo:  unable to open display "pinker-server:10.0".

Respuestas:



6

Este error ocurre cuando la máquina remota no conoce su propio nombre de host o tiene un nombre de host incorrecto asociado con 127.0.1.1 (NOTA: no 127.0.0.1, que siempre debe resolverse en localhost).

Para corregirlo, asegúrese de que la entrada en / etc / hosts para 127.0.1.1 coincida con el FQDN de la máquina y el nombre de host corto.


Gracias, ese fue exactamente el caso para mí en mi escritorio OpenBSD 5.9 (-current).
Jason Robinson

una buena pista de que este es el caso es cuando "xauth list" muestra dos nombres de host diferentes. root @ sdi-playout: ~ # xauth list ubuntu-NANOCOM-BT / unix: 1 MIT-MAGIC-COOKIE-1 ... sdi-playout / unix: 0 MIT-MAGIC-COOKIE-1 ...
kevinf

¡Gracias! Esto me ayudó a resolver el error de reenvío X para mi VPS.
llinfeng

5

Cada vez que me encuentro con un problema de SSH, casi inmediatamente vuelvo a ejecutar el comando con más mensajes detallados habilitados. Me gusta usar esta técnica para recopilar el archivo de registro en el servidor desde el que me estoy ejecutando ssh. Si necesita obtener más detalles, simplemente agregue más -vinterruptores (el máximo es 3).

$ ssh -v user@remoteserver |& tee /path/to/sshv1.log
-or-
$ ssh -vv user@remoteserver |& tee /path/to/sshv2.log

Conexión X11 rechazada debido a una autenticación incorrecta.

Este mensaje casi siempre indica un problema de permisos con su .Xauthorityarchivo. Puede quitar el existente temporalmente o intentar arreglar su propiedad y permisos.

$ chown user:group ~/.Xauthority
$ chmod 0600 ~/.Xauthority

Si alguna de estas operaciones no resuelve el problema, puede intentar diagnosticar las xauthcookies mágicas.

como usuario local ejecutando ssh

$ xauth list
localhost/unix:13 MIT-MAGIC-COOKIE-1 c77169a6fa8139ea36f538e1c72e1b98

como pinker en el servidor

$ xauth
Using authority file /home/pinker/.Xauthority

Luego agregue la clave manualmente:

xauth> add localhost/unix:13 MIT-MAGIC-COOKIE-1 c77169a6fa8139ea36f538e1c72e1b98

Referencias


1

Obtuve la mayor parte de esta información de http://openvz.org/X_inside_VE#X_forwarding

Verifique X en SSH

Después de iniciar sesión a través de SSH, verifique que el reenvío X esté funcionando buscando la variable de entorno DISPLAY:

echo $DISPLAY

La respuesta debería ser algo como localhost:8.0

Asegúrese de que sshd permita el reenvío de X

Edite /etc/ssh/sshd_configy asegúrese de que tengaX11Forwarding yes

De lo contrario, edite o agregue la línea con X11Fordwarding y luego reinicie sshd:

service sshd restart( /etc/init.d/sshd restartestá usando CentOS 5)

Luego cierre sesión y vuelva a iniciarla

Asegúrese de que xauth esté configurado

Asegúrese de que se haya instalado el paquete xauth. En Debian, esto es parte del xbase-clientspaquete.

Todavía no funciona

En la pregunta que estoy respondiendo, el mensaje de error es este: /usr/bin/xauth: (stdin):1: bad display name "pinker-server:10.0" in "remove" command

Una posible solución, sugerida a continuación, es asegurarse de que la línea relevante se sshd_configvea así:

X11UseLocalhost yes

¿Parece que podríamos estar acercándonos a la solución? He actualizado la información anterior. Gracias.
Rucent88

3
Generalmente es una mala idea agregar un nombre de host a 127.0.0.1.
slm

He editado la respuesta para reflejar eso.
samiam

1

Encontré este problema después de la actualización de Gentoo. Esta página es el primer resultado de Google para 'agregar unix para mostrar el nombre en el comando agregar'. Ninguna de las soluciones descritas aquí ayudó. La solución está escrita en la descripción del error de Debian (segundo enlace en la página de búsqueda de Google mencionada anteriormente):

sethostname any-name-here

después de la ejecución de 'sethostname vvk' puedo iniciar sesión con X-forwarding como antes. Esta respuesta se escribe desde el navegador que se está ejecutando en el primer shell apropiado que inició sesión en el servidor remoto.


0

Para mí funciona como un encanto sshd_config

    Protocol 2
AuthorizedKeysFile  .ssh/authorized_keys
KerberosAuthentication yes
KerberosOrLocalPasswd yes
KerberosTicketCleanup yes
GSSAPIAuthentication yes
GSSAPICleanupCredentials yes
UsePAM yes
X11Forwarding yes
X11UseLocalhost yes
UsePrivilegeSeparation yes      # Default for new installations.
Banner /etc/issue.net
Subsystem   sftp    /usr/libexec/openssh/sftp-server
Ciphers aes256-ctr,aes192-ctr,aes128-ctr,arcfour256
MACs hmac-sha2-256,hmac-sha2-512,hmac-sha1,umac-64@openssh.com,hmac-ripemd160

ssh_config

Host *
   ForwardX11trusted yes
   GSSAPIAuthentication yes
   GSSAPIDelegateCredentials yes

Y use

ssh -X remotehost

por supuesto, el servidor Xorg debe instalarse completo (usando groupinstall, buena idea)


configuración típica de sshd, nada especial.
Vladimir Kunschikov
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.