RHCE认证学习-防火墙篇

tcpwraps

  • tcpwraps存在两个配置文件,使用简单,在指定ip登录SSH时比较好用。
1. /etc/hosts.allow

白名单:允许访问的用户名单

2./etc/hosts.deny

黑名单:禁止访问的用户名单

示例:

在不同的配置文件中写入,可达到允许与禁止的作用

sshd : 192.168.26.0/255.255.255.0
匹配规则:

如果俩个文件同时写入相同的访问用户,则优先匹配/etc/hosts.allow

firewalld

1.简述:
  • Centos7默认的防火墙是 firewall,替代了以前的 iptables
  • firewall使用更加方便、功能也更加强大一些
  • firewalld 服务引入了一个信任级别的概念来管理与之相关联的连接与接口。它支持 ipv4 与 ipv6,并支持网桥,采用 firewall-cmd (command) 或 firewall-config (gui) 来动态的管理 kernel netfilter 的临时或永久的接口规则,并实时生效而无需重启服务。
2.安装

firewall使用前需要安装,当然也有些系统自带firewall,所以先判断是否已安装过。

[root@vms001 ~]# rpm -qa |grep firewall
firewall-config-0.3.9-11.el7.noarch
firewalld-0.3.9-11.el7.noarch

或者执行查看版本命令:

[root@vms001 ~]# firewall-cmd --version 
 0.3.9

若未安装,执行yum install -y firewalld

3.使用

3.1 使用图形化界面配置防火墙命令:

[root@vms001 桌面]# firewall-config &
image

3.2 使用命令行的命令
firewall-cmd

systemctl status firewalld              # 查看状态
systemctl start firewalld               # 启动
systemctl stop firewalld                #关闭
systemctl enable firewalld              # 开机启动
systemctl disable firewalld             # 取消开机启动

3.3 常用操作命令:

常用的操作命令:
firewall-cmd --add-service=mysql # 开放mysql端口
firewall-cmd --remove-service=http # 阻止http端口
firewall-cmd --list-services  # 查看开放的服务
firewall-cmd --add-port=3306/tcp # 开放通过tcp访问3306
firewall-cmd --remove-port=80tcp # 阻止通过tcp访问3306
firewall-cmd --add-port=233/udp  # 开放通过udp访问233
firewall-cmd --list-ports  # 查看开放的端口
4.防火墙的富规则

4.1 伪装IP=端口转发

firewall-cmd --query-masquerade # 检查是否允许伪装IP
firewall-cmd --add-masquerade # 允许防火墙伪装IP
firewall-cmd --remove-masquerade# 禁止防火墙伪装IP
**将80端口的流量转发至8080**
```python

firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080

    **将80端口的流量转发至192.168.0.1的8080端口**
    ```python
firewall-cmd --add-forward-port=port=80:proto=tcp:toaddr=192.168.0.1:toport=8080

可以使用man命令查看富规则中的模板

man firewalld.richlanguage

查找example
其中3和5为我们常用的修改协议与端口的书写模板 

协议模板示例:

 Example 3
      Allow new IPv4 connections from address 192.168.0.0/24 for service tftp
      and log 1 per minutes using syslog 
          rule family="ipv4" source address="192.168.0.0/24" service name="tftp" log prefix="tftp" level="info" limit value="1/m" accept

端口模板示例:

Example 5
       Forward IPv6 port/packets receiving from 1:2:3:4:6:: on port 4011 with
       protocol tcp to 1::2:3:4:7 on port 4012

           rule family="ipv6" source address="1:2:3:4:6::" forward-port to-addr="1::2:3:4:7" to-port="4012" protocol="tcp" port="4011"

设置为永久生效:

firewall-cmd --add-rich-rule rule family=" " --permanent永久生效

你可能感兴趣的:(RHCE认证学习-防火墙篇)