Linux 防火墙别踩坑!90% 人都没搞对
宝子们!Linux 防火墙这东西,我之前踩的坑能凑一桌麻 将了!90% 的人都觉得它就是 iptables 随便配配,但其实全是雷!
先掰扯清楚基础坑:Linux 防火墙不是只有 iptables 哈!它是 netfilter(内核层)+iptables(用户层工具)+ 连接跟 踪这些组件凑的 —— 我之前光改 iptables 没管 netfilter,写的规则根本不生效,白忙活一下午!
还有状态过滤和无状态过滤别搞混:无状态包 过滤虽然快,但只能按端口 / IP 拦,像 HTTP 这种动态协议根本防不住;状态过滤能认 TCP 连接状态(比如三次握手),连 Web 攻击都能拦,之前用无状态防不住 SQL 注入,踩大雷!
醉致命的坑是默认策略!很多人为了省事设 “默认允许”,相当于家门敞着只拦显眼的坏人 —— 正确操作是设 “默认拒绝”,只放信任的流量,虽然配着麻烦,但至少不会把后门留着!
“驳回” 和 “禁止” 也别瞎选!驳回会给黑客回错误信息,等于喊 “我在这”,还占流量;禁止是直接沉默,黑客连你服务器在不在都不知道,听我的选禁止!
入站过滤别漏了远程地址!像 127.0.0.1(本地回环)、局域网地址、10 开头的 A 类私有 IP,要是从外网发来这些地址,绝 对是 IP 欺骗,直接拦死!我之前没拦,被假本地 IP 扫了端口,吓出一身汗!
端口过滤也别搞反:本地目标端口是你开的服务(比如 Web 的 80),远程端口是对方的随机端口,别把远程端口设成 80,不然正常用户都进不来!
给你们个保命小操作:改规则前先备份(cp /etc/sysconfig/iptables/iptables.bak),然后设默认拒绝:iptables -P INPUT DROP,再放自己的 IP 访问:iptables -A INPUT -s 你的IP -j ACCEPT,稳得很!
Linux 防火墙看着复杂,其实避坑就是搞懂组件、默认策略、过滤规则这几点!你们配防火墙遇过啥离谱坑?下面一起交流~