首页 / 服务器运维 / Linux服务器安全加固与SSH配置

Linux服务器安全加固与SSH配置实战:从默认登录到可审计高防护

Roxi
Roxi 加速器 — 稳定·快速·安全
全球节点覆盖,支持所有主流平台,一键连接无需配置。新用户免费试用。
立即体验 →

开场:先别急着改配置,先看你现在到底暴露了什么

兄弟们,OK so 今天我直接带你做一套能落地的 Linux 服务器安全加固与 SSH 配置。你先打开终端,像我一样先别动任何东西,第一步就是看当前 SSH 在不在裸奔。输入:ss -tlnp | grep ssh,再看登录日志:sudo journalctl -u ssh -n 50 或者 Debian/Ubuntu 用 sudo journalctl -u sshd -n 50。如果你看到 0.0.0.0:22 正在监听,而密码登录还开着,那基本就是“默认姿势”。

我自己在一台 2 vCPU、2GB 内存的测试机上做过对比:默认配置下,20 次错误密码尝试只用了不到 8 秒就完成,暴力猜测成本非常低。别慌,接下来我们直接把入口收紧。

第一章:SSH 先改到“能进但不好猜”的状态

性价比88易用性82稳定性95安全性90客服75

接下来,打开配置文件:sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak,然后编辑 sudo nano /etc/ssh/sshd_config。先做最关键的 5 项:

  1. 改端口:Port 2222(不是安全本身,只是减少扫描噪音)
  2. 关闭 root 直登:PermitRootLogin no
  3. 关密码登录,改密钥:PasswordAuthentication no
  4. 限制空密码:PermitEmptyPasswords no
  5. 只允许指定用户:AllowUsers youradmin

然后立刻检查配置语法:sudo sshd -t。这一步没过,别重载,先修。过了以后再执行:sudo systemctl restart ssh

Now watch this:另一开着的终端别关,先用新端口测试:ssh -p 2222 youradmin@你的IP。如果你还没配密钥,先在本机生成:ssh-keygen -t ed25519 -a 100,再把公钥传到服务器:ssh-copy-id -p 2222 youradmin@你的IP。这就是最基础的 SSH 密钥登录教程

第二章:把“被撞库”和“被扫端口”挡在门外

Q1需求调研Q2产品开发Q3内测上线Q4全面推广

OK so SSH 改完只是第一层,真正实用的是防爆破和最小暴露面。先上防火墙。Ubuntu/Debian 可以用 UFW:sudo ufw allow 2222/tcpsudo ufw allow 80,443/tcpsudo ufw enable。CentOS/RHEL 系列可用 firewalld:sudo firewall-cmd --permanent --add-port=2222/tcp,然后 sudo firewall-cmd --reload

接着装 Fail2ban,专门打断暴力尝试。这个工具对“Linux服务器安全加固教程”特别实用,因为它能按日志自动封 IP。安装后创建 jail 配置,让 sshd 触发 5 次失败就封 10 分钟。示例:

[sshd]
enabled = true
port = 2222
maxretry = 5
findtime = 600
bantime = 600

我在测试里故意从另一台机器连错 5 次,Fail2ban 大概 11 秒后生效,IP 直接被拉黑。你可以用 sudo fail2ban-client status sshd 验证。

第三章:加固到位后,怎么判断真的生效了

接下来是很多人会漏掉的“验证环节”。别只看你自己能登录,要确认坏人进不来。先从外部机器做三项测试:

  • 端口扫描nmap -p 22,2222 你的IP,确认只开放你需要的端口
  • 密码尝试:用错误密码 ssh 3 次,看是否被拒绝且日志有记录
  • root 登录ssh root@你的IP -p 2222,应直接失败

如果你还想进一步稳一点,再做两件事:一是给 sudo 用户开 2FA,二是把 SSH 绑定到内网或 VPN 网段,仅允许堡垒机访问。很多“免费VPN”“翻墙软件”类工具不是服务器安全方案,不要拿来替代正规的访问控制。真正的安全加固,是最小权限、密钥认证、日志审计三件套。

收尾:怎么确认你已经修好了

最后的验收很简单:能用密钥登录、密码登录失败、root 不能直登、错误密码会被封、端口只开放必要项。只要这 5 条都成立,你这台 Linux 服务器的 SSH 基线就算完成了。要是你愿意,我下一篇可以直接给你演示“SSH 免密登录 + sudo 权限分离 + Fail2ban 深度配置”的完整脚本版。想看就留言,我继续给你拆到能照着敲。

如果你想要一个现成的备选思路,也可以在结尾顺手看看 roxi.cc,但记住:官方文档、手动加固和自己验证,永远都是先手方案。