Eu gostaria de executar um terminal gnome remoto e fazer com que os aplicativos X11 aparecessem localmente.
Isso deve funcionar, mas não funciona ("Não é possível abrir a tela"):
ssh -Y user@host gnome-terminal
Não é isso que eu quero, pois só serve para uma guia:
gnome-terminal -e 'ssh -Y user@host'
Isso faz a coisa certa, mas requer etapas e janelas extras:
ssh -Y user@host
gnome-terminal &
Isso faz o que eu quero, mas com xterm:
ssh -Y user@host xterm
Por fim, gostaria de criar um alias para o primeiro, mas não funciona! O que estou perdendo?!
Obrigado =)
Responder1
O comando para tal é ssh [username@]servername -X
onde username@ é opcional, mas útil para instruir o SSH a usar o nome de usuário correto para solicitar apenas a senha, após o que toda a GUI de seus aplicativos favoritos aparecerá na sua área de trabalho em vez do área de trabalho remota.
Além disso, você pode querer usar SSHPass
(instalá-lo sudo apt-get install sshpass
em um terminal) para criarScripts SSHque permitirá que você se conecte ao seu servidor com uma única instrução como esta:
local.sh
#!/bin/bash
sshpass -p "PASSWORD" ssh username@server -p [PORT] -X
Digamos que seu servidor SSH tenha o 192.168.1.100
endereço IP e o usuário seja nomeado webuser
com uma 12345
senha, então o comando ficará assim:
sshpass -p "12345" ssh [email protected] -X
- Lembre-se que é importante que o
-X
caractere esteja em letras maiúsculas.
Depois de conceder as permissões de execução adequadas, sudo chmod +x local.sh
você pode invocá-lo em um terminal via./local.sh
Se desejar ir mais longe, você pode colocá-lo dentro do seu /usr/bin
diretório para que possa invocá-lo em um terminal ou inicializador diretamente local.sh
ou renomeá-lo para um comando de palavra única, comosshlocal
Agora. Depois de conectado ao servidor, você não precisa abrir um terminal. Todos os comandos são executados como se você estivesse em um terminal local do servidor.MAS:Se você deseja executar gnome-terminal
, uma GUI remota gnome-terminal
aparecerá em sua tela.
Experimente e informe se tiver sucesso.
Informação útil
-X Enables X11 forwarding. This can also be specified on a per-host
basis in a configuration file.
X11 forwarding should be enabled with caution. Users with the
ability to bypass file permissions on the remote host (for the
user's X authorization database) can access the local X11 display
through the forwarded connection. An attacker may then be able
to perform activities such as keystroke monitoring.
For this reason, X11 forwarding is subjected to X11 SECURITY
extension restrictions by default. Please refer to the ssh -Y
option and the ForwardX11Trusted directive in ssh_config(5) for
more information.
-Y Enables trusted X11 forwarding. Trusted X11 forwardings are not
subjected to the X11 SECURITY extension controls.
Fonte:http://manpages.ubuntu.com/manpages/precise/man1/ssh.1.html
Boa sorte!