Estou tentando executar um programa X no meu computador doméstico a partir do meu computador de trabalho. A configuração básica é esta:
Computador de trabalho Arch Linux -> Roteador SSH OpenBSD (em casa) -> Computador doméstico Arch Linux (com SSH)
Na verdade, nunca tentei fazer isso e não tenho certeza de como fazer. Como eu faria isso funcionar?
Quando eu apenas tento fazer
$(work computer) ssh -Y home-ip
..
$(home router) ssh -Y private-ip
Entro no último túnel "Falha na solicitação de encaminhamento X11 no canal 0"
Como faço isso corretamente?
EDIT: esqueci de ativar o encaminhamento de X no sshd do meu computador doméstico. Corrigi isso agora, mas nada parece acontecer quando executo um comando simples como xterm
. Ele simplesmente fica lá, provavelmente tentando exibir a janela do xterm no meu roteador e não no meu computador de trabalho
Responder1
Que tal encaminhar uma porta do seu computador de trabalho para a porta 22 do seu computador doméstico e depois ssh -Y
para essa porta local?
Por exemplo,
ssh -L 2222:private-ip:22 router-ip
ssh -Y localhost:2222
Responder2
O que você fez deve funcionar, mas você precisa ter o xauth
programa instalado no roteador para que ele possa criar uma chave de segurança para o display virtual X11 criado pelo SSH. Você precisa xauth
de qualquer máquina que você ssh -X
queira ssh -Y
, mesmo que você não execute nenhum aplicativo X lá, mas apenas use-o como um passo em direção a outro lugar.
Depois de se conectar ao computador doméstico, verifique sua $DISPLAY
variável. Deveria ser algo parecido localhost:10
. Caso contrário, volte ao shell do roteador e verifique $DISPLAY
lá.