这篇文章,主要介绍VMware安装Centos7虚拟机并且设置静态IP,实现Windows和Centos7网络互相访问。
目录
首先需要下载VMware虚拟机软件,可以去官方网站下载【Download VMware Workstation Pro】,我使用的VMware Workstation16版本。接着还需要下载Centos7系统镜像,下载地址【http://mirror.nsc.liu.se/centos-store/7.8.2003/isos/x86_64/】,如下所示:
VMware下载完成之后,傻瓜式安装一下,接着就是安装Centos7系统啦。
选择【文件】下的【新建虚拟机】,如下所示:
选择【典型】,点击下一步即可。
选择稍后安装操作系统,点击下一步。
选择Linux系统类型,点击下一步。
填写虚拟机名称,安装位置,点击下一步。
选择磁盘空间大小,根据自己的需求来决定。
点击【自定义硬件】按钮。
选择刚刚下载Centos7系统镜像,网络适配器选择NAT模式。
点击【关闭】,再点击【完成】,此时Centos7新建虚拟机就算完事了,就是下面这个样子。
接着启动Centos7系统,要开始正式安装啦。
选择第二个,回车就会进入到下一个界面。
过一段时间之后,就可以开始选择字体。
接着进入下一个界面,如下所示:
选择上海时区即可。
接着选择系统安装位置。
我这里选择的是自动分区。
到这里,就可以点击【开始安装】。
接着在安装过程中,可以设置用户密码。
输入root用户的密码,自己要记住。
最后,就是等到安装完成啦。安装完成之后,点击重启。
重启之后,进入到Centos7系统终端界面,就可以输入root用户,以及输入密码,如下所示:
到这里Centos7系统就安装完成了,下面开始设置Centos7系统的静态IP。
在VMware界面工具栏中,选择【编辑】下的【虚拟网络编辑器】。
稍等一会,会有一点慢,过一小会就会弹出一个窗口。
点击【更改设置】,就会进入到编辑状态,如下所示:
需要修改的内容:勾选NAT模式,取消DHCP那个勾选,记住子网IP地址,子网掩码。接着点击【NAT设置】,此时又会弹出一个窗口,如下所示:
点击【确定】即可,关闭这个弹出框,然后再点击【应用】,点击【确定】就可以啦。
启动Centos7系统,进入到终端界面,首先关闭NetworkManager服务,因为这个NetworkManager服务会和network.service发生冲突,从而导致网卡不可用,所以需要禁用NetworkManager服务。
# 禁用NetworkManager服务
systemctl disable NetworkManager
执行结果如下所示:
接着停用NetworkManager服务,执行命令:
# 停止服务
systemctl stop NetworkManager
# 查看服务状态
systemctl status NetworkManager
# 设置开机不自动启动
chkconfig NetworkManager off
执行结果如下所示:
到这里,NetworkManager服务就禁用成功啦,下面开始修改ens33网卡信息。
进入/etc/sysconfig/network-scripts目录下,执行【vi ifcfg-ens33】编辑ifcfg-ens33文件。
# 进入目录
cd /etc/sysconfig/network-scripts
# 编辑配置文件
vi ifcfg-ens33
如下图所示:
在ifcfg-ens33配置文件中,需要添加和修改下面这些内容:
注意:配置文件中的IPADDR就是前面看到的子网IP地址,最后一位自己定义就可以了,我这里是定义的100,也就是我的Centos虚拟机IP地址就是192.168.17.100。子网掩码、网关IP地址和前面看到的保持一致。修改完成之后,按下ESC按键,然后输入【:】冒号,输入【wq】保存即可。
执行命令【service network restart】重启一下network网卡服务,然后可以使用【ip addr】查看网卡状态。
网卡正常启动之后,就可以测试Centos7虚拟机系统中,是否可以访问网络,使用【ping www.baidu.com】命令,查看是否正常ping通百度地址,如果出现下图中的情况,那就表示可以正常访问网络。
在我们自己Windows系统上,打开CMD命令行窗口,使用ping命令去访问虚拟机Centos7中的IP地址,查看是否可以正常访问。
出现上面的情况,就表示可以正常访问。
接着在Centos虚拟机里面,使用ping命令去访问外部宿主机的IP地址,外部宿主机的IP地址可以打开CMD窗口,输入【ipconfig】可以查看。
然后在Centos7系统里面,执行【ping 192.168.1.4】,查看结果。
以上结果就表明,Centos7虚拟机系统和外部宿主机的网络是互通。
为了使用SSH方式连接Centos7虚拟机系统,那就需要安装及配置SSH服务,我这里安装的是openssh-server。
执行【rpm -qa | grep ssh】命令。
# 查看是否安装ssh服务
rpm -qa | grep ssh
执行上面命令后,可以查看安装了哪些ssh服务,结果如下:
这里就表示我已经安装了openssh-server服务,那就不需要安装啦,如果你没有安装,可以执行下面命令:
# 安装openssh-server服务
yum install -y openssh-server
进入【/etc/ssh/】目录,然后编辑【sshd_config】配置文件。
# 进入ssh目录
cd /etc/ssh/
# 修改ssh配置文件
vi sshd_config
如下图所示:
需要配置的信息如下所示:
修改上面两个信息基本上就可以啦。
执行下面命令重启一下SSH服务。
# 重启ssh服务
service sshd restart
如下图所示:
如果无法远程连接SSH服务,那有可能是Centos7系统中开启了防火墙,所以需要关闭防火墙,或者开放22端口。
# 开放22端口
sudo firewall-cmd --zone=public --add-port=22/tcp --permanent
# 重启防火墙
sudo service firewalld restart
# 关闭防火墙
systemctl stop firewalld
#禁用防火墙
systemctl disable firewalld
执行命令如下图所示:
我这里使用的MobaXterm软件,通过SSH方式连接Centos7虚拟机。
到这里,SSH连接Centos7虚拟机就成功啦。
当执行【service network restart】重启ens33网卡时候,出现下面的报错信息:
具体报错日志信息:
# service network restart
Restarting network (via sustemctl):Job for network.service failed because the control process
exited with error code. See "systemctl status network.service" and "journalctl -xe" for details.
[FAILED]
这点日志看不出来是什么具体原因导致的,可以执行【journalctl -xe】命令,这样就可以查看到具体的报错信息,例如:我的报错信息是host主机已经被使用了。
出现这个的原因是我配置的这个虚拟网络被其他的虚拟机占用,因为我之前有创建其他的虚拟机(如果你是第一次安装的,是不会出现这个问题的)。
要解决上面这个问题,可以直接在虚拟网络编辑器中,还原虚拟机网络的默认设置就可以啦,注意:要先关闭正在运行的虚拟机。
还原之后,需要重新查看一下虚拟网络的IP地址信息,具体查看第二个步骤【设置静态IP地址】。
当重启网卡成功,但是使用【ip addr】查看网卡状态时候,发现网卡是处于DOWN状态,也就是没有启动成功呀,如下图所示:
具体报错日志信息:
[root@localhost ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER UP> mtu 65536 qdisc noqueue state UNKNON group default qlen 1008ink/loopback 88:08:9:9:00: brd 0g:00:00:08:0:00inet 12?.日.日.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope hostvalid lft forever preferred lft forever
2: ens33: <NO-CARRIER,BRDADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
link/ether gg:c:29:9e:81:52 brd ff:ff:ff:ff:ff:ffinet 192.168.1?.100/24 brd 192.168.1?.255 scope global ens33valid lft forever preferred lft forever
出现上面问题的原因是,Windows中的VMware NAT Service服务没有启动,需要将这个NAT服务器启动,虚拟机中的网卡才可以正常使用。
启动NAT服务之后,再次使用【ip addr】命令查看网卡状态。
Windows系统中的CMD命令行窗口里面,也可以使用ssh命令连接远程的SSH服务,格式:
# 连接ssh服务
ssh 用户名称@IP地址
# 举例
ssh root@192.168.17.100
如果执行上面命令,报下面的错误:
C:\Users\zhuyb>ssh root@192.168.17.100
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ED25519 key sent by the remote host is
SHA256:kVNdSdR9ZfJvTV/hRPyOqBda3heZtklQ2JkngtzbaM4.
Please contact your system administrator.
Add correct host key in C:\\Users\\zhuyb/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in C:\\Users\\zhuyb/.ssh/known_hosts:5
Host key for 192.168.17.100 has changed and you have requested strict checking.
Host key verification failed.
解决上面报错问题,只需要执行下面命令即可:
ssh-keygen -R 你要访问的IP地址
# 举例
ssh-keygen -R 192.168.17.100
执行命令之后,如下所示:
到此,安装Centos虚拟机以及配置网络就完成啦。
综上,这篇文章结束了,主要介绍VMware安装Centos7虚拟机并且设置静态IP,实现Windows和Centos7网络互相访问。