Use o navegador real em vez de w3m nas conexões SSH

9

Estou usando o Ubuntu como sistema operacional e servidor. Quando eu estou logado no servidor via ssh on terminal e tenho que ver uma página web (localhost) no servidor eu uso w3m ( w3m localhost ).

Infelizmente, o w3m não é tão fácil de lidar, já que a página tem alguns menus grandes e usa o jQuery. Então, eu estou querendo saber se é possível usar um navegador no meu desktop para se conectar 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 por SSH com username e password e abrir nesse servidor localhost .

Isso é possível por padrão ou há algum complemento para o Firefox / Chrome? Eu preferiria o Firefox.

    
por Pit 26.01.2011 / 08:46

3 respostas

14

Use o encaminhamento de porta ssh.

Conecte-se ao servidor remoto com algo assim:

ssh -L 8080:localhost:80 user@remoteserver

Agora, aponte seu navegador local para localhost: 8080. Deve ser encaminhado para localhost: 80 no servidor remoto.

    
por Javier Rivera 26.01.2011 / 10:49
6

PARTE 1

Crie um proxy socks com ssh!

ssh -D 9999 user@remoteserver

Agora abra suas preferências do Firefox, vá para Avançado > Rede > Definições. Selecione Configuração de proxy manual. Coloque localhost para o host SOCKS, coloque 9999 para a porta. Teste-o indo para o link ou para algum site semelhante.

Como você disse que está tentando acessar uma página da Web no host local (relativo ao seu servidor), talvez não queira excluir localhost e 127.0.0.1 de usar o proxy. Claro, você poderia apenas usar o ip local do servidor ..

Se você não gosta da minha explicação, esses links movimentaram minha memória enquanto escrevia:

link

link

link

PARTE 2

O erro que você obteve, channel 3: open failed: connect failed: Connection refused não tem absolutamente nada a ver com o ssh. Aparentemente você está tentando acessar alguma coisa do mysql. Isto 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 eu 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 "skip-networking", comente. Adicione "bind-address = 127.0.0.1" (sem as aspas, é claro).

link

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 deixe o restante da sua internet em paz. Minha solução com ssh -D vai além e direcionará todos os seus pedidos de http para o servidor remoto. Obviamente você pode não querer isso. Mas eu achei útil quando eu queria acesso http a todas as máquinas em uma rede, ou quando eu não queria que minhas solicitações http passassem pela rede em que estou conectado (por exemplo, serviços bancários on-line na Starbucks. Todo o meu tráfego vai através do túnel ssh para minha internet em casa.)

    
por djeikyb 26.01.2011 / 11:33
2

Você pode usar o encaminhamento do X por meio do SSH para que qualquer aplicativo X que você execute no servidor seja exibido em seu computador pessoal.

  1. Ao conectar-se com o SSH ao servidor, adicione o sinalizador -X. Por exemplo, ssh -X myserver .
  2. Instale um navegador da GUI no servidor e simplesmente execute-o. A saída aparecerá no seu computador pessoal através do encaminhamento do X e da conexão segura do SSH.
por user4124 26.01.2011 / 10:09