É possível configurar o navegador da máquina host como navegador padrão do sistema convidado

8

Então, eu quero ser redirecionado para o navegador do sistema host quando clicar em algum link no sistema convidado.

Observe que não quero ter nenhum navegador no sistema convidado.

Anfitrião: Windows 7

Convidado: GNU / Linux e KDE

Caso de uso: tenho 2 monitores, um é para Linux (Executando no VirtualBox), mas quero ter um navegador para ambos. Quando clico em algum link no cliente Linux IRC, quero que esse link seja aberto no navegador em execução no sistema host .

cnd
fonte
11
Qual é a sua pergunta real, pois parece muito ampla?
Dave
Esclarecimento: Você está dizendo: “Quando estou no navegador da Web Guest Gnu / Linux e clico em um link específico, minimizo o convidado, maximizo o navegador da web host e abro a página específica”. Ou "Quando eu estiver no navegador Guest Gnu / Linux e clicar em um link específico, abra uma página hospedada no host". Ou como procurar arquivos de host de convidados, ou qualquer outra coisa.
ctrl-alt-delor 12/09/12
não no navegador da Web convidado, o kde possui o aplicativo de navegador padrão, quero torná-lo o navegador do host.
CND
Você vai ter que me dizer o que quer, não sei. Então 1) O KDE possui uma ferramenta para definir o navegador da web padrão. isso está correto? 2) Você deseja que o host use algum navegador, conforme configurado no guest kde. isso está correto?
Ctrl-alt-delor 12/09/12
1) Sim, o KDE é o principal DE, portanto, configurações -> aplicativos padrão -> navegador da web 2) não, eu quero que os links sejam abertos no navegador do host quando eu quiser abrir algum link do convidado.
CND

Respostas:

5

Outra resposta devido a alguns esclarecimentos abaixo.

Como você disse, você pode criar um pequeno script e configurá-lo como seu navegador padrão nas configurações do KDE. Para tornar essas coisas da maneira mais fácil possível, você deve simplesmente enviar o comando firefox para sua máquina host por SSH. Aqui está um link que descreve como configurar um servidor SSH no Windows 7, http://codeoptimism.com/2010/10/08/SSH-on-Windows-7-the-full-awesome-implementation

Então o script seria simples assim (não se esqueça de permitir a execução):

#!/bin/sh
ssh [email protected] '/c/Program\ Files/Mozilla\ Firefox/firefox.exe $1'

Execute este comando antes de usá-lo como seu navegador da web padrão, pois você precisará adicionar a máquina à sua lista de hosts conhecidos. Você também precisará configurar uma autenticação de chave pública, para que não solicite a senha.

O KDE4 shoud permite especificar o caminho do script a ser executado sempre que você clicar em um link.

Axel Isouard
fonte
O que você acha que talvez seja possível usando a API do Virtualbox? A adição de outro serviço (ssh) é uma sobrecarga)
cnd 12/12/12
Acabei de dar uma olhada, essa API seria útil apenas no lado do hardware, como controle de mouse, teclado, bios, ... Você pode vincular os eventos no mouse com ele, mas retornará apenas o coordenadas relativas ou absolutas do mouse.
Axel Isouard
Eu ainda duvido disso, mas talvez você esteja certo e o ssh seja a única maneira de executar algo no host, mas isso é triste, rodar o servidor ssh na máquina host não é realmente o que eu queria, mas essa é a solução e responde totalmente à pergunta. Talvez eu perceba isso mais tarde, obrigado.
CND
1

Não existem soluções populares online para isso, mas acho que você pode tentar criar dois plug-ins (com Greasemonkey, NPAPI ou FireBreath), e seria um pouco mais difícil, já que sua máquina host é o Windows 7, como eu não sei. qualquer maneira de executar um comando remotamente, como usar SSH.

  • Um para o seu sistema host, que escuta uma porta para conexões de entrada e solicita a navegação através de um link no qual você clicará no navegador do sistema convidado.

  • Outro para o seu sistema convidado, que se conectará ao seu ouvinte e enviará um pacote contendo o link a ser percorrido.

Se você se sentir bem com esta solução e pronto para começar, sugiro que você pergunte ao StackOverflow se precisar de ajuda ao fazê-lo.

Boa sorte.

Axel Isouard
fonte
O Virtualbox não é ssh ... Preciso conectar quando o link está chegando ao navegador e redirecioná-lo para o VirtualBox de alguma forma - então existem 2 lados diferentes da questão. Talvez eu pergunte sobre isso no Stackoverflow porque é sobre API VBox e scripts?
CND
Você não deseja ter um navegador em sua máquina convidada, gostaria de clicar nos links que aparecem nos terminais ou em outros aplicativos?
Axel Isouard
sim, por exemplo, no meu aplicativo cliente de IRC.
CND
Tudo bem, isso dependeria completamente do aplicativo de IRC, você terá que fazer o mesmo que eu disse para todo tipo de aplicativo que você gostaria de ser redirecionado, eu realmente não sei como detectar um clique do mouse em um link de maneira genérica.
Axel Isouard 12/09/12
não há necessidade de detectar um clique do mouse ou torná-lo para qualquer aplicativo que eu queira substituir o aplicativo padrão do navegador da web por algum tipo de script que me redirecionará (de alguma forma) para o host.
CND
0

Em um sistema, crie um daemon que escute solicitações e abra URLs em um navegador.
No outro sistema, defina seu navegador padrão como algo que chama essa solicitação.


Portanto, a primeira parte disso é um servidor HTTP que atende às solicitações na máquina em que você deseja abrir o navegador. Em uma solicitação recebida, ele abre (em um navegador) o URL fornecido como argumento de uma solicitação POST.

Escolha um:

Você deve adicionar este script à inicialização, ele deve ser executado em segundo plano.


A segunda parte é algo que chama a solicitação.

Escolha um:

Você deve designar esse script como seu navegador padrão.
No KDE: Aplicativos Padrão → Navegador da Web

Também pode ser usado como uma ferramenta de linha de comando: ./open_url.sh 'http://google.com/'


Os scripts Python devem funcionar em todos os principais sistemas com qualquer versão razoavelmente recente do Python (eu suspeito que 2.6+, 3.1+).

No Windows, se você não deseja que um script Python seja executado em uma janela de comando, altere sua extensão para .pyw. Use o Gerenciador de tarefas se você quiser pará-lo (procure por pythonw.exe ).

O adaptador de rede VirtualBox deve ser definido como NAT (configuração padrão). Mais sobre o endereço IP aqui . A escolha da porta é arbitrária, fique à vontade para alterar 1337 para outra em qualquer lugar.

O servidor é seguro porque escuta apenas as conexões do host local. VirtualBox faz funcionar de alguma forma. Mas se você deseja que isso funcione remotamente, especifique o endereço IP de escuta como '0.0.0.0'ou em ''vez de 'localhost'.

Oleh Prypin
fonte