Eu tenho os hosts A, B e C. No host AI, é possível acessar apenas pelo ssh B. No BI, é possível acessar C. Quero poder executar programas X11 em C e encaminhar a exibição para A.
Eu tentei isso:
A $ ssh -XB B $ ssh -XC C $ xclock Erro: Não é possível abrir a tela:
Mas isso não funciona.
Isso pode ser feito facilmente usando o encaminhamento de porta:
A porta localhost: 2022 é encaminhada para C: 22 via B SSH para C via localhost: 2022 Use X normalmente
fonte
Assumindo que o problema é que a máquina do meio não possui X, mas configurada para permitir o encaminhamento do X11, basta instalar o xauth.
em um sistema baseado em yum (fedora, redhat, centos):
em um sistema baseado em apt (debian, ubuntu):
fonte
yum
em um pi?Para versões mais recentes do opensshd, é necessário desativar
X11UseLocalhost
para que isso funcione.Você precisa fazer isso no host C
/etc/ssh/sshd_config
e reiniciar o sshd para que isso funcione:fonte
Você não pode encaminhar a exibição do X11 se o X11Forwarding estiver desativado em qualquer sshd que estiver usando.
man sshd_config:
Você precisa garantir que o X11Forwarding esteja ativado no destino e em todos os sshds intermediários que você estiver usando.
Apenas uma pequena dica: você deve tentar usar o VNC, o encaminhamento de tela X11 consome bastante largura de banda.
fonte
yes
".Se você costuma ir de A a C, pode configurar B como um proxy:
A:~/.ssh/config
:então é só:
fonte
Você já tentou com
O sinalizador -Y "Ativa o encaminhamento confiável do X11".
fonte