经历了刚才的“一键脚本”灾难,给纯净的 netboot 镜像打底、防误删、并补齐现代化的系统工具是非常必要的。netboot 镜像为了极致精简,去掉了大量我们日常排障必不可少的包,而且它的依赖链非常脆弱。

为了打造一个“防弹”的 Debian 13 基础环境,建议按照以下几个维度进行加固和补齐。

1. 免疫 autoremove:固化核心网络依赖

这是防止再次发生 dhclient 被莫名其妙卸载的关键。我们需要明确告诉 APT,这些包是我们手动安装的,绝不允许作为孤儿包被自动清理:

# 将底层网络包标记为手动安装
apt-mark manual isc-dhcp-client iproute2 systemd-resolved iptables kmod udev

# 安装基础的证书和下载工具(netboot 经常漏掉基础 CA)
apt update
apt install -y ca-certificates curl wget gnupg2 apt-transport-https lsb-release sudo tzdata

2. 补齐网络与排障工具链

既然你经常涉及复杂的网络路由、VPN 隧道和多节点通信,这套标准的网络瑞士军刀是必须常驻系统的:

apt install -y \
    dnsutils \
    iputils-ping \
    traceroute \
    mtr-tiny \
    tcpdump \
    iperf3 \
    net-tools \
    socat \
    ethtool

(注:装完 dnsutils 后,你就拥有了 dig 和 nslookup,排查类似刚才的 DNS 劫持问题会非常直观。)

3. 部署现代化的 CLI 生产力工具

Debian 的默认仓库里已经包含了很多高性能、基于 Rust 重写的现代命令行工具。相较于传统的 GNU 工具,它们的资源占用极低且输出更直观,非常适合直接作为默认工具链:

apt install -y \
    btop \
    ripgrep \
    fd-find \
    bat \
    eza \
    fzf \
    helix
  • btop:全面替代 top 和 htop 的资源监视器。
  • ripgrep (rg) & fd-find (fd):极速替代 grep 和 find。
  • eza & bat:具有语法高亮和 Git 集成的 ls 和 cat 现代替代品。
  • helix (hx):如果你更倾向于现代、开箱即用的模态编辑器,可以直接用 helix 替代传统的 vim 或 nano 进行配置文件修改。

4. 基础安全加固策略

SSH 访问控制

检查你的 /etc/ssh/sshd_config。在 OpenSSH 的配置逻辑中,始终遵循“First Match Wins”(首次匹配生效)的原则。确保全局的拒绝策略写在前面,或者通过 Match 块精确控制。
建议直接关闭密码登录,只允许公钥验证:

PermitRootLogin prohibit-password
PasswordAuthentication no

修改后执行 systemctl reload sshd 生效。

防火墙与 Fail2Ban (系统日志后端)

在 Debian 13 中,传统的基于文本日志的 Fail2Ban 匹配模式已经显得过时且容易漏判。建议安装后,直接让其对接 systemd-journald 后端:

apt install -y fail2ban nftables

创建或修改本地配置文件 /etc/fail2ban/jail.local,加入以下核心配置,让它直接从 journal 中精准抓取恶意的 SSH 爆破:

[DEFAULT]
# 使用更高效的 nftables 而不是 iptables
banaction = nftables-multiport
banaction_allports = nftables-allports
# 强制使用 systemd 后端读取日志
backend = systemd

[sshd]
enabled = true
port    = ssh
filter  = sshd
maxretry = 3
findtime = 10m
bantime = 24h

执行 systemctl restart fail2ban 让新的过滤规则生效。

5. 限制 APT 的“自作主张”

很多第三方软件(或者脚本)在安装时,会顺带拉取一大堆你根本不需要的 Recommends(推荐包)。为了保持系统的绝对干净,建议修改 APT 的默认行为。

创建一个配置文件:

echo 'APT::Install-Recommends "false";' > /etc/apt/apt.conf.d/99no-recommends
echo 'APT::Install-Suggests "false";' >> /etc/apt/apt.conf.d/99no-recommends

这样以后再执行 apt install 时,系统只会严格安装必要的硬依赖,不再乱塞私货。

完成以上步骤后,你的这台 Debian 13 基础底座就已经非常扎实了,足以安全地承载 Docker 容器环境、Caddy 反代或者是各类内网穿透节点。