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.
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 fichiersshd_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.
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]