Linux 之 Firewalld

2021-03-08  本文已影响0人  googoler

概述

image.png

区域管理

注:FirewallD的默认区域是public


网络服务


安装、启用、关闭firewalld


firewalld服务管理


管理区域中的对象

image.png

端口转发

端口转发可以将指定地址访问指定的端口时,将流量转发至指定地址的指定端口;
转发的目的如果不指定ip的话就默认为本机,如果指定了ip却没指定端口,则默认使用来源端口;
典型的做法:

  1. NAT内网端口映射
  2. SSH隧道转发数据
    如果配置好端口转发之后不能用,可以检查下面两个问题:
    • 比如我将 80 端口转发至 8080 端口,首先检查本地的 80 端口和目标的 8080 端口是否开放监听了;
    • 其次检查是否允许伪装 IP,没允许的话要开启伪装 IP;

伪装 IP


ICMP控制


通过配置文件来使用Firewalld的方法

系统本身已经内置了一些常用服务的防火墙规则,存放在/usr/lib/firewalld/services/
注意!!!!!请勿编辑/usr/lib/firewalld/services/ ,只有 /etc/firewalld/services 的文件可以被编辑。
以下例子均以系统自带的public zone 为例子:

或者以 root 身份输入以下信息,重新加载防火墙并中断用户连接,即丢弃状态信息:

[root@zcwyou ~]# firewall-cmd --complete-reload

注意:通常在防火墙出现严重问题时,这个命令才会被使用。比如,防火墙规则是正确的,但却出现状态信息问题和无法建立连接。

10.2 案例2: SSH为非默认端口,要求能正常访问

[root@zcwyou ~]# cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/
[root@zcwyou ~]# vi /etc/firewalld/services/ssh.xml
把默认22修改为目前的SSH端口号

[root@zcwyou ~]# firewall-cmd --reload

10.3 案例3:修改区域配置文件只允许特定主机192.168.23.1连接SSH

[root@zcwyou ~]# cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/
[root@zcwyou ~]# vi /etc/firewalld/zones/public.xml

确保配置文件有以下内容

配置结束

重启防火墙后生效
[root@zcwyou ~]# firewall-cmd --reload


firewalld直接模式


添加富规则


参考:

上一篇 下一篇

猜你喜欢

热点阅读