Mountain Lion ssh -X problemas

8

¿Cómo ejecutar el reenvío Mountain Lion X11 a través de SSH?

Ejemplo:

ssh -X [email protected] xterm

mi / etc / sshd_config tiene

X11Forwarding yes
#X11DisplayOffset 10
X11UseLocalhost yes

# XAuthLocation added by XQuartz (http://xquartz.macosforge.org)
XAuthLocation /opt/X11/bin/xauth

Reiniciado sshd con

launchctl stop com.openssh.sshd
launchctl start com.openssh.sshd

(y de las Preferencias - > Compartir también)

Inicié XQuatrz, y desde xterm ejecuté

ssh -v -X [email protected] xterm        #this part not works :)

consiguió el siguiente:

debug1: Authentication succeeded (keyboard-interactive).
Authenticated to 192.168.1.17 ([192.168.1.17]:22).
debug1: channel 0: new [client-session]
debug1: Requesting [email protected]
debug1: Entering interactive session.
debug1: Requesting X11 forwarding with authentication spoofing.
debug1: Sending command: xterm
debug1: Remote: No xauth program; cannot forward with spoofing.
X11 forwarding request failed on channel 0
xterm: Xt error: Can't open display: 
xterm: DISPLAY is not set
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
debug1: client_input_channel_req: channel 0 rtype [email protected] reply 0
debug1: channel 0: free: client-session, nchannels 1
Transferred: sent 2656, received 2480 bytes, in 0.1 seconds
Bytes per second: sent 29582.4, received 27622.1
debug1: Exit status 1

desde el xterm

$ echo $DISPLAY
/tmp/launch-BHtJfJ/org.macosforge.xquartz:0

cambiarlo a :0 no ayuda

ejecutando desde el xterm

$ xauth list
jonatan.local/unix:0  MIT-MAGIC-COOKIE-1  f4f85682af36ae7d95cd3d244cb6beb2
192.168.1.9:0  MIT-MAGIC-COOKIE-1  f4f85682af36ae7d95cd3d244cb6beb2
jonatan.local:0  MIT-MAGIC-COOKIE-1  f4f85682af36ae7d95cd3d244cb6beb2

¿Alguna idea?

    
pregunta jm666 24.05.2013 - 12:46

2 respuestas

8

Necesita abrir XQuartz, vaya a X11 → Preferencias → Seguridad , hay dos casillas de verificación: desactive la primera, habilite la segundo. Reinicie XQuartz e intente de nuevo. También deberá definir la variable $DISPLAY de esta manera:

export DISPLAY=clienthost:0.0
    
respondido por el Andreu 17.10.2013 - 16:23
1

No estoy seguro de cómo podría suceder esto, pero de la fuente SSH de donde viene el mensaje de error:

/* Try to open a socket for the local X server. */
display = getenv("DISPLAY");
if (!display) {
    error("DISPLAY not set.");
    return -1;
}

Indica que, de hecho, ssh piensa que la variable no está configurada en absoluto (es decir, no tiene un formato incorrecto o algo así, pero falta).

No estoy seguro de si SSH cambia el contexto del usuario para que obtenga un entorno diferente. Puedes intentarlo

ssh -vvv ....

(varias "v") para obtener más resultados de depuración, quizás esto dé una pista en algún punto del inicio.

    
respondido por el Terminality 24.05.2013 - 13:25

Lea otras preguntas en las etiquetas