防火墙设置,firewallcmd查看防火墙

首页 2025-01-26 16:12:50



防火墙是网络安全的重要组成部分,它通过设置规则来控制进出网络的数据流,从而保护系统免受未经授权的访问和攻击。firewallcmd是Linux系统中firewalld服务的命令行工具,它提供了丰富的功能来配置和管理防火墙规则。
 
一、查看防火墙状态
 
1.查看firewalld服务状态:
   使用以下命令可以查看firewalld服务的运行状态:
bash
   systemctl status firewalld
 
   如果服务正在运行,会显示“running”;如果未运行,则显示“not running”。
 
2.查看防火墙区域及规则:
   firewalld使用区域(zones)来定义不同的安全策略。使用以下命令可以查看所有可用的区域:
bash
   firewallcmd getzones
 
   要查看特定区域(如public区域)的所有规则,可以使用:
bash
   firewallcmd zone=public listall
 
 
二、开放或限制端口
 
1.开放端口:
   要开放某个端口(例如8080端口),可以使用以下命令:
bash
   firewallcmd zone=public addport=8080/tcp permanent
 
   其中,`permanent`选项表示永久生效,即使系统重启后也会保持设置。之后,需要重新加载防火墙配置以使更改生效:
bash
   firewallcmd reload
 
   可以使用以下命令验证端口是否已开放:
bash
   firewallcmd zone=public queryport=8080/tcp
 
 
2.限制端口:
   要关闭之前开放的端口,可以使用类似的命令,但将`addport`替换为`removeport`:
bash
   firewallcmd zone=public removeport=8080/tcp permanent
   firewallcmd reload
 
 
3.批量操作端口:
   firewallcmd还支持批量开放或限制端口。例如,要开放从10000到10100的端口范围,可以使用:
bash
   firewallcmd zone=public addport=1000010100/tcp permanent
   firewallcmd reload
 
 
三、开放或限制IP地址
 
1.限制IP地址访问:
   可以使用rich规则来限制特定IP地址对特定端口的访问。例如,要禁止IP地址为172.19.8.90的机器访问3679端口,可以使用:
bash
   firewallcmd permanent addrichrule=rule family=ipv4 source address=172.19.8.90 port protocol=tcp port=3679 reject
   firewallcmd reload
 
 
2.解除IP地址限制:
   要解除之前的限制,可以使用类似的命令,但将`reject`替换为`accept`:
bash
   firewallcmd permanent addrichrule=rule family=ipv4 source address=172.19.8.90 port protocol=tcp port=3679 accept
   firewallcmd reload
 
 
3.限制IP地址段:
   可以限制整个IP地址段的访问。例如,要禁止192.168.172.0/24网段的机器访问443端口,可以使用:
bash
   firewallcmd permanent addrichrule=rule family=ipv4 source address=192.168.172.0/24 port protocol=tcp port=443 reject
   firewallcmd reload
 
 
四、其他操作
 
1.添加或移除服务:
   firewallcmd还支持添加或移除服务。服务通常是一组预定义的端口和协议。例如,要永久添加HTTP服务到public区域,可以使用:
bash
   firewallcmd zone=public addservice=http permanent
   firewallcmd reload
 
 
2.查看当前所有开放的端口:
   使用以下命令可以查看当前系统所有开放的端口:
bash
   firewallcmd zone=public listports
 
 
3.端口转发:
   firewallcmd还支持端口转发功能。例如,要将到本机3306端口的访问转发到另一台服务器的13306端口,可以使用:
bash
   firewallcmd permanent addmasquerade  开启伪装IP(注意:此命令可能有误,应为firewallcmd addmasquerade,但通常不需要单独开启伪装,除非有特殊需求)
   firewallcmd permanent addforwardport=port=3306:proto=tcp:toaddr=192.168.1.2:toport=13306
   firewallcmd reload
 
 
   注意:在实际操作中,端口转发可能需要更复杂的配置,包括确保目标服务器能够接受来自防火墙的转发流量。
 
综上所述,firewallcmd是一个功能强大的防火墙配置工具,它提供了丰富的选项来管理和控制进出网络的数据流。通过合理使用这些选项,可以有效地保护系统免受未经授权的访问和攻击。
 
nat123映射怎么用?超详细步骤,外网访问内网轻松搞定
nat123域名怎么用?两种方式轻松搞定
nat123怎么用?简单几步实现内网穿透
内网穿透工具对比:nat123、花生壳与轻量新选择
远程访问内网很简单:用对工具,一“箭”穿透
ngrok下载完全指南:从入门到获取客户端
内网远程桌面软件:穿透局域网边界的数字窗口
从外网远程访问内网服务器的完整方案
Windows Server 2008端口转发完全教程:netsh命令添加/查看/删除/重置
为什么三层交换机转发比Linux服务器快?转发表硬件加速的秘密