本文将搭建Linux虚拟机,并且使用主机在终端利用ssh命令去远程连接Linux虚拟机
软件:virtualBox(免费)
文件:Linux映像文件
系统:MacOS(我本身就是MacBook Pro 但是Windows的操作也差不多)
VirtualBox官网链接
进入官网链接点击Download
进入页面后选择合适自己系统进行下载
后续详细的安装过程,可以参考这篇文章
Linux官网链接
在官网里自行选择哪个版本进行安装(接下来我会以Ubuntu为例安装)
进入Ubuntu官网点击 “Ubuntu Desktop”
进入下载窗口点击Download下载映像文件(这里的意思是下载Ubuntu桌面版 他也有无桌面版的就是只能使用终端)
下载完后就会有一个Ubuntu.ios文件
进入内存设定这里一定要注意 如果你希望自己以后在Linux系统中做很多事情,那么你一定要把文件大小设置的大一点。
如果以后系统内存满了,再扩容的话就很麻烦所以在最开始的时候就可以设置多一点比如说50G(现在的电脑一般都是512G或者1T吧-除了我的mac 256G…)
创建好后在VirtualBox界面就有一个名为“Jack”(这是我刚刚自己设置的名字)的虚拟机了。
双击“Jack”虚拟机
打开虚拟机后会弹出一个窗口需要选择虚拟光盘文件(不慌,这里需要的就是我们之前下载的Linux映像文件)
按照红色箭头点击文件夹
点击注册来导入我们的映像文件(.iso文件)
在文件夹中找到我们之前下载的.iso文件 然后点击open
回到原来的界面选择我们刚刚加入的.iso文件然后点击选择
选择好后就点击启动
导入成功后,他就开始安装了,后续的操作比较傻瓜式
后续操作具体请参考这篇文章的12步骤之后
自此环境已经基本搭建完成如果你希望直接使用桌面端端Ubuntu在此可以打住,如果你希望直接可以直接利用主机终端连接到Linux然后秀别人一脸,那就继续看下去吧
SSH 叫安全外壳协议(Secure Shell),是一种加密的网络传输协议,可在不安全的网络中网络服务提供安全的传输环境。它通过在网络中创建安全隧道来实现 SSH 客户端和服务器之间的连接。最早的时候,互联网通信都是明文通信,一旦被截获,内容就会被暴露。1995年,芬兰学者 Tatu Ylonen 设计了 SSH 协议,将登录信息全部加密,成为互联网安全的一个基本解决方案,迅速在全世界获得推广,目前已经成为所有操作系统的标准配置。(太啰嗦了)
简单来说就是让两台主机的连接变得安全
SSH的命令很多但是现在我们只需要用到一个
ssh [email protected] #输入用户名后面是主机的ip地址 之后还需要输入密码
Virtual Box常用的桥接、NAT和host-only三种网络连接方式的区别
1、桥接方式
在这种模式下,VirtualBox虚拟出来的操作系统就像是局域网中的一台独立的主机,它可以访问网内任何一台机器。
但你需要手工为虚拟系统配置IP地址、子网掩码,而且还要和宿主机器处于同一网段,这样虚拟系统才能和宿主机器进行通信。
使用桥接模式的虚拟系统和宿主机器的关系,就像连接在同一个Hub上的两台电脑。想让它们相互通讯,你就需要为虚拟系统配置IP地址和子网掩码,否则就无法通信。
优点:虚拟出来一个独立的主机,在访问权限上没有限制
缺点:需要手动配置IP地址、子网掩码等网络
2、host-only(主机模式)
在某些特殊的网络调试环境中,要求将真实环境和虚拟环境隔离开,这时你就可采用host-only模式。在host-only模式中,所有的虚拟系统是可以相互通信的,但虚拟系统和真实的网络是被隔离开的。因此虚拟机无法访问宿主机
优点:虚拟系统自己可以随意通信
缺点:无法访问主机且不能上网
3、NAT方式
使用NAT模式,就是让虚拟系统借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网。NAT模式下的虚拟系统的TCP/IP配置信息是由VMnet8(NAT)虚拟网络的DHCP服务器提供的,无法进行手工修改,因此虚拟系统也就无法和本局域网中的其他真实主机进行通讯。采用NAT模式最大的优势是虚拟系统接入互联网非常简单,你不需要进行任何其他的配置,只需要宿主机 器能访问互联网即可。
优点:无需配置就可以上网
缺点:宿主机不能访问到虚拟机
总结
很奇怪 NAT方式可以让我们的虚拟机上网但是无法让宿主机连接虚拟机,而host-only模式可以让我们宿主机连接到虚拟机可无法上网.那么这两种如果可以结合的话那不是完美了,确实Virtual Box提供了多个网络的选择,我们将在下面详细介绍操作
参考文章
1.打开VirtualBox 选择管理打开(主机网络管理)
2.进入主机网络管理后 点击创建
3.创建完成后 会出现一个新的网络
4.点击关闭 回到VirtualBox界面 右键虚拟机 进入设置
5.进入设置后 点击网络模块 我们这里需要设置成 网络1(NET) 网络2(Host-Only) 原因我后续会讲
点击“OK” 至此网络部分设置完成
1.进入桌面版的Ubuntu系统,打开系统的终端 我们将在该终端上完成我们的环境搭建
2.首先在Ubuntu上安装ssh-server并且在电脑上打开ssh-server服务
sudo apt install openssh-server #安装ssh-server
/etc/init.d/ssh restart #打开ssh-server服务
3.安装成功后,ssh-server应该已经开始运行,用下面的命令检查ssh server的状态 像下图那样子就算成功了
systemctl status sshd
4.利用系统自带的ufw命令关闭防火墙
sudo ufw disable
5.使用ssh 连接一下自己试试看 输入密码后 出现下面的情况就是成功的
ssh localhost
ip a
ssh [email protected]
欢迎在评论区留言~我会一一解答的