Tenho 4 dispositivos Raspberry diferentes que conectei a 4 monitores diferentes. O técnico anterior da minha empresa instalou e habilitou o servidor vnc para todos eles, para que ele pudesse fazer a área de trabalho remota para eles e executar apenas um comando.
rdesktop -f -d -k en-us -d ourdomain -u tv1 10.xxx.xxx.xx1
Ele estava apenas se conectando a cada um para executar o comando acima, mas é claro com usuários e servidores de terminal diferentes. Eu estava procurando uma maneira mais conveniente de combinar todos os itens acima em minha caixa Fedora com o poder do sshpass e do ssh. Então primeiro eu tentei
sshpass -p 'somepass' ssh [email protected]
e então a partir da sessão eu corro
rdesktop -f -d -k en-us -d ourdomain -u tv1 10.xxx.xxx.xx1
mas recebi um erro que dizia "falha ao abrir a porta de exibição". Agora sei que os resultados deste comando ou de qualquer outro comando seriam exibidos em meu terminal. Então tentei algumas alternâncias de comando ssh, mas o resultado foi ver o rdsektop na minha tela ou o erro acima.
sshpass -p 'somepass' ssh [email protected] -t rdesktop -f -d -k en-us -d ourdomain -u tv1 10.xxx.xxx.xx1
ou
sshpass -p 'somepass' ssh [email protected] -t -X rdesktop -f -d -k en-us -d ourdomain -u tv1 10.xxx.xxx.xx1
O que pretendo fazer aqui é executar o comando rdesktop na máquina remota e mostrar na tela da TV a sessão que criei antes. Em poucas palavras. Ignore o login do vnc e faça tudo a partir do ssh. Existe alguma maneira? Sei que em algum lugar estou errado, mas não consigo ver onde estou errado.
Responder1
falha ao abrir a porta de exibição
Esse comando me indica que você provavelmente não tem o encaminhamento do X11 acontecendo automaticamente. Mas parece que você está tentando executar um aplicativo X11 a partir de um sistema remoto.
Se você planeja executar o rdesktop a partir do sistema remoto, então você precisa do servidor SSH para suportar o encaminhamento X11, você precisa do xauth
pacote instalado no remoto. Você precisa ajustar a configuração do cliente ssh /etc/ssh/ssh_config
ou ~/.ssh/config
passar -X
para a ssh
linha de comando para ativar o encaminhamento X11 do cliente.
Porém , executar rdesktop
a partir da máquina remota pode não ser a melhor opção. Você basicamente tem toda a sobrecarga de uma sessão X11, além de toda a sobrecarga de uma sessão RDP. Talvez seja melhor usar os recursos de encaminhamento de porta do SSH e, em seguida, executar um cliente rdesktop/freerdp local. Dessa forma, você pode evitar a lentidão típica das sessões remotas do X11.
Claro, na última observação, sugiro fortemente que você reconsidere o uso do sshpass. Se possível, você deve usar a autenticação baseada em chave.