防范链路窃听需从网络栈底层加固:禁用icmp重定向与源路由、启用严格反向路径过滤、抑制无意义icmp响应、收紧连接跟踪参数,使窃听失去上下文与立足点。

防范链路窃听,不能只靠“加密了就行”,而要从网络栈底层入手——让攻击者即使拿到原始数据包,也难以复原通信上下文、无法伪造身份、更难持续混入流量。系统网络栈参数调节的核心目标不是“堵住所有耳朵”,而是“让窃听失去意义”:切断重放路径、压缩可探测面、削弱中间人立足点。
关闭ICMP重定向与源路由,断掉劫持跳板
ICMP重定向和IP源路由是经典中间人攻击的基础设施。普通服务器完全不需要响应或转发这类报文,留着就是给攻击者铺路。
- 编辑 /etc/sysctl.conf,添加四行(必须全设,缺一不可):
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0 - 同理禁用源路由:
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.accept_source_route = 0 - 执行 sudo sysctl -p 生效,验证命令:
sysctl net.ipv4.conf.all.accept_redirects 返回 0 即成功
启用严格反向路径过滤(rp_filter),防IP欺骗注入
rp_filter=1 要求进包的入口接口必须是该源IP路由出去的“对称路径”。这能直接拦截大量伪造源IP的监听试探包和ARP欺骗流量,尤其在多网卡或虚拟化环境中效果显著。
一款AI工具,主要用于使用 Codex CLI 进行深度网络搜索,适用于需要多源综合分析的复杂查询。当 `web_search`(Brave)返回结果不足,或用户……时使用,适合需要提升相关任务效率的用户。
- 设置全局严格模式:
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1 - 注意:若使用策略路由或多宿主环境,可改用宽松模式 rp_filter = 2,但需配合 conf.*.log_martians = 1 记录异常包用于审计
抑制广播与错误响应,压缩窃听信息源
链路层窃听常依赖ICMP反馈构建拓扑图或判断存活状态。减少无意义响应,等于抹掉攻击者的“地图草稿”。
- 关广播Ping(防SMURF放大):
net.ipv4.icmp_echo_ignore_broadcasts = 1 - 禁默认ICMP错误响应(如端口不可达、超时),除非业务明确需要:
net.ipv4.icmp_ignore_bogus_error_responses = 1 - 关闭ICMP时间戳与信息请求(易被用于时钟指纹识别):
net.ipv4.icmp_timestamps = 0
限制连接跟踪粒度,降低会话暴露风险
conntrack 表本身不加密,但若攻击者已控制某台中间设备,大量连接哈希条目可能泄露通信模式甚至会话生命周期。适度收紧可减少信息泄漏面。
- 缩小 conntrack 表上限(按实际并发需求设,避免盲目调大):
net.netfilter.nf_conntrack_max = 65536 - 缩短空闲TCP连接老化时间(加快清理):
net.netfilter.nf_conntrack_tcp_timeout_established = 432000(5天→建议调为 3600–14400 秒) - 禁用对非SYN包的新连接创建(防绕过):
net.netfilter.nf_conntrack_tcp_be_liberal = 0
这些参数不替代加密,但能让加密更有效——它把“窃听可行”的前提悄悄拿掉。配完别忘了测试连通性,尤其是 traceroute、MTU发现等依赖ICMP的功能是否仍可用。不复杂,但容易忽略。










