Pour une raison quelconque, la documentation sur ce processus sur Internet est tout à fait manquante ou obsolète. Fondamentalement, j'ai une machine virtuelle VMWare invitée dans VMWare Fusion (exécutant Ubuntu 10.10) et j'ai Mac OSX 10.6 comme hôte. Je veux pouvoir SSH du Mac à la machine virtuelle Linux. Comment puis-je configurer les choses pour que cela soit possible?
16
Réponses:
absolument - c'est juste une question d'utiliser une interface locale uniquement, ou pontée, et de déterminer l'adresse IP du système exécutant le serveur ssh (en utilisant la commande ifconfig). installez openssh-server sur la VM, utilisez votre client ssh, et c'est fait.
Si vous utilisez une interface NAT, cela peut être plus compliqué et ce n'est généralement pas recommandé.
la source
service sshd start
ou si vous voulez le démarrer au démarragechkconfig sshd on
En fait, il y a tout un tas de bonnes raisons d'utiliser NAT avec vos machines virtuelles, plutôt qu'une interface pontée. tout le temps, donc j'ai pensé qu'il valait la peine d'ajouter)
Voici quelques raisons d'utiliser NAT:
Quoi qu'il en soit, pour mon cas (VMWare Workstation 10, hôte Linux, OS X Guest), et toute personne qui tombe dessus, c'est l'aperçu de ce qui a fonctionné pour moi. Mis à part les gaufres et les hypothèses, il n'y a vraiment que 3 étapes principales.
Donc, l'idée est quelque chose comme: "Autoriser les choses sur le réseau local de mon hôte (par exemple 10.1.1.0/24, ou 192.168.1.0/24) à se connecter au port 22222 sur l'hôte, que nous transmettrons au port 22 d'un invité spécifique ". Il doit bien sûr s'agir d'un invité spécifique (cela rend la configuration de vos adresses IP encore plus utile, et vous pouvez les modifier en un seul endroit sans ouvrir chaque machine virtuelle), tout comme le faire via votre routeur Internet pour autoriser les jeux. à travers etc.
Ensuite, après avoir décidé quels services, vous devrez
autorisez les connexions sur votre machine hôte au port "externe" via iptables / pare-feu. Le port 22 sera peut-être déjà utilisé sur l'hôte par sshd, vous pouvez donc utiliser quelque chose comme 22222. Dans ce cas, ajoutez quelque chose comme ceci à /etc/ufw/before.rules (et redémarrez ufw)
donnez à votre VM (s) une IP réservée dans la configuration DHCP principale de VMware ( facultatif, mais plus facile à utiliser si vous voulez le "trou" à partir de l'hôte ), en ajoutant quelque chose comme ça au bas de / etc / vmware / vmnet8 / dhcpd / dhcpd.conf
Dites à VMWare de transférer les connexions de 22222 à guest: 22 en l'ajoutant à la section [entranttcp] de /etc/vmware/vmnet8/nat/nat.conf, puis redémarrez le (s) service (s) vmware (voir la remarque ci-dessous)
Vous devrez peut-être également autoriser les connexions du port 22 dans votre invité, selon ce qu'il est / s'il possède un pare-feu propre. Dans ce cas d'invité OS X, c'était pour activer la "connexion à distance" via les paramètres de partage, sur linux, cela pourrait être via ufw comme sur l'hôte ci-dessus, etc.
Donc, une fois que tout est fait, vous pourriez être sur votre ordinateur portable ou une autre machine sur le réseau local, ssh vers votre station de travail (hôte vmware) sur 22222, et vous seriez éloigné de l'invité auquel vous lui avez dit de vous transmettre. Comme mentionné ci-dessus, si vous dites également vouloir pouvoir se connecter au serveur postgres sur l'invité (ou le serveur vnc, qui est souvent non chiffré), vous pouvez créer un tunnel dans la même commande (au lieu de l'ajouter également à la conf dhcp). Par exemple
et vous seriez connecté à l'invité via l'IP forward dans vmware, et pourriez pointer votre outil pgadmin3 vers localhost: 54320 (non privé) sur votre ordinateur portable, et votre trafic sur le réseau serait crypté. (Notez que «localhost» y est déjà transmis à l'invité)
Remarques
VMware définit un itinéraire pour que l'hôte puisse contacter directement l'invité NAT, IE depuis la console de l'hôte, je peux ping / ssh, etc. l'invité NAT 192.168.198.10 (défini ci-dessus) directement
la source
ipfw
à un moment donné. J'ai eu une recherche rapide pour vous et je n'ai pas vu beaucoup de messages utiles, mais cela mentionnepfctl
, que je vois dans un autre post, semble remplacer le pfctl dans OS X 10.10. Je ne peux pas le tester désolé, mais j'espère que cela aide un peuPour simplifier les choses:
ifconfig
.ssh user@ip
.Je suppose que vous disposez d'un service SSH installé et en cours d'exécution.
la source
Au lieu de connaître l'IP vers SSH, j'ai configuré Avahi sur mes invités Linux pour qu'il diffuse un nom d'hôte dynamique, consultez ma réponse ici: /superuser//a/710233/242604
J'espère que cela t'aides!
la source
Vous pouvez utiliser une interface réseau en pont facilitant la connexion à Internet et une connexion SSH simple.
la source