主题:troubleshooting
5 篇 · 合计 10,732 字
- iptables、nftables 与 legacy 表:一次封禁规则「消失」的排查
现代发行版里 iptables 命令指向的其实是 iptables-nft,规则被翻译进 nftables 表;fail2ban 的链则要到第一次封禁才创建。常有人说规则不见了,多半是观测后端选错,或链本就还没被创建。
- SSH 主机密钥漂移:声明了三个,只有一个存在
sshd_config 里声明了 ed25519/ecdsa/rsa 三种 HostKey,但实际只有 RSA 密钥文件存在,导致大量老客户端在密钥交换阶段就失败。记录判断依据,以及分批启用新主机密钥时避免把自己锁在外面的做法。
- 每次开机都报 swap 单元已存在——一次 fstab 重复项排查
systemd-fstab-generator 每次开机都失败,原因只是 fstab 里多了一行。记录用生成器二进制复现、用时间窗对比日志来证明修复的方法,以及一处我自己的取证失误。
- Docker 网络排查手册:容器连不上时按什么顺序看
容器连不上其实是三条互不相干的路径:容器间靠嵌入式 DNS 解析服务名,宿主访问靠端口发布加 DNAT,外部访问再叠一层防火墙。按网络成员、监听地址、NAT 规则的顺序查,多数问题在前两步就能定位。
- 因果对照:证明「是这条规则挡住的」
「加了规则之后就连不上了」只证明时间相关,不证明因果。用三组对照把它升级为因果:有规则时阻断、移除同一条规则后放行、计数器增量落在该规则上;并说明时间窗对比为何必须确认窗口内确有触发事件,以及两类常见的取证失误。