最常用的防火墙命令有哪些?,具体怎么设置

防火墙命令是系统管理员和安全运维人员调度网络策略的核心手段,熟练使用iptables、firewalld、netsh等命令行工具,才能实现精确到规则级的流量管控。

Linux防火墙命令体系:iptables与firewalld实操对比

Linux环境下防火墙命令主要分为传统的iptables和现代化的firewalld(firewall-cmd),两者底层均基于netfilter,但管理方式差异明显,实际部署需根据发行版和运维习惯选择。

关于obs连接超时.请确保已经配置了一个有效的流媒体服务并且没有防火墙阻止连接问题的解决方法之一
加载中
关于obs连接超时.请确保已经配置了一个有效的流媒体服务并且没有防火墙阻止连接问题的解决方法之一

iptables传统命令详解

iptables直接操作内核netfilter规则表链,日常操作为:

  • 查看规则及包计数:iptables -L -n -v
  • 按链查看:iptables -L INPUT -n -v
  • 放行TCP 80端口:iptables -A INPUT -p tcp --dport 80 -j ACCEPT
  • 放行特定网段SSH:iptables -A INPUT -s 10.0.0.0/24 -p tcp --dport 22 -j ACCEPT
  • 更改默认入站策略为拒绝:iptables -P INPUT DROP(需先放开必要端口)

规则匹配顺序为链顶至链底,-A追加末尾,-I插入指定位置,封禁高频攻击源可用-I INPUT 1置于首位。

端口转发也是常见场景:
iptables -t nat -A PREROUTING -p tcp --dport 8080 -j DNAT --to-destination 192.168.1.10:80

注意iptables规则即时生效,但对已建连接无影响。iptables -F清空所有规则,慎用。

firewalld现代命令firewall-cmd

firewalld通过firewall-cmd提供动态管理,分离运行时与永久配置,引入区域概念,默认public。

基本操作:

  • 查看默认区域:firewall-cmd --get-default-zone
  • 开放服务:firewall-cmd --add-service={http,https} --permanent
  • 开放端口:firewall-cmd --add-port=8080/tcp --permanent
  • 重载规则:firewall-cmd --reload
  • 查看已开放资源:firewall-cmd --list-servicesfirewall-cmd --list-ports

精细访问控制通过rich-rule实现,例如拒绝特定IP:

最常用的防火墙命令有哪些?,具体怎么设置

firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=192.168.1.100 reject'

提升安全基线可切换默认区域至drop(仅允许明确放行):
firewall-cmd --set-default-zone=drop

行业共识建议日常调试使用无--permanent的临时规则,确认无误后再转为持久配置,避免误操作影响运行环境。

Windows防火墙命令批处理:netsh advfirewall精准管控

Windows高级安全防火墙通过netsh命令行支持完整配置,适合远程管理、批量部署和自动化运维。

常用netsh advfirewall命令

  • 查看所有配置文件状态:netsh advfirewall show allprofiles
  • 启用防火墙:netsh advfirewall set allprofiles state on
  • 入站放行端口3389:netsh advfirewall firewall add rule name="RDP" dir=in action=allow protocol=TCP localport=3389
  • 出站禁用某程序:netsh advfirewall firewall add rule name="BlockApp" dir=out action=block program="C:bad.exe"
  • 入站允许源IP段:netsh advfirewall firewall add rule name="AllowSubnet" dir=in action=allow remoteip=192.168.1.0/24

使用show rule name=xxx verbose查看详细属性。

批处理脚本应用场景

将多条命令写入.bat,通过计划任务每日更新黑名单:

@echo off
netsh advfirewall firewall delete rule name="BlockList"
netsh advfirewall firewall add rule name="BlockList" dir=in action=block remoteip=203.0.113.1,198.51.100.2

备份与还原:

  • 导出:netsh advfirewall export "C:fwbackup.wfw"
  • 导入:netsh advfirewall import "C:fwbackup.wfw"

根据运维实践经验,将防火墙命令嵌入初始化脚本可确保新部署设备策略一致,规避手工遗漏。

防火墙命令封禁IP与端口限流细节

DDoS或暴力破解发生时,通过防火墙命令行封禁恶意IP是最直接手段。

iptables封禁与限速

单IP封禁:
iptables -I INPUT -s 10.20.30.40 -j DROP

最常用的防火墙命令有哪些?,具体怎么设置

限制SSH新连接频率(30秒内超5次封禁):

iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --set
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 30 --hitcount 5 -j DROP

查看recent列表:cat /proc/net/xt_recent/SSH

端口限流可使用hashlimit模块,如限制HTTP请求速率:
iptables -A INPUT -p tcp --dport 80 -m hashlimit --hashlimit-above 200/sec --hashlimit-mode srcip --hashlimit-name http -j DROP

firewalld封禁IP

添加丰富规则拒绝源IP:
firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=10.20.30.40 reject'

同样支持日志记录,添加log prefix="BLOCK: "便于审计,删除时使用remove-rich-rule

Windows下封禁IP

netsh advfirewall firewall add rule name="BlockAttacker" dir=in action=block remoteip=10.20.30.40

多IP逗号分隔,整段网段写remoteip=10.20.30.0/24,查看封禁列表:netsh advfirewall firewall show rule name=BlockAttacker verbose

防火墙命令的持久化保存与自动加载

内存规则重启即失,持久化是运维管理不可或缺的环节。

iptables持久化方案

Debian/Ubuntu:

  • 安装:apt install iptables-persistent
  • 保存:netfilter-persistent save
  • 开机自动加载:netfilter-persistent服务执行restore;单次手动恢复:iptables-restore < /etc/iptables/rules.v4

RHEL/CentOS:

  • 保存:iptables-save > /etc/sysconfig/iptables
  • 通过systemctl enable iptables并确认文件存在,开机自动加载

规则变更后应立即执行保存命令,避免因计划内或意外重启丢失配置。

firewalld配置持久

firewalld天然分离runtime与permanent,加--permanent的参数写入/etc/firewalld/zones/,也可将当前运行时配置同步为持久:
firewall-cmd --runtime-to-permanent

最常用的防火墙命令有哪些?,具体怎么设置

查看各zone持久配置:ls /etc/firewalld/zones/,手动编辑XML文件后需执行firewall-cmd --reload

Windows防火墙策略备份与组策略

本地多机可通过脚本执行netsh advfirewall export生成模板,结合域组策略统一分发,组策略中配置高级防火墙后,客户端执行gpupdate /force同步,据统计,采用脚本化持久管理可大幅降低因策略缺失导致的安全事件。

防火墙命令是纵深防御体系的实操基础,从单机到大规模集群,命令行工具提供的可编程性远超图形界面。

防火墙命令常见问题解答

iptables规则保存后重启不生效如何排查?

首先确认保存文件路径和加载服务正常,Debian系列检查netfilter-persistent服务状态为enabled;RHEL系列确认iptables服务启动且/etc/sysconfig/iptables文件存在,手动执行iptables-restore < 文件路径测试能否恢复,若仍无效,查看/var/log/syslog/var/log/messages定位服务启动错误,部分云环境需额外关闭ufw或firewalld避免冲突。

firewalld运行时报错COMMAND_FAILED如何解决?

多数候原因是rich-rule语法错误或与服务冲突,先执行firewall-cmd --check-config校验XML语法,调试时使用临时规则(不加--permanent),确认无误再转为永久,与docker或libvirt共存时,它们会自行管理iptables,建议在firewalld中调整zone或使用direct规则,或将docker网桥列入trusted区域。

netsh advfirewall如何区分入站和出站规则?

通过dir=in指定入站,dir=out指定出站,add rule时必须明确方向,查看规则时使用show rule name=xxx verbose会显示方向、协议、端口、远程地址等全部属性,Windows防火墙默认所有入站阻止,出站允许,修改出站规则通常用于限制内部程序外联,此时需计划好出站放行清单以避免业务异常。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/495772.html

(0)
帝联CDN怎么样?,帝联CDN每月收费标准及节点速度如何
上一篇 2026年7月15日 02:03
CDN命中率低的原因是什么?如何提升CDN命中率?
下一篇 2026年7月15日 02:10

相关推荐

  • 服务器怎么打开本地文件?服务器读取本地文件的方法

    服务器打开本地文件的核心在于明确“本地”的定义并建立安全的网络传输通道,实质是解决远程主机与目标文件之间的物理隔离或逻辑权限问题,通常通过远程桌面映射、文件上传或网络共享协议实现,在服务器运维与开发场景中,文件传输与访问是日常操作的高频痛点,许多用户在初次接触服务器时,会产生“服务器怎么打开本地文件”的疑问,这……

    2026年3月19日
    12400
  • python pathjoin怎么用?,如何实现路径拼接?

    在Python中处理文件路径时,pathjoin(即os.path.join或pathlib.Path.joinpath)是推荐的跨平台拼接方法,它自动处理操作系统路径分隔符,防止硬编码斜杠带来的兼容性问题,对于新项目,行业共识推荐使用pathlib模块,其面向对象风格更直观且功能丰富,python pathj……

    2026年7月21日
    500
  • 大陆游戏服务器有哪些,2026年哪个最稳定?

    大陆游戏服务器主要分为物理服务器、云服务器和边缘加速节点三大类,选择时需结合游戏类型、玩家分布及合规要求,其中持牌自营机房和全牌照资质是保障稳定运营的关键门槛,游戏服务器的核心类型与适用场景物理服务器:传统重度游戏的首选物理服务器指整台硬件设备独享资源,不经过虚拟化层,对于MMORPG、大型FPS等需要稳定计算……

    2026年8月4日
    1700
  • 服务器如何开启多个远程桌面连接,多用户远程桌面怎么设置

    要实现服务器多用户同时远程登录,核心在于修改本地组策略中的远程桌面连接限制数量,并正确配置用户权限与会话管理策略,默认情况下,Windows Server限制为仅允许一个远程会话,这严重阻碍了运维效率,通过调整“限制连接的数量”策略、创建多个独立用户账户以及合理设置会话超时规则,可以在不增加硬件成本的前提下,合……

    2026年3月28日
    10700
  • 服务器控制器是什么?服务器控制器品牌排行

    服务器控制器作为数据中心与高性能计算环境的核心枢纽,其稳定性与处理效率直接决定了整个IT架构的运行质量,高效能的控制器不仅能实现硬件资源的精准调度,还能通过智能化管理大幅降低运维成本,是保障业务连续性的关键设备,在构建现代化机房时,选择与配置适宜的控制器,已成为提升企业核心竞争力的基础性工作,核心功能与架构解析……

    2026年3月8日
    10200
  • 服务器操作系统下载哪里找?2026官方最新版怎么获取?

    选择服务器操作系统是构建IT基础设施的基石,直接关系到系统的稳定性、安全性以及后续的维护成本,对于企业级用户而言,核心结论在于:必须根据业务需求精准选择系统版本,并严格通过官方渠道获取镜像文件,同时必须进行数字签名校验以确保完整性, 任何非官方渠道的安装包都可能植入后门或存在文件损坏,导致生产环境面临重大安全风……

    2026年2月28日
    17100
  • 服务器如何开启远程桌面组策略?远程桌面设置方法详解

    服务器开启远程桌面组策略的核心在于通过组策略编辑器精确配置用户权限与安全层设置,这是实现安全、高效远程管理的必经之路,直接在组策略中定义谁有权限连接、采用何种加密强度以及会话超时时间,比单纯依赖系统属性设置更具可控性和安全性,能够有效防止暴力破解和未授权访问,为何必须通过组策略配置远程桌面许多管理员习惯于在“系……

    2026年3月27日
    10000
  • 个人可以注册域名地址吗?个人注册域名需要什么条件

    个人完全可以注册域名地址,且流程简单、成本极低,通常只需提供真实身份信息并选择正规注册商即可快速完成,在互联网的浩瀚海洋中,域名就像是你数字世界的门牌号,很多人误以为只有大公司或企业才能拥有专属的网址,其实这是一个巨大的认知误区,对于个人博主、自由职业者、开发者或者仅仅是想拥有一个独立网络空间的普通人来说,注册……

    2026年6月13日
    2900
  • 麒麟服务器网卡信息具体有哪些?,怎么查看网卡信息?

    麒麟服务器网卡信息具体包括接口名称、MAC地址、IP配置、驱动状态、速率及双工模式等核心参数,通过系统命令或配置文件即可全面获取,麒麟服务器网卡信息的核心构成物理网卡与逻辑网卡麒麟服务器基于Linux内核,网卡分为物理网卡(如eth0、ens33)和虚拟网卡(如bond、vlan、docker网桥),物理网卡对……

    2026年8月22日
    600
  • 服务器如何提取raid驱动,服务器raid驱动怎么安装

    服务器RAID驱动提取的核心在于利用现有操作系统环境或WinPE应急维护系统,通过设备管理器直接导出驱动文件,或使用第三方专用工具扫描备份,这是解决服务器重装系统后无法识别硬盘、蓝屏报错的最快路径,无需重新下载或盲目尝试通用驱动,核心结论:直接提取优于重新下载在服务器运维场景中,由于硬件型号迭代快、官方驱动下载……

    2026年3月11日
    13800

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注