LinuxSSH安全怎么提升_最佳实践总结助你快速突破【指导】

5次阅读

linux ssh安全核心是禁用密码登录、限制用户与 IP 访问、加固服务配置。需生成 ed25519 密钥对,设 PubkeyAuthentication yes 且 PasswordAuthentication no;AllowUsers 限定用户,PermitRootLogin no;调优超时、加密 算法 并启用 f ail2ban;定期审计日志与轮换密钥。

LinuxSSH 安全怎么提升_最佳实践总结助你快速突破【指导】

Linux SSH 安全是系统防护的第一道门,关不牢,再强的 防火墙 也白搭。核心就三点:禁用密码登录、限制访问权限、最小化暴露面。

禁用密码认证,强制使用密钥登录

密码暴力破解是攻击者最常用手段。启用密钥对后,攻击成功率断崖式下降。

  • 在客户端生成密钥对:ssh-keygen -t ed25519 -C “your_email@example.com”(推荐 ed25519,比 rsa 更快更安全)
  • 将公钥复制到服务器:ssh-copy-id -i ~/.ssh/id_ed25519.pub user@server_ip
  • 编辑 /etc/ssh/sshd_config,确认以下配置生效:
    PubkeyAuthentication yes
    PasswordAuthentication no
    PermitEmptyPasswords no
  • 重启服务前先用新终端测试密钥是否可用:sudo systemctl restart sshd

限制用户与 IP,缩小攻击面

不是所有用户都需要 SSH,也不是所有网络都该连进来。

  • 只允许特定用户登录:AllowUsers deploy admin(写在 sshd_config 中)
  • 禁止 root 直接登录:PermitRootLogin no(必须设为 no,别信“改 端口 就行”)
  • 按 IP 白名单控制访问:AllowUsers user@192.168.1.100 user@2001:db8::1(支持 IPv4/ipv6
  • 配合 防火墙 进一步收紧:ufw allow from 203.0.113.5 to any port 22,然后 ufw deny 22

加固 SSH 服务本身

默认配置太宽松,几个关键参数一调,安全性直接上台阶。

  • 改默认 端口?可选但非必需;若修改,记得同步更新防火墙和客户端配置
  • 缩短连接超时:ClientAliveInterval 300(5 分钟无响应断开)
    ClientAliveCountMax 2(最多容忍 2 次未响应)
  • 禁用不安全协议和加密算法:
    Protocol 2
    KexAlgorithms curve25519-sha256,ecdh-sha2-nistp521
    Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com
  • 启用失败登录锁定(需配合 fail2ban):sudo apt install fail2ban,启用 jail-sshd 规则

定期审计与最小权限原则

安全不是一劳永逸,而是持续验证的过程。

  • 查看登录日志:sudo journalctl -u sshd -n 50 –no-pagersudo grep “Failed password” /var/log/auth.log
  • 检查当前活跃会话:whow
  • 每个 SSH 用户只分配必要权限,避免共用账号;敏感操作走 sudo,且限制 sudo 权限范围
  • 定期轮换密钥,尤其员工离职或设备丢失后立即清理对应公钥

基本上就这些。不复杂但容易忽略——比如忘了测试密钥就关密码,结果自己也被锁在外面。做一次,记下来,下次升级系统或重装服务器时照着跑一遍,SSH 就稳了。

站长
版权声明:本站原创文章,由 站长 2025-12-15发表,共计1410字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
1a44ec70fbfb7ca70432d56d3e5ef742
text=ZqhQzanResources