Linux防火墙支持哪些协议
导读:Linux防火墙支持的协议概览 Linux 的防火墙能力来自内核的 netfilter 框架,常见的前端工具包括 iptables/nftables 与 firewalld。从协议角度看,既可以按传输层协议精确匹配,也可以通过“服务/端口”...
Linux防火墙支持的协议概览
Linux 的防火墙能力来自内核的 netfilter 框架,常见的前端工具包括 iptables/nftables 与 firewalld。从协议角度看,既可以按传输层协议精确匹配,也可以通过“服务/端口”方式放行,两类方式本质上都依托 netfilter 的匹配与动作机制。
按协议类型匹配
- 基础传输层协议
- TCP、UDP(最常用,端口匹配的基础)
- ICMP(如 ping;在 CentOS 7 等环境还常见 ICMPv6)
- UDPLite
- 隧道/封装与移动协议
- ESP(IPsec 封装安全载荷)
- AH(认证头)
- GRE(通用路由封装)
- SCTP(流控制传输协议)
- MH(移动 IPv6 的逐跳选项,部分发行版如 CentOS 7 支持)
- 特殊与辅助
- ALL(匹配所有协议,不区分类型)
- 说明:是否显示如 ICMPv6/MH 取决于内核与工具链版本及模块加载情况。
按服务与端口放行
- 基于“服务”的抽象(更易读、可移植)
- 常见服务与默认端口示例:HTTP 80、HTTPS 443、SSH 22、DNS 53、FTP 21、SMTP 25、POP3 110、IMAP 143、MySQL 3306、PostgreSQL 5432、NTP 123、LDAP 389、RDP 3389 等。
- 示例(firewalld):firewall-cmd --add-service=http(临时);加 –permanent 为永久生效,变更后用 firewall-cmd --reload 使永久配置生效。
- 基于“端口/协议”的精确放行
- 示例(firewalld):firewall-cmd --add-port=80/tcp --permanent
- 示例(iptables):iptables -A INPUT -p tcp --dport 22 -j ACCEPT
- 端口范围与多端口:如 22:80(范围)、22,80(离散多端口,配合 multiport 扩展)。
工具与协议支持差异
- iptables:直接面向 netfilter,使用 -p 协议名 指定协议,配合扩展模块可实现端口、多端口、状态、速率等复杂匹配;协议名集合与内核/模块相关(如 tcp/udp/icmp/esp/ah/sctp/gre 等,部分系统含 icmpv6/mh)。
- nftables:作为 iptables 的继任者,语法不同但同样工作在 netfilter 之上,协议匹配能力与 iptables 相当或更灵活(取决于规则写法与加载的匹配/目标模块)。
- firewalld:基于区域(zone)的动态管理工具,底层仍调用 iptables/ip6tables/ebtables 等;对使用者暴露“服务/端口/区域”等高层抽象,便于按服务名放行常见协议与应用。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Linux防火墙支持哪些协议
本文地址: https://pptw.com/jishu/784039.html
