通过 SSH 连接到通过命令行配置的 VirtualBox VM

通过 SSH 连接到通过命令行配置的 VirtualBox VM

我正在尝试在我的 Ubuntu 笔记本电脑上设置虚拟机集群,以便测试一些分布式代码。我的目标是执行一个 shell 脚本来启动配置,并在测试完成后执行另一个脚本来关闭配置。

我需要能够通过 SSH 进入所有虚拟机来安装软件,并且我希望通过 LAN 进行安装。我不想使用 GUI 来执行此操作,因为我希望该过程自动化。我首先启动一台虚拟机,然后尝试使用以下脚本转发端口 2222:

NAMES=(node1)
for i in ${NAMES[@]}; do
    vboxmanage createvm --name ${i} --ostype "Ubuntu_64" --register
    vboxmanage modifyvm ${i} --nic1 nat --nic2 hostonly --hostonlyadapter2 vboxnet0 --memory 1024 --natpf1 "openssh,tcp,,2222,,22"
    vboxheadless -s ${i}
done

运行后ifconfig我得到以下信息vboxnet0

vboxnet0  Link encap:Ethernet  HWaddr 0a:00:27:00:00:00  
      inet addr:192.168.56.1  Bcast:192.168.56.255  Mask:255.255.255.0
      inet6 addr: fe80::800:27ff:fe00:0/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:0 errors:0 dropped:0 overruns:0 frame:0
      TX packets:113 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:0 (0.0 B)  TX bytes:19687 (19.6 KB)

但是当我运行时出现以下错误:ssh -p 2222 [email protected]

ssh_exchange_identification: read: Connection reset by peer

也许我处理这个问题的方式不正确(我不太精通网络),但无论如何我都希望得到一些见解。

相关内容