前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux基础——Firewalld防火墙(二)

Linux基础——Firewalld防火墙(二)

作者头像
L宝宝聊IT
发布2018-06-27 14:02:51
1.2K3
发布2018-06-27 14:02:51
举报
文章被收录于专栏:L宝宝聊ITL宝宝聊IT

处理运行时区域:

运行时模式下对区域进行的修改不是永久有效的。重新加载或者重启后修改将失效。

1、启用区域中的一种服务即给某个区域开启某个服务

firewall-cmd [--zone=区域] --add-service=服务 [--timeout=秒数]

此操作启用区域中的一种服务。如果未指定区域,将使用默认区域。如果设定了超时时间,服务将只启用特定秒数。

使区域中的 ipp-client服务生效 60 秒:

启用默认区域中的 http 服务:firewall-cmd--add-service=http

2、禁用区域中的某种服务即关闭某个服务

firewall-cmd [--zone=区域] --remove-service=服务

此举禁用区域中的某种服务。如果未指定区域,将使用默认区域。

例:禁止默认区域中的 http 服务:

3、查询区域中是否启用了特定服务

firewall-cmd [--zone=区域] --query-service=服务

Yes 表示服务启用,no 表示服务关掉了。

4、启用区域端口和协议组合

firewall-cmd [--zone=区域] --add-port=portid[-portid]/protocol [--timeout=seconds]此操作将启用端口和协议的组合。端口可以是一个单独的端口或者是一个端口范围 - 。协议可以是 tcp 或 udp。

5、禁用端口和协议组合

firewall-cmd [--zone=区域] --remove-port=portid[-portid]/protocol

6、查询区域中是否启用了端口和协议组合

firewall-cmd [--zone=区域] --query-port=portid[-portid]/protocol

7、启用区域中的 IP 伪装功能

firewall-cmd [--zone=区域] --add-masquerade

此操作启用区域的伪装功能。私有网络的地址将被隐藏并映射到一个公有 IP。这是地址转换的一种形式,常用于路由。由于内核的限制,伪装功能仅可用于IPv4。

8、禁用区域中的 IP 伪装

firewall-cmd [--zone=区域] --remove-masquerade

9、查询区域的伪装状态 firewall-cmd [--zone=区域] --query-masquerade

注意:启用伪装功能的主机同时也需要开启转发服务:

# echo 1 > /proc/sys/net/ipv4/ip_forward

#vi /etc/sysctl.conf 添加如下内容

net.ipv4.ip_forward = 1

保存退出并执行#sysctl -p使修改生效

10、启用区域的 ICMP 阻塞功能

firewall-cmd [--zone=区域] --add-icmp-block=icmp 类型

例:firewal-cmd --add-icmp-block=echo-request

此操作将启用选中的 Internet 控制报文协议(ICMP)报文进行阻塞。 ICMP 报文可以是请求信息或者创建的应答报文,以及错误应答。

11、禁止区域的 ICMP 阻塞功能

firewall-cmd [--zone=区域] --remove-icmp-block=icmp 类型

12、查询区域的 ICMP 阻塞功能

firewall-cmd[--zone=区域] --query-icmp-block=icmp 类型

13、在区域中启用端口转发或映射

firewall-cmd [--zone=区域]

--add-forward-port=port=portid[-portid]:proto=protocol[:toport=portid[-portid]][ :toaddres s=address [/mask]]

端口可以映射到另一台主机的同一端口,也可以是同一主机或另一主机的不同端口。端口号可以是一个单独的端口或者是端口范围 - 。协议可以为 tcp 或 udp。目标端口可以是端口号或者是端口范围 - 。目标地址可以是 IPv4 地址。受内核限制,端口转发功能仅可用于 IPv4。

意思是凡是来从 external进来的 22端口的数据包全部转发到 211.106.65.50

firewall-cmd --zone=external

--add-forward-port=port=22:proto=tcp:toaddress=211.106.65.50

14、禁止区域的端口转发或者端口映射

firewall-cmd [--zone=]

--remove-forward-port=port=portid[-portid]:proto=protocol[:toport=portid[-portid]][ :toad dress=address [/mask]]

15、查询区域的端口转发或者端口映射

firewall-cmd

[--zone=]--query-forward-port=port=portid[-portid]:proto=protocol[:toport=portid[-portid]] [ :toaddress=address[/mask]]

处理永久区域:

永久选项不直接影响运行时的状态。这些选项仅在重载或者重启服务时可用。为了使用运行时和永久设置,需要分别设置两者。选项--permanent 需要是永久设置的第一个参数。

1、获取永久选项所支持的服务

firewall-cmd --permanent --get-services

2、获取永久选项所支持的 ICMP类型列表

firewall-cmd --permanent --get-icmptypes

3、获取支持的永久区域

firewall-cmd --permanent --get-zones

4、配置防火墙在 public 区域打开 http 协议,并保存,以致重启有效

firewall-cmd --permanent --zone=public --add-service=http 查看永久模式下 public区域是否打开http 服务。firewall-cmd --permanent --zone=public --query-service=http

5、防火墙开放 8080 端口在 public 区域

firewall-cmd--permanent --zone=public --add-port=8080/tcp

6、命令行配置富规则:

查看富规则:# firewall-cmd --list-rich-rules

创建富规则:

firewall-cmd--add-rich-rule 'rule family=ipv4 source address=10.35.89.0/24 service name=ftplog prefix="ftp" level=info accept' --permanent

firewall-cmd --add-rich-rule 'rule family=ipv4 sourceaddress=10.35.89.0/24 port port=80 protocol=tcp log prefix="80"level=info accept' --permanent

firewall-cmd --add-rich-rule rule family="ipv4" sourceaddress="192.168.10.30" forward-port port="808"protocol="tcp" to-port="80" to-addr="10.10.10.2"

富规则中使用伪装功能可以更精确详细的限制:

firewall-cmd--add-rich-rule 'rule family=ipv4 source address=10.10.10.2/24 masquerade'

仅允许部分 IP 访问本机服务配置

firewall-cmd --permanent --zone=public --add-rich-rule="rulefamily="ipv4" source address="192.168.0.0/24" servicename="http" accept"

禁止远程 IP 访问ssh

firewall-cmd--permanent --zone=public --add-rich-rule=’rule family=ipv4

sourceaddress=192.168.0.0/24 service name=sshreject’

7、删除rich 规则

firewall-cmd--permanent --zone=public --remove-rich-rule=’rule family=ipv4

sourceaddress=192.168.0.0/24 service name=sshreject’

8、仅允许部分 IP 访问本机端口配置

firewall-cmd --permanent --zone=public--add-rich-rule="rule family="ipv4" sourceaddress="192.168.0.0/24"port protocol="tcp"port="8080" accept"

9、创建rich 规则,可以指定日志的前缀和输出级别

firewall-cmd --permanent --zone=public --add-rich-rule="rulefamily="ipv4" source address="192.168.0.4/24"port port=8080protocol="tcp" log prefix=proxy level=warning accept"

可以通过查看/var/log/messages 日志文件

10、端口转发。实验环境下,desktop访问server的5423端口,将访问server的80端口。

Server上的操作:(172.25.0.10是desktop的IP地址)

11、172.25.1.0/24 网段内的客户端不能访问主机的 SSH

12、也可通过配置以下 XML 文件,进行对防火墙的配置修改

#cat /etc/firewalld/zones/public.xml

<?xmlversion="1.0" encoding="utf-8"?>

<zone>

<short>Public</short>

<description>Foruse in public areas. You do not trust the other computers on networks

to not harmyour computer. Only selected incoming connections areaccepted.</description>

<servicename="dhcpv6-client"/>

<servicename="ssh"/>

<rulefamily="ipv4">

<sourceaddress="192.168.0.4/24"/>

<servicename="http"/>

<accept/>

</rule>

</zone>

netfilter 防火墙总是容易受到规则顺序的影响,因为一条规则在链中没有固定的位置。在一条规则之前添加或者删除规则都会改变此规则的位置。在静态防火墙模型中,改变防火墙就是重建一个干净和完善的防火墙设置,默认链通常也没有安全的方式添加或删除规则而不影响其他规则。

动态防火墙有附加的防火墙功能链。这些特殊的链按照已定义的顺序进行调用,因而向链中添加规则将不会干扰先前调用的拒绝和丢弃规则。从而利于创建更为合理完善的防火墙配置。下面是一些由守护进程创建的规则,过滤列表中启用了在公共区域对ssh , mdns 和ipp-client的支持:

图形化配置工具

firewall daemon 主要的配置工具是 firewall-config。它支持防火墙的所有特性。管理员也可以用它来改变系统或用户策略。

命令行客户端

firewall-cmd 是命令行下提供大部分图形工具配置特性的工具。

注:要想了解更多 firewall 防火墙更多知识可以查看 firewall的相关手册页:

man -k firewalld

若要查看rich-rule 手册页

man firewalld.richlanguage

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-06-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 L宝宝聊IT 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 处理运行时区域:
  • 处理永久区域:
  • 永久选项不直接影响运行时的状态。这些选项仅在重载或者重启服务时可用。为了使用运行时和永久设置,需要分别设置两者。选项--permanent 需要是永久设置的第一个参数。
相关产品与服务
私有网络
私有网络(Virtual Private Cloud,VPC)是基于腾讯云构建的专属云上网络空间,为您在腾讯云上的资源提供网络服务,不同私有网络间完全逻辑隔离。作为您在云上的专属网络空间,您可以通过软件定义网络的方式管理您的私有网络 VPC,实现 IP 地址、子网、路由表、网络 ACL 、流日志等功能的配置管理。私有网络还支持多种方式连接 Internet,如弹性 IP 、NAT 网关等。同时,您也可以通过 VPN 连接或专线接入连通腾讯云与您本地的数据中心,灵活构建混合云。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档