Centos7.7安装及配置教程

53,584 阅读10分钟

VMware15 Pro安装CentOS7.7安装CentOS7.7下载编辑虚拟机设置虚拟机配置Centos7.7配置网卡配置验证网卡配置防火墙设置小结参考文献

之前安装过一次,不过后来电脑格式化后,没有及时恢复虚拟机,直到最近购买服务器后 ,需要使用到虚拟机才想到重新安装 Centos。

VMware15 Pro安装

下载地址:VMware15

下载完成后,右键以管理员身份运行,安装过程中可能会遇到这样的情况。

此时需要重新启动电脑,然后再次点击安装包进行安装即可。

最后安装完毕之后,输入许可证:GG3E8-FAW85-4802Y-Z5MX9-Z6RC0

CentOS7.7安装

CentOS7.7下载

虽然目前已经更新到 Centos8.x,但是实际最广泛的还是 Centos7.x,所以决定下载使用 Centos7.7。

1、进入 Centos 下载官网,找到 Centos 7.7 版本

这里列举了很多镜像资源,随便点击一个下载。

点击文件跳转到迅雷进行下载。

编辑虚拟机设置

打开你的 VMware Workstation Pro,并按照如下步骤进行操作。

虚拟机创建完成之后,需要修改一些配置。

将我们下载的 Centos7.7 文件配置进来,关于 USB 控制器、声卡和打印机可视情况保留,初期使用不会占用多少资源空间,可以先保留,以后再做处理。

开启此虚拟机,使用虚拟机需要注意:

鼠标移动到虚拟机内部单击或者按下Ctrl + G,鼠标即可移入到虚拟机中
按下Ctrl + Alt,鼠标即可移出虚拟机

选择Install CentOS 7

之后一直 Enter 即可,然后来到虚拟机配置页面。

虚拟机配置

1、设置语言,默认 English,直接点击 Continue。

2、设置时区和时间

3、软件安装

4、设置安装位置

配置三个分区,/boot、swap 和 / 根分区。

5、开始安装

6、设置密码

7、等待一段时间安装完成后,然后 reboot。

Centos7.7配置

虚拟机登录

登录过程中可能会出现这样的界面,一步一步往下走会发现是帮助你新建了一个用户,不过我们还是使用 root 账户进行登录,密码即为之前设置的密码。

网卡配置

1、查看网卡

[root@localhost~]# ip addr

返回结果为:

通过 ip 命令加参数 addr 则是查看当前网卡的配置信息, 从下图中可以看出, 当前系统的 ens33 网卡并没有 ipv4 及 ipv6, 没有 ip地址 则只能说明一个问题, 当前 linux 系统是没有办法上网的, lo 这块网卡每一个系统中都会有, 这个称之为 回环网卡。

当前系统只能通过 ping 命令 ping 通 回环网卡 也就是 127.0.0.1 这个 ip地址。

2、修改网络信息配置文件

CentOS7 默认网卡设备文件存放于 /etc/sysconfig/network-scripts/

[root@localhost~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33

通过 cat 查看 CentOS7 最小化安装默认网卡设备配置信息, 如下:

TYPE=Ethernet                # 网卡类型:为以太网
PROXY_METHOD=none            # 代理方式:关闭状态
BROWSER_ONLY=no                # 只是浏览器:否
BOOTPROTO=dhcp                # 网卡的引导协议:DHCP[中文名称: 动态主机配置协议]
DEFROUTE=yes                # 默认路由:是, 不明白的可以百度关键词 `默认路由` 
IPV4_FAILURE_FATAL=no        # 是不开启IPV4致命错误检测:否
IPV6INIT=yes                # IPV6是否自动初始化: 是[不会有任何影响, 现在还没用到IPV6]
IPV6_AUTOCONF=yes            # IPV6是否自动配置:是[不会有任何影响, 现在还没用到IPV6]
IPV6_DEFROUTE=yes            # IPV6是否可以为默认路由:是[不会有任何影响, 现在还没用到IPV6]
IPV6_FAILURE_FATAL=no        # 是不开启IPV6致命错误检测:否
IPV6_ADDR_GEN_MODE=stable-privacy            # IPV6地址生成模型:stable-privacy [这只一种生成IPV6的策略]
NAME=ens33                    # 网卡物理设备名称
UUID=1678356b-1757-43ad-8de5-ad6200ce2928    # 通用唯一识别码, 每一个网卡都会有, 不能重复, 否两台linux只有一台网卡可用
DEVICE=ens33                    # 网卡设备名称, 必须和 `NAME` 值一样
ONBOOT=no                        # 是否开机启动, 要想网卡开机就启动或通过 `systemctl restart network`控制网卡,必须设置为 `yes` 

使用 vi 文本编辑器打开网卡设备文件,进行修改。

[root@localhost~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33


//修改以下内容
BOOTPROTO=static  //启用静态IP地址
ONBOOT=yes      //开启自动启用网络连接


//添加以下内容
IPADDR=192.168.30.100      //设置IP地址
NETMASK=255.255.255.0   //子网掩码
GATEWAY=192.168.30.1   //设置网关

修改结果如下:

其中 ONBOOT=yes,设置网卡启动方式为 开机启动 并且可以通过系统服务管理器 systemctl 控制网卡。IPADDR 的设定主要是根据 本机 IP 决定的,比如说在 Dos 窗口输入 ipconfig 命令,得到以下结果:

IPv4 地址为:192.168.21.211,默认网关为:192.168.21.1,则可以将 IPADDR 设定为:192.168.21.100,GATEWAY:192.168.21.1。因为 IP 是唯一的,所以不要将这两者设为一样。

修改完毕后,按 esc 进入到 命令模式, 按住 shift + : 输入 :, 接着再输入 wq, w 是 保存, q 就是告退。最后重启网卡。

[root@localhost~]# systemctl restart network

如果执行上述语句报错,且错误信息如下:

Restarting network (via systemctl): Job for network.service failed because the control process exited with error code.
See "systemctl status network.service" and "journalctl -xe" for details. [失败]

具体解决方案可以查看:服务重启失败问题解决

我个人解决方案是将 /etc/sysconfig/network-scripts下 的 ifcfg-ens32 文件删除了即可。

验证网卡配置

1、ip addr查看当前网卡信息

可以看到 ens33 这块网卡, IP/网关, 还有 ipv6 这个现阶段还暂时用不到。

2、ping 内网其他主机

简单点就是说 ping 本机的 ip 地址(Windos 系统可以在 Dos 窗口进行查看)。

如果 ping 不通主机,则将虚拟机网络连接改为桥接模式,如下图所示,并重启虚拟机。

当发现主机可以 ping 通虚拟机,但是虚拟机 ping 不通主机,采取以下解决方案:

修改过后,虚拟机和主机就可以互相 ping 通了。

3、ping 公网 ip

4、 ping 外网其他主机

防火墙设置

1、检查是否安装了 iptables

service iptables status

安装 iptables

yum install -y iptables

升级iptables

yum update iptables

安装iptables-services

yum install iptables-services

iptables-services 和 iptables 是不一样的,安装了 services 才有 /etc/sysconfig/iptables。

2、永久关闭 firewalld 防火墙(centos7默认的防火墙是firewalld防火墙,不是使用iptables,因此需要关闭firewalld服务)

systemctl stop firewalld.service  // 停止firewalld服务

systemctl disable firewalld.service // 开机禁用firewalld服务

3、 设置现有规则

我们很多时候在 Liunx 系统上安装了 Web 服务应用后(如tomcat、apache等),需要让其它电脑能访问到该应用,而Linux系统(Centos、redha t等)的防火墙是默认只对外开放了22端口。

iptables -P INPUT ACCEPT        //先允许所有
iptables -F            //清空所有默认规则
iptables -X            //清空所有自定义规则
iptables -Z            //所有计数器归0
iptables -A INPUT -i lo -j ACCEPT        //允许来自于lo接口的数据包(本地访问)
iptables -A INPUT -p tcp --dport 22 -j ACCEPT    //开放22端口
iptables -A INPUT -p tcp --dport 21 -j ACCEPT        //开放21端口(FTP)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT        //开放80端口(HTTP)
iptables -A INPUT -p tcp --dport 443 -j ACCEPT        //开放443端口(HTTPS)
iptables -A INPUT -i ens+ -p icmp --icmp-type 8 -j ACCEPT    //允许ping
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT        //允许接受本机请求之后的返回数据 RELATED,是为FTP设置的
iptables -P INPUT DROP        //其他入站一律丢弃
iptables -P OUTPUT ACCEPT        //所有出站一律绿灯
iptables -P FORWARD DROP        //所有转发一律丢弃
service iptables save        //保存上述规则

注意命令执行过程中的错误,很小的问题。

配置完成后, /etc/sysconfig/iptables 文件内容如下:

:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -i eth+ -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -i ens+ -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT

4、 开启iptables服务

systemctl enable iptables.service    //注册iptables服务相当于以前的chkconfig iptables on
systemctl start iptables.service        //开启服务
systemctl status iptables.service        //查看状态

配置完成后再次检查一些网络。

小结

关于一些软件的配置,不可能只配置一次就够了,后续可能还会重复操作,或者帮助别人配置。好记性不如烂笔头,将操作步骤和心得体会记录下来,不仅可以自己使用,希望能够对后续学习的伙伴们有所帮助。

参考文献

超详细的CentOS7.4下载与图文安装

解决linux(Centos)没有 iptables 解决

Linux 防火墙iptables命令详解