一、网卡配置的四种模式

1、直接修改配置文件

vim /etc/sysconfig/network-scripts/ifcfg-ens33

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第1张图片

BOOTPROTO代表地址的分配方式,有dhcp、static、none
ONBOOT代表开机是否启用网卡,参数有yes、no
子网掩码可以写成NETMASK=255.255.255.0,也可以写成PREFIX0=24
修改完网卡配置文件后需要重启网络服务
systemctl restart network


2、nmtui(CentOS 5、6为setup)

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第2张图片Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第3张图片Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第4张图片


3、nm-connection-editor

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第5张图片Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第6张图片

下面两个选项要勾选,等同于ONBOOT的yes或no

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第7张图片


4、小图标

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第8张图片Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第9张图片Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第10张图片


二、防火墙设置的四种方式

1、iptables

  • 从外到内为INPUT
  • 从内到外为OUTPUT
  • 防火墙的策略从上至下来执行,当匹配后直接执行,并且不会执行下面的语句了。
    Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第11张图片
  • 其中拒绝流量分为两种
    ①REJECT——直接拒绝,对方看到的是直接你拒绝他的消息
    ②DROP——丢包策略,对方看到你是不在线的(起到隐藏主机的作用)

  • 实验
    iptables -L
    #-L代表查看已有的规则列表,INPUT从外到内默认规则是放行所有流量

    Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第12张图片

    iptables -F
    #清空原有的防火墙策略
    iptables -I INPUT -p icmp -j REJECT
    #-I代表放在规则链的头部,优先级最高(-A代表末尾),-p代表协议,-j表示后面接动作

    Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第13张图片

    iptables -I INPUT -p icmp -j ACCEPT
    #恢复允许icmp流量

    Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第14张图片

    iptables -P INPUT DROP
    #-P代表修改默认策略,禁止所有流量(默认策略只能是DROP,不能是REJECT)

    Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)

iptables -I INPUT -p icmp -j ACCEPT
#允许icmp,会发现又可以ping通了

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第15张图片

iptables -I INPUT -p tcp --dport 22 -j ACCEPT
#允许使用SSH(默认端口为22),--dport 22代表是目标的端口号22

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)

#如果不知道对应的协议,可以查看/etc/services文件
cat /etc/services | grep ssh
#因为内容太多,可以使用grep来过滤查看

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第16张图片

iptables -F
#将防火墙策略清除,因为之前将默认的策略修改为了禁止所有流量,所以SSH远程连接断开了,需要重新到本机上修改回ACCEPT
service iptables save
#清空后保存一下当前策略状态
#再次连接,正常。
iptables -D INPUT 1
#删除编号为1的策略

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)

iptables -L
#删除后再进行查看

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)

iptables -I INPUT -s 192.168.152.129 -p icmp -j REJECT
#拒绝某台主机ping本机

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第17张图片

2、firewall-cmd

  • public是系统默认当前使用的策略
  • trusted放行所有的流量
  • drop拒绝所有流量
  • 使用firewall-cmd时,可以先iptables -F清空一下iptables的策略,然后service iptables save保存一下策略状态,这样就不会影响firewall-cmd的使用了
    Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)
    firewall-cmd --get-default-zone
    #正式使用时,可以查看一下默认的区域是什么

    Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)

firewall-cmd --get-zone-of-interface=ens33
#针对网卡查看此网卡使用的区域

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)

  • 策略生效的两种情况:Runtime(默认);permanent永久生效,但当前不会生效,需要重启后生效。如果想不想重启,执行以下firewall-cmd --reload即可。
firewall-cmd --set-default-zone=work
#修改默认区域为work

紧急模式

它会切断所有连接,如果远程操作时候,需要提前将自己加入到紧急模式的白名单中

firewall-cmd --panic-on
#打开紧急模式,centos 7无法ping通了,我们的ssh连接也断开了。

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第18张图片

firewall-cmd --panic-off
#登陆实体机关闭紧急模式后,恢复正常了。

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第19张图片

放行某一服务或端口

  • ①服务
    firewall-cmd --zone=public --query-service=http
    #查看http是否放行
    firewall-cmd --zone=public --add-service=http
    #放行http服务,但是重启后会失效

    Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第20张图片

firewall-cmd --zone=public --query-service=http
#查看当前http服务是否被放行
firewall-cmd --permanent --zone=public --query-service=http
#查看重启后http服务是否被放行
firewall-cmd --permanent --zone=public --add-service=http
#通过加上--permanent参数后,当前不会生效,需要重启或者使用--reload参数后才会生效。

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第21张图片

  • ②端口

    firewall-cmd --zone=public --query-port=8080/tcp
    #查看当前8080端口是否被放行
    firewall-cmd --permanent --zone=public --add-port=8080/tcp
    #永久放行8080端口,当前不生效,需要重启或者firewall-cmd --reload才会生效

    Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第22张图片

  • 实验:流量转发

SSH默认端口号为22,如果想访问666端口时候也同样能够访问SSH服务。
步骤:
①在192.168.152.129主机使用以下命令

firewall-cmd --permanent --zone=public --add-forward-port=port=666:proto=tcp:toport=22:toaddr=192.168.152.129

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)

需要再firewall-cmd --reload后生效
②在192.168.152.126主机使用以下命令
ssh 192.168.152.129 -p 666
通过192.168.152.126主机进行使用端口666来ssh登陆192.168.152.129,结果如下图

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第23张图片
在192.168.152.126主机上使用netstat -ntpe可以查看结果如下

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)

  • 实验:富规则
    步骤:
    ①在主机192.168.152.126主机输入以下命令
    firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.152.0/24" service name="ssh" reject"
    #拒绝192.168.152.0网段的ssh服务

    Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)

    firewall-cmd --reload
    #使上条命令立即生效

    ②在主机192.168.152.129上ssh 192.168.152.126发现无法连接了。
    Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第24张图片

    firewall-cmd --permanent --zone=public --remove-rich-rule="rule family="ipv4" source address="192.168.152.0/24" service name="ssh" reject"
    #将添加富规则移除
    firewall-cmd --permanent --zone=public --query-rich-rule="rule family="ipv4" source address="192.168.152.0/24" service name="ssh" reject"
    #查看富规则使用情况

    Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第25张图片

3、firewall-config
Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第26张图片

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第27张图片

  • 实验
    通过命令查看http服务是没有允许放行的
    Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第28张图片

我们将firewall-config中的http服务勾选后,再进行查看,还是显示的no,因为我们上图中使用的查询命令是没有带参数--permanent的,但是我们选择的配置是permanent
Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第29张图片

需要在左上角的Options中Reload Firewalld(等同于命令行的firewall-cmd --reload),再进行查看就显示yes了。

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第30张图片

4、tcp_wrappers

优先级应该是最低的

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)

先去匹配hosts.allow,再去匹配hosts.deny
如果hosts.allow中已经允许了,则会放行;如果两个里面都没有,默认也是放行的。

  • 实验
    ①在主机192.168.152.126上进行如下操作
    vim /etc/hosts.deny
    加入以下参数
    sshd:192.168.152.(格式为 服务名称:网段、IP)
    保存并退出后,无需重启等操作。
    ②此时从主机192.168.152.129上执行
    ssh 192.168.152.126,发现已经无法登陆了
    Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第31张图片

③此时再在主机192.168.152.126的hosts.allow文件中加入sshd:192.168.152.后,从主机192.168.152.129上进行ssh 192.168.152.126发现可以正常登陆了,如下图。也说明了开始将的,匹配上了hosts.allow后就会放行!

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第32张图片

④只允许某一个IP地址进行ssh登陆。

Linux网卡配置的四种模式以及防火墙设置的四种方式(CentOS 7.4)_第33张图片