Lesson 28 · 约 18 分钟 · 冲刺补缺
下午卷怎么填:iptables 命令 + 拓扑设备名
开场:下午卷要的是「写得出」,不是「说得清」
第 23 课 §八冲刺缺口的最后一块,就是 iptables 命令模板 + 拓扑填设备名。 第 5 课已经会认包过滤 / 状态检测 / DMZ / VPN; 第 24 课已经会把网闸和防火墙拆开。 机考下午仍然是「给拓扑、给端口、给一句 Linux」,要你填命令或设备名,不是写防火墙原理短文。
第 27 课已把法律法规补上。本课专练答题卡上的写法:命令抄对、位置填对。
本课只讲防御向考试模板(默认拒绝、按端口放行、拓扑分区)。不讲如何绕过防火墙、不写攻击步骤。
零、先复习再开新
R1 · 「网络日志留存不少于六个月」应首先引用哪部法?
答案 B。日志不少于六个月在现行《网络安全法》第 23 条第三项(教材常见原第 21 条)。数安法管分类分级,个保法管同意。第 27 课易错点。
R2 · DMZ(隔离区)通常出现在哪种防火墙体系结构中?
答案 B。屏蔽子网 = 外过滤设备 → DMZ → 内过滤设备 → 内网。DMZ 只在这一种结构里作为独立网段出现。第 5 课。
一、先认表:filter 的三条链
下午卷写 Linux 防火墙,默认考的是 iptables 的 filter 表。
手册写明:不写 -t 时就是 filter;内建三条链。
| 链 | 管什么包 | 下午卷怎么填 |
|---|---|---|
| INPUT | 目的是本机套接字(别人访问这台机上的服务) | 放行 SSH/Web 几乎都写在 INPUT |
| OUTPUT | 本机进程发出的包 | 题干没说限制出站,通常不要乱填 |
| FORWARD | 路过本机再转发(这台机当路由器/网关) | 只有「转发/网关」才写 FORWARD |
口诀(filter 三链分工):进本机走 INPUT,本机发出走 OUTPUT,路过转发走 FORWARD。
易错:看见 80/443 就写 FORWARD。题干若是「这台 Linux 主机开放网站」,包的目的是本机 → INPUT。
PREROUTING / POSTROUTING 属于 nat 表,默认策略题不要往那儿填。
二、默认策略:ACCEPT 是黑名单,DROP 是白名单
每条链都有默认策略(-P / --policy):链上规则都没命中时,按策略处理。
手册规定:策略目标只能是 ACCEPT 或 DROP,不能把 REJECT 写成 -P。
| 命令 | 思路 | 考试说法 |
|---|---|---|
iptables -P INPUT ACCEPT |
默认放行,再按名单拦截 | 黑名单 |
iptables -P INPUT DROP |
默认拒绝,再按名单放行 | 白名单(机考更爱考) |
口诀(默认策略黑白名单):默认 ACCEPT 是黑名单思路,默认 DROP 是白名单思路;先写下放行名单,再用 DROP 把其余兜住。
DROP 和 REJECT 差在规则目标,不在默认策略:
规则里
-j DROP silently 丢弃;-j REJECT 会回一个错误包(手册 TARGETS)。
下午卷默认策略空格,优先填 DROP,不要写成 -P INPUT REJECT。
三、必背命令模板(按题干端口抄)
典型题干:Linux 主机只允许远程管理与网站访问,其余入站拒绝。答题卡按下面抄,端口以题干为准。
| 要做的事 | 默写这一行 |
|---|---|
| 入站默认拒绝(白名单底座) | iptables -P INPUT DROP |
| 放行 SSH(TCP 22) | iptables -A INPUT -p tcp --dport 22 -j ACCEPT |
| 放行 HTTP(TCP 80) | iptables -A INPUT -p tcp --dport 80 -j ACCEPT |
| 放行 HTTPS(TCP 443) | iptables -A INPUT -p tcp --dport 443 -j ACCEPT |
| 80 与 443 写成一条(可选) | iptables -A INPUT -p tcp -m multiport --dports 80,443 -j ACCEPT |
口诀(下午卷放行模板):先把 INPUT 默认改成 DROP,再追加放行二十二、八十、四百四十三;协议写 tcp,端口写 dport,动作写 ACCEPT。
生产环境常会再放行回程连接,那是运维加固,不是本课必填项。
下午卷题干给哪些端口就写哪些,不要额外发明模块名去「显得专业」。
四、常用参数:改链、改规则
| 参数 | 做什么 | 考试提醒 |
|---|---|---|
-A / --append | 追加到链尾 | 最常填 |
-I / --insert | 插入;不写序号则插到链头 | 和 -A 别写反 |
-D / --delete | 按规则或序号删除 | 删错行会放行缺口 |
-L / -nL | 查看;-n 不反查域名 | 只看不改 |
-F / --flush | 清空链上规则 | 不清默认策略本身 |
-P | 设置内建链默认策略 | 只能 ACCEPT / DROP |
-p | 协议(tcp / udp / icmp…) | 写端口前先写协议 |
--dport | 目的端口 | SSH 是 22 不是 21 |
-j | 动作:ACCEPT / DROP / REJECT | 策略用 DROP,规则才可用 REJECT |
口诀(iptables 常用参数):追加用 A,插入用 I,删除用 D,查看用 L,清空用 F;协议写 p,目的端口 dport,跳转动作写 j。
规则按从上到下第一条命中生效。所以「先放行再 DROP」是白名单思路:ACCEPT 写在链上,未命中的交给默认 DROP。
不要理解成「命令必须后写 DROP 才执行」——
-P 改的是兜底策略,随时可以设。
五、拓扑填空:设备名比口号值钱
屏蔽子网标准摆法(与第 5 课同一张图,本课练的是空格里填什么):
外网Internet
→
边界墙 / 网闸第一道关
→
DMZWeb / 邮件
→
内防火墙第二道关
→
内网OA / 数据库
外网 ──► 边界防火墙或网闸 ──► DMZ(Web、邮件)──► 内防火墙 ──► 内网(OA、库)
| 题干信号 | 空格填 | 别填成 |
|---|---|---|
| 对外网站、邮件、DNS、公众能访问 | DMZ | 内网、外网网段 |
| OA、业务库、仅内部使用 | 内网 | DMZ、边界防火墙本身 |
| 「近物理隔离」「不直连」「摆渡 / 单向」 | 网闸 | 防火墙、VPN、IDS |
| 按端口过滤、可开 80/443、逻辑隔离 | 防火墙 | 网闸(网闸不靠对外开端口隔离) |
| 旁路监测、不阻断 | IDS | IPS(IPS 串联可阻断,仍不是网闸) |
口诀(下午卷拓扑填空):外网先过边界墙或网闸,网站邮件放进 DMZ,OA 和库放在内网;要近物理隔离就填网闸,只要逻辑过滤就填防火墙。
六、和第 5 课衔接:概念对了,命令才能写对
- 状态检测 ≠ 包过滤:维护会话表、动态放行应答 → 状态检测;只看 IP/端口、无状态 → 包过滤。iptables 默认考的是包过滤写法,不要在命令空格里写「AH」或「ESP」。
- DMZ 只在屏蔽子网:双重宿主、屏蔽主机都没有这块独立隔离区。
- VPN 解决的是加密隧道,不是拓扑里的隔离设备;远程接入题才选 SSL VPN / IPSec。
口诀(状态检测与包过滤):只看包头不记会话是包过滤,维护会话表才是状态检测。
七、动手练一练
Q1 · filter 表中,处理「目的是本机套接字」的链是?
答案 B。iptables(8):INPUT = destined to local sockets。PREROUTING 在 nat 表,不是 filter 默认三链的答题空。
Q2 ·
iptables -P INPUT ACCEPT 对应哪种策略思路?答案 B。默认 ACCEPT = 黑名单思路;默认 DROP 才是白名单。见 exam-2023-2025 §三与 iptables(8) 链策略。
Q3 · 要把 INPUT 的默认策略改成拒绝,应写哪条?
答案 B。
-P 才是默认策略。 -A … -j DROP 只是链上一条规则;-F 清空规则但不等于设置策略;-L 只查看。Q4 · 放行本机 SSH(TCP 22),下午卷最常填的是?
答案 A。入站到本机服务 → INPUT;SSH 是 TCP 22;动作用 ACCEPT。不要写成 UDP、FORWARD 或 ICMP。
Q5 ·
-A 与 -I 的正确差别是?答案 B。手册:
-A append to the end;-I 不写序号则 insert at the head。清空是 -F,策略是 -P,查看是 -L。Q6 · In the filter table, which chain inspects packets destined for local sockets?
答案 B。iptables(8) filter table: INPUT = destined to local sockets;FORWARD = routed through the box;OUTPUT = locally generated. PREROUTING is a nat-table chain.
Q7 · 对外官网 Web 与仅内部使用的市民库,应分别放在?
答案 B。对外开门放 DMZ,内部自用放内网。库放 DMZ 等于把数据暴露在可被公网摸到的区域。
附加题(下午卷风格)· 点击展开填空答案
某市政务网拓扑留了三个空:(1)外网与对外 Web 之间的第一道关;(2)对外 Web / 邮件所在网段;(3)OA 与市民库所在网段。另要求:Linux 门户主机只允许 SSH、HTTP、HTTPS 入站,其余入站拒绝。题干强调「内外网不直连、近物理隔离」时,第一道关应填什么?
① 拓扑:外网 → 网闸(近物理隔离;若只说端口过滤则填边界防火墙)→ DMZ(Web / 邮件)→ 内防火墙 → 内网(OA / 库)。
② 命令(白名单模板,端口按题干):
也可把 80、443 写成
③ 不要写
② 命令(白名单模板,端口按题干):
iptables -P INPUT DROPiptables -A INPUT -p tcp --dport 22 -j ACCEPTiptables -A INPUT -p tcp --dport 80 -j ACCEPTiptables -A INPUT -p tcp --dport 443 -j ACCEPT也可把 80、443 写成
-m multiport --dports 80,443。③ 不要写
-P INPUT REJECT;不要把 Web 和库填进同一网段;等保测评仍不等于风险评估。
八、今日任务(约 35 分钟)
- 精读 + 对照(15 分钟):阅读 第 8 章 防火墙技术 (三类防火墙与屏蔽子网,不重读 VPN),对照 iptables / 拓扑速查卡 和 2023–2025 考点 §三 Linux 防火墙。
- 默写命令(10 分钟):不看笔记写出默认 DROP + 放行 22/80/443 四行;再说一遍 filter 三链各管什么。
- 睡前回忆(5 分钟):按考点背——① filter 三链分工:进本机走 INPUT,本机发出走 OUTPUT,路过转发走 FORWARD;② 默认策略黑白名单:默认 ACCEPT 是黑名单思路,默认 DROP 是白名单思路;先写下放行名单,再用 DROP 把其余兜住;③ 下午卷放行模板:先把 INPUT 默认改成 DROP,再追加放行二十二、八十、四百四十三;协议写 tcp,端口写 dport,动作写 ACCEPT;④ iptables 常用参数:追加用 A,插入用 I,删除用 D,查看用 L,清空用 F;协议写 p,目的端口 dport,跳转动作写 j;⑤ 下午卷拓扑填空:外网先过边界墙或网闸,网站邮件放进 DMZ,OA 和库放在内网;要近物理隔离就填网闸,只要逻辑过滤就填防火墙;⑥ 状态检测与包过滤:只看包头不记会话是包过滤,维护会话表才是状态检测;⑦ 网络日志半年:日志留半年,先引网安法,不要写成数安法;⑧ 等保测评与风险评估:测评看符合性,评估看风险,两套不是同一件事。
九、本课知识从哪来
- 机考下午写法校准:2023–2025 考点分布 §三(filter 表、默认 ACCEPT=黑名单、
-P INPUT DROP、放行 22/80/443) - 《信息安全工程师教程(第 2 版)》第 8 章防火墙体系结构(屏蔽子网 / DMZ)· 清华大学出版社;精读 第 8 章
- 命令语义(本课实际打开核对):
iptables(8)
(filter 三链、
-A/-I/-D/-L/-F/-P/-p/-j、策略只能 ACCEPT/DROP); iptables-extensions(8) (--dport、-m multiport --dports); RHEL 6 Security Guide · Basic Firewall Policies (默认 DROP 再按需放行); Linux 2.4 Packet Filtering HOWTO §6 - 拓扑位置:第 5 课 / 防火墙 VPN 速查;网闸: 第 24 课
- 速查:本课速查卡 · 第 28 课口诀