SSH连接本地Linux虚拟机是一项非常基础而且重要的技能。下面我将为您讲解如何连接本地Linux虚拟机。
确认虚拟机网络设置
首先需要在虚拟机设置中确认虚拟机的网络设置是否为桥接模式(Bridged mode),这将使得虚拟机获得自己的IP地址。
检查本地Linux虚拟机IP地址
接下来我们需要查看虚拟机的IP地址。这可以通过在虚拟机中运行ifconfig
命令来完成。例如:
$ ifconfig
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::a00:27ff:fe00:2a9b prefixlen 64 scopeid 0x20<link>
ether 08:00:27:00:2a:9b txqueuelen 1000 (Ethernet)
RX packets 23646 bytes 19754528 (18.8 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 12179 bytes 1324966 (1.2 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
这里可以看到,我的虚拟机获取到了它自己的IP地址是192.168.1.100。
端口转发
SSH默认使用22端口,所以我们需要在虚拟机设置中开通22端口,并将这个端口转发到本地宿主机上。端口转发功能在VirtualBox虚拟机中非常方便实现,只需运行以下命令即可:
$ vboxmanage modifyvm "Name Of Your VM" --natpf1 "ssh,tcp,,22,,22"
其中,Name Of Your VM
代表你的虚拟机名称。
连接本地Linux虚拟机
完成上述准备工作后,我们可以在宿主机上打开终端,使用以下命令连接本地Linux虚拟机:
$ ssh user@192.168.1.100
其中,user
表示你在Linux虚拟机中的用户名。运行成功后,将会提示你输入密码,输入正确密码后,你就可以进入Linux虚拟机的终端了。
示例1
虚拟机的IP地址为192.168.10.100,用户名为ubuntu。我们需要连接虚拟机上运行的Web服务并查看结果。在宿主机的终端输入以下命令:
$ ssh ubuntu@192.168.10.100 -L 8080:localhost:80
该命令将会使用SSH连接到虚拟机上,并将本地的8080端口转发到虚拟机上的80端口。这意味着我们可以在浏览器中访问http://localhost:8080
并查看Web服务的结果。
示例2
在Windows系统中,我们可以使用PuTTY工具来连接虚拟机。同样,假设我们的虚拟机IP地址为192.168.10.100,用户名为ubuntu。我们可以按照以下步骤进行连接:
- 下载并打开PuTTY工具;
- 在连接窗口中输入
192.168.10.100
作为IP地址; - 在连接窗口中选择SSH连接方式;
- 在连接窗口中输入
ubuntu
作为用户名; - 在PuTTY左侧导航栏中选择"SSH"->"Tunnels";
- 在Tunnels窗口中输入
8080
作为源端口,并在目标端口中输入localhost:80
; - 点击"Add"按钮;
- 点击"Open"按钮连接到虚拟机。
现在我们可以在浏览器中输入http://localhost:8080
并访问Web服务了。
以上就是连接本地Linux虚拟机的攻略,希望能对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:通过SSH连接本地linux虚拟机的过程记录 - Python技术站