重构大版本更新
一口气全面统一博客样式,移除部分冗余导航页面,更专注内容展示。
密钥登录、改端口、fail2ban 封禁,把 SSH 这个大门焊死的三层防线。
SSH 是服务器的正门,也是全网扫描器最爱的目标。这篇把门锁好。
密码会被爆破,4096 位密钥不会。
# 本地机器生成密钥对ssh-keygen -t ed25519 -C "my-server"
# 把公钥装到服务器上ssh-copy-id root@your-server
# 之后登录不再要密码ssh root@your-server然后编辑 /etc/ssh/sshd_config:
PasswordAuthentication no # 禁用密码登录PermitRootLogin prohibit-password # root 只允许密钥登录
systemctl restart sshd改之前务必先开一个新终端测试密钥登录成功,再关旧终端——别把自己锁外面。
# 改默认端口(22 → 22222,扫描器大多只扫 22)Port 22222
# 防火墙只放行需要的端口ufw allow 22222/tcpufw enableapt install fail2ban -y
# 配置 sshd jail:5 次失败封 24 小时cat > /etc/fail2ban/jail.d/sshd.local << 'EOF'[sshd]enabled = truemaxretry = 5findtime = 600bantime = 86400EOF
systemctl restart fail2banfail2ban-client status sshd # 看战果:已封多少 IP# 把服务器上的 5432(PostgreSQL)映射到本地ssh -L 5432:127.0.0.1:5432 root@your-server
# 本地直接连,流量全程加密psql -h 127.0.0.1 -U postgres数据库不暴露公网,也能远程管理——这是 SSH 最被低估的用法。
三层防线:密钥登录(治本)→ 改端口 + 防火墙(降低挨打概率)→ fail2ban(自动还手)。做完这三步,SSH 面板的爆破日志会安静很多。