web-dev-qa-db-fra.com

SSH sur la machine hôte Ubuntu à partir d'un invité Ubuntu VirtualBox?

Je souhaite utiliser SSH sur mon ordinateur hôte (Kubuntu 12.04 64 bits) à partir d'un invité VirtualBox exécutant Ubuntu 12.04 32 bits. L'hôte dispose de la dernière VirtualBox issue du dépôt Ubuntu (4.1.12). L'invité était un préconfiguré VM que j'ai téléchargé à partir de VirtualBoxImages.com .

Le problème est que mon sshd_config n'autorise pas la connexion sauf avec PubkeyAuthentication et que je dois pouvoir utiliser PasswordAuthentication à partir de cet invité VirtualBox (pour des raisons qui sortent probablement du cadre de cette question).

mon fichier/etc/ssh/sshd_config doit probablement ressembler à ceci:

PasswordAuthentication no

Match Address 192.168.56.0/24
    PasswordAuthentication yes

Lorsque j'ajoute le bloc de correspondance à sshd_config, ssh se termine par un message comme celui-ci: init: ssh processus principal (7352) terminé avec le statut 255

Pourquoi? Qu'est-ce que je fais mal? J'ai utilisé des blocs de match presque identiques à ceux du passé, alors je suis perplexe.

Cette question est pertinente mais elle ne m'a pas aidé: Comment puis-je autoriser l'authentification par mot de passe SSH à partir de certaines adresses IP seulement?

Je peux deviner que mon problème pourrait être lié à l'interface réseau de VirtualBox ...

Dans VirtualBox, j'utilise "hôte uniquement" pour l'adaptateur 1 (avec le vboxnet0 par défaut). Avec cela, l'hôte a une interface vboxnet0 avec IP 192.168.56.1. C'est la raison de mon adresse IP du bloc de match ci-dessus.

(J'ai également configuré l'adaptateur 2 comme "NAT" afin que mon invité puisse disposer d'un accès Internet externe). Pour tester, je règle le mode Promiscuous sur "Autoriser tout". Je peux cingler des deux côtés. Et je peux SSH de l'hôte à l'invité (le sens opposé de la connexion que je veux).

L'hôte exécute denyhosts, mais lors des tests, j'ai arrêté ce service.

2
MountainX

J'ai trouvé la solution chez Unix et Linux StackExchange dans cette question: https://unix.stackexchange.com/questions/67334/openssh-how-to-end-a-match-block

La réponse dit:

Donc, les blocs Match doivent se trouver à la fin du fichier sshd_config.

Effectivement, cela a résolu tout pour moi.

En fait, cela a également permis de résoudre les problèmes liés au-delà de la portée de cette question. Mon problème associé était de faire fonctionner un androVM et de fonctionner pleinement dans VirtualBox. J'utilisais simplement le serveur Ubuntu à des fins de test pour cerner le problème. Sous androVM, je souhaitais utiliser ES File Manager sous Android pour accéder aux fichiers de la machine Host Ubuntu via SFTP. Maintenant ça marche.

2
MountainX

Mettez l’adaptateur réseau en mode ponté sur la boîte virtuelle, ce qui permettra à votre routeur de lui attribuer une adresse réseau. Vous pourrez ensuite utiliser ssh avec n’importe quel système du réseau.
utilisez simplement ifconfig pour obtenir l'adresse du serveur
Vous n'avez pas besoin d'un adaptateur nat
puis utilisez simplement ssh [email protected]

0