Est-il possible de configurer le navigateur de la machine hôte comme navigateur du système invité par défaut

8

Je souhaite donc être redirigé vers mon navigateur de système hôte lorsque je clique sur un lien dans le système invité.

Notez que je ne veux pas du tout avoir de navigateur sur le système invité.

Hôte: Windows 7

Invité: GNU / Linux & KDE

Cas d'utilisation: j'ai 2 moniteurs, l'un est pour Linux (en cours d'exécution dans VirtualBox) mais je veux avoir un navigateur pour les deux, donc quand je clique sur un lien dans le client IRC Linux, je veux que ce lien soit ouvert dans le navigateur en cours d'exécution sur le système hôte .

cnd
la source
1
Quelle est votre véritable question car elle semble très large?
Dave
Clarification: Êtes-vous en train de dire: «Lorsque je suis dans le navigateur Web invité Gnu / Linux, et que je clique sur un lien spécifique, je minimise l'invité, maximise le navigateur Web hôte et ouvre la page spécifique». Ou "Lorsque je suis dans le navigateur Web Guest Gnu / Linux et que je clique sur un lien spécifique, j'ouvre une page hébergée sur l'hôte." Ou comment parcourir les fichiers hôtes depuis un invité, ou autre chose.
ctrl-alt-delor
pas dans le navigateur Web invité, kde a une application de navigateur par défaut, je veux en faire le navigateur de l'hôte.
2012
Tu vas devoir me dire ce que tu veux, je ne peux pas le deviner. Donc 1) KDE dispose d'un outil pour définir le navigateur Web par défaut. Est-ce exact? 2) Vous souhaitez que l'hôte utilise le navigateur, tel qu'il est configuré dans le kde invité. Est-ce exact?
ctrl-alt-delor
1) Oui, KDE est DE majeur, donc paramètres -> applications par défaut -> navigateur Web 2) non, je veux que les liens soient ouverts dans le navigateur Web de l'hôte lorsque je veux ouvrir un lien depuis l'invité.
2012

Réponses:

5

Une autre réponse en raison des clarifications ci-dessous.

Comme vous l'avez dit, vous pouvez créer un petit script et le définir comme navigateur par défaut dans vos paramètres KDE. Pour rendre ces choses de la manière la plus simple possible, vous devez simplement envoyer la commande firefox à votre machine hôte via SSH. Voici un lien décrivant comment configurer un serveur SSH sur Windows 7, http://codeoptimism.com/2010/10/08/SSH-on-Windows-7-the-full-awesome-implementation

Le script serait alors aussi simple que cela (n'oubliez pas d'autoriser l'exécution):

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

Exécutez cette commande avant de l'utiliser comme navigateur Web par défaut, car vous devrez ajouter la machine dans votre liste d'hôtes connue. Vous devrez également configurer une authentification par clé publique, afin qu'elle n'invite pas le mot de passe.

KDE4 devrait vous permettre de spécifier le chemin du script à exécuter chaque fois que vous cliquez sur un lien.

Axel Isouard
la source
Que pensez-vous que cela pourrait être possible en utilisant l'API Virtualbox? L'ajout d'un autre service (ssh) est une surcharge)
cnd
Je viens de l'examiner, cette API ne serait utile que du côté matériel, comme le contrôle de la souris, du clavier, du bios, ... Vous pouvez lier les événements sur la souris avec elle, mais elle ne retournerait que le coordonnées relatives ou absolues de la souris.
Axel Isouard
J'en doute encore, mais vous avez peut-être raison et ssh est le seul moyen d'exécuter quelque chose sur l'hôte, mais c'est triste, exécuter le serveur ssh sur la machine hôte n'est pas vraiment ce que je voulais, mais c'est une solution et pose pleinement la question. Peut-être que je m'en rendrai compte un peu plus tard, merci.
2012 à 9h36
1

Il n'y a pas de solutions populaires en ligne pour cela, mais je pense que vous pouvez essayer de créer deux plugins (avec Greasemonkey, NPAPI ou FireBreath), et ce serait un peu plus difficile puisque votre machine hôte est Windows 7 comme je ne sais pas n'importe quelle façon d'exécuter une commande à distance comme en utilisant SSH.

  • Un pour votre système hôte, qui écoute un port pour les connexions entrantes, et obtient l'ordre de naviguer à travers un lien sur lequel vous cliquerez dans le navigateur Web de votre système invité.

  • Un autre pour votre système invité, qui se connectera à votre auditeur et enverra un paquet contenant le lien à parcourir.

Si vous vous sentez bien avec cette solution et prêt à commencer, je vous suggère de demander à StackOverflow si vous avez besoin d'aide pour le faire.

Bonne chance.

Axel Isouard
la source
Virtualbox n'est pas ssh ... J'ai besoin de me connecter lorsque le lien arrive vers le navigateur, puis de le rediriger vers VirtualBox d'une manière ou d'une autre - il y a donc 2 côtés différents de la question. Peut-être que je l'interroge sur Stackoverflow parce qu'il s'agit de l'API VBox et des scripts?
2012
Vous ne voulez pas avoir de navigateur sur votre machine invitée, souhaitez-vous cliquer sur les liens apparaissant dans les terminaux ou autres applications?
Axel Isouard
oui, par exemple dans mon application client IRC.
2012
D'accord, cela dépendrait complètement de l'application IRC, vous devrez faire la même chose que je l'ai dit pour chaque type d'application que vous souhaitez rediriger, je ne sais vraiment pas comment détecter un clic de souris sur un lien de manière générique.
Axel Isouard
pas besoin de détecter un clic de souris ou de le faire pour n'importe quelle application Je veux remplacer l'application de navigateur Web par défaut par une sorte de script qui me redirigera (en quelque sorte) vers l'hôte.
2012
0

Sur un système, créez un démon qui écoute les demandes et ouvre les URL dans un navigateur.
Sur l'autre système, définissez votre navigateur par défaut sur quelque chose qui appelle une telle demande.


La première partie est donc un serveur HTTP qui écoute les requêtes sur la machine sur laquelle vous souhaitez ouvrir le navigateur. Sur une requête entrante, il ouvre (dans un navigateur) l'URL donnée comme argument d'une requête POST.

Choisissez-en un:

Vous devez ajouter ce script au démarrage, il est censé s'exécuter en arrière-plan.


La deuxième partie est quelque chose qui invoque la demande.

Choisissez-en un:

Vous devez désigner ce script comme navigateur par défaut.
Dans KDE: Applications par défaut → Navigateur Web

Il peut également être utilisé comme un outil de ligne de commande: ./open_url.sh 'http://google.com/'


Les scripts Python devraient fonctionner sur tous les principaux systèmes avec n'importe quelle version Python raisonnablement récente (je soupçonne 2.6+, 3.1+).

Sous Windows, si vous ne voulez pas qu'un script Python s'exécute dans une fenêtre de commande, vous devez changer son extension en .pyw. Utilisez le Gestionnaire des tâches si vous souhaitez l'arrêter (recherchez pythonw.exe ).

L'adaptateur réseau VirtualBox doit être défini sur NAT (paramètre par défaut). Plus d'informations sur l'adresse IP ici . Le choix du port est arbitraire, n'hésitez pas à changer 1337 en quelque chose d'autre partout.

Le serveur est sécurisé car il écoute uniquement les connexions de l'hôte local. VirtualBox le fait fonctionner d'une manière ou d'une autre. Mais si vous souhaitez que cela fonctionne à distance, spécifiez l'adresse IP d'écoute comme '0.0.0.0'ou ''au lieu de 'localhost'.

Oleh Prypin
la source