Estou usando o Ubuntu como sistema operacional para desktop e servidor. Quando estou logado no servidor via ssh
on terminal
e tenho que visualizar uma página da web (host local) no servidor, uso w3m ( w3m localhost
).
Infelizmente, o w3m não é tão fácil de manusear, pois a página possui alguns menus grandes e usa jQuery. Por isso, estou pensando se é possível usar um navegador na minha área de trabalho para conectar-se ao servidor via SSH com um navegador real (Firefox ou Chrome).
Basicamente, seria necessário conectar-se com um navegador na minha área de trabalho ao servidor via SSH com username
e password
, e abrir nesse servidor localhost
.
Isso é possível por padrão ou existem complementos para o Firefox / Chrome? Eu preferiria o Firefox.
ssh
browser
remote-access
w3m
Cova
fonte
fonte
Respostas:
Use o encaminhamento de porta ssh.
Conecte-se ao servidor remoto com algo parecido com isto:
Agora, aponte seu navegador local para localhost: 8080. Ele deve ser encaminhado para localhost: 80 no servidor remoto.
fonte
PARTE 1
Faça um proxy de meias com ssh!
Agora abra suas preferências do Firefox, vá para Avançado> Rede> Configurações. Selecione Configuração manual do proxy. Coloque o host local para o host SOCKS, coloque 9999 para a porta. Teste-o em http://whatismyip.org ou em algum site similar.
Como você disse que está tentando acessar uma página da Web no localhost (em relação ao seu servidor), não convém excluir o localhost e o 127.0.0.1 do uso do proxy. Claro, você pode apenas usar o ip local do servidor.
Se você não gostar da minha explicação, esses links movimentaram minha memória enquanto escrevia isso:
http://linux.die.net/man/1/ssh
http://embraceubuntu.com/2006/12/08/ssh-tunnel-socks-proxy-forwarding-secure-browsing/
https://calomel.org/firefox_ssh_proxy.html
PARTE 2
O erro que você recebeu não
channel 3: open failed: connect failed: Connection refused
tem absolutamente nada a ver com o ssh. Aparentemente, você está tentando acessar alguma coisa do mysql. Isso tem um desafio extra, porque o mysql bloqueia o acesso dos túneis ssh por padrão. Eu não faço mysql, então não sei do que estou falando pelo resto disso. Estou apenas citando os bits relevantes do link no final, que você deve ler.Abra /etc/mysql/my.cnf e procure a seção [mysqld]. Se você vir uma linha "pular rede", comente-a. Adicione "bind-address = 127.0.0.1" (sem as aspas, é claro).
http://www.debuntu.org/port-forwarding-and-channel-3-open-failed-connect-failed-Connection-refused
Parte 3
A solução de Javier
ssh -L 8080:localhost:80 user@remoteserver
é fantástica se você só precisa acessar o único local. Ele permite que você acesse o host local e deixa o resto da sua Internet em paz. Minha solução com o ssh -D vai mais longe e, na verdade, direciona todas as suas solicitações HTTP para o servidor remoto. Obviamente você pode não querer isso. Mas achei útil quando eu queria acesso http a todas as máquinas em uma rede ou quando não queria que minhas solicitações http passassem pela rede na qual estou conectado (ou seja, serviços bancários on-line na starbucks. Todo o meu tráfego vai através do túnel ssh até minha internet doméstica.)fonte
channel 3: open failed: connect failed: Connection refused
. Não tive tempo de procurar, mas talvez você saiba o que poderia ser?-D
opção Esse é o motivo pelo qual não funcionou e não funcionará, pois não consigo conectar-me como root ao servidor (por motivos de segurança).Você pode usar o encaminhamento do X através do SSH para que qualquer aplicativo X que você executa no servidor apareça no seu computador pessoal.
ssh -X myserver
,.fonte