虚拟盒和 SSH

虚拟盒和 SSH

我有一个场外生产服务器和一个作为笔记本电脑上的虚拟机的开发服务器。

我的问题是,在启动映像之前如何设置 virtualbox 的网络,以便可以在两者之间进行 SSH?

(Google 上有很多关于此主题的搜索,但通常人们会问如何在主机和客户端之间进行 ssh 连接)

答案1

将网络适配器设置为桥接模式(虚拟盒设置)。就这样。

如果您希望能够从生产服务器访问您的开发服务器,您需要将端口 22 转发到您的开发计算机/虚拟机箱 IP。

要访问生产服务器上的文件系统,您可以使用 scp 来回复制文件。但我不推荐这样做,因为它很麻烦。

我会向您推荐 sshfs。

sshfs 的工作方式是,它将远程文件系统挂载到您的本地文件系统中。然后您只需在那里打开、编辑、保存、复制/粘贴文件,sshfs 会在后台执行 scp 数据传输操作。

命令:

sshfs [email protected]:/ /path/to/folder/where/you/want/to/mount/the/remote/filesystem

例子:

sshfs [email protected]:/ /mnt/sshfs

PS:我会使用 ssh,不是密码。密码强度太弱。

要生成密钥:

ssh-keygen -t rsa -b 4096

这将生成 id_rsa 和 id_rsa.pub
id_rsa.pub 你将其回显到目标机器上 ssh 用户主目录中的 .ssh 文件夹中的 authorized_keys 文件中
例如:

copy id_rsa.pub file to the target computer
cat ./id_rsa.pub >> /root/.ssh/authorized_keys

答案2

我找到了一种通过 ssh 进入开发服务器的方法,但它不是使用命令行,所以我不知道这是否算作答案!

在我的开发(客户)操作系统 Cent OS 中,我可以通过以下方式连接到广阔世界中的生产服务器:

Places > Connect to Server

并像平常一样填写详细信息。(奇怪的是,当您选择 ssh 时,它仍然会询问您想要使用的端口!?!)

另外。我不知道这是否有区别,但我在启动 Cent OS 映像之前在主机中输入了以下内容:

VBoxManage modifyvm "Cent OS 5.5" --natpf1 "guestssh,tcp,,22,,22"

推荐自这里

相关内容