Problemi di Mountain Lion ssh -X


8

Come eseguire l'inoltro di Mountain Lion X11 tramite SSH?

Esempio:

ssh -X some@example.com xterm

mio / etc / sshd_config ha

X11Forwarding yes
#X11DisplayOffset 10
X11UseLocalhost yes

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

Sshd riavviato con

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

(e dalle Preferenze -> Anche condivisione)

Iniziato XQuatrz, e dal xterm corro

ssh -v -X mrp@192.168.1.17 xterm        #this part not works :)

ottenuto il prossimo:

debug1: Authentication succeeded (keyboard-interactive).
Authenticated to 192.168.1.17 ([192.168.1.17]:22).
debug1: channel 0: new [client-session]
debug1: Requesting no-more-sessions@openssh.com
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 eow@openssh.com 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

dal xterm

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

cambiarlo in :0non aiuta

correndo dal 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

Qualche idea?


Potresti chiarire quale parte non funziona per te?
pudica

@demure Il mio inglese non è abbastanza buono, speravo che l'errore meesage fosse abbastanza chiaro. Ma ok, ha aggiunto un commento alla domanda, per mostrare esattamente cosa non funziona. O più preciso, non funziona il tunneling del protocollo X via ssh per qualche strana ragione. Forse xauth. Grazie per l'interesse :)
jm666

Risposte:


8

Devi aprire XQuartz, andare su X11PreferenzeSicurezza , ci sono due caselle di controllo: disabilita la prima, abilita la seconda. Riavvia XQuartz e riprova. Dovrai anche definire la $DISPLAYvariabile in questo modo:

export DISPLAY=clienthost:0.0

Nel frattempo ho scoperto che il problema era dall'altra parte, non nel mio OS X.; Grazie comunque +1.
jm666,

@ jm666, Andreu Ho lo stesso problema e questa soluzione non ha funzionato per me, # jm66 potresti condividere la tua esperienza nel risolvere questo problema.
Math 13,

Che cosa è clienthost?
Jonathan,

1

Non sono sicuro di come ciò possa accadere, ma dall'origine SSH in cui arriva il messaggio di errore:

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

Indica che effettivamente ssh pensa che la variabile non sia affatto impostata (cioè non malformata o qualcosa del genere, ma mancante).

Non sono sicuro che SSH cambi il contesto dell'utente in modo da ottenere un ambiente diverso. Puoi provare

ssh -vvv ....

(più "v") per ottenere più output di debug, forse questo dà un suggerimento da qualche parte all'avvio.


wow - buona idea il multiplo vvv - andando a controllare. Grazie :)
jm666,

ok, spero che sia d'aiuto
Terminalità,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.