温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

SSH密钥登录怎样操作才安全

发布时间:2026-11-09 11:23:04 来源:亿速云 阅读:101 作者:小樊 栏目:系统运维

SSH 密钥登录比密码登录安全很多,但要“真正安全”,不能只生成密钥就完事。下面按实操 + 安全要点来说明。


一、生成高安全强度的密钥

✅ 推荐使用 Ed25519(优先)或 RSA 4096

# 推荐(现代、安全、性能好)
ssh-keygen -t ed25519 -C "your_email@example.com"

# 兼容老系统可用
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

⚠️ 不推荐:

  • DSA(已废弃)
  • RSA < 2048

二、密钥必须设置密码(passphrase)

生成时会提示:

Enter passphrase (empty for no passphrase):

✅ 一定要设
✅ 可用 ssh-agent 避免反复输入

eval $(ssh-agent)
ssh-add ~/.ssh/id_ed25519

三、正确分发公钥

1️⃣ 拷贝公钥到服务器

ssh-copy-id user@server_ip

或手动追加到:

~/.ssh/authorized_keys

2️⃣ 权限必须正确(非常关键)

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
chmod 600 ~/.ssh/id_ed25519

四、禁用密码登录(核心安全步骤)

编辑服务器 SSH 配置:

sudo vim /etc/ssh/sshd_config

确保:

PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin no

重启 SSH:

sudo systemctl restart sshd

⚠️ 操作前确保你能用密钥登录,否则会被锁外面


五、限制可用密钥(防滥用)

1️⃣ 指定允许命令(可选)

command="rsync --server",no-pty ssh-rsa AAAA...

2️⃣ 限制来源 IP

from="192.168.1.100",ssh-ed25519 AAAA...

六、服务器端口与防火墙

✅ 建议:

  • 改默认端口(如 2222)
  • 仅允许信任 IP
  • 使用防火墙(ufw / iptables)
sudo ufw allow from 1.2.3.4 to any port 2222

七、私钥安全(最重要)

❌ 不要:

  • 上传私钥到网盘
  • 提交到 Git
  • 放在容器中明文

✅ 建议:

  • 使用硬件密钥(YubiKey + FIDO2)
  • 或 KMS / Secret Manager

八、进阶(企业级)

  • ✅ SSH CA 签名(不用到处放公钥)
  • ✅ 双因素认证(TOTP / FIDO)
  • ✅ 堡垒机 / Jump Server
  • ✅ 审计日志

九、最小安全清单 ✅

  • [ ] Ed25519 密钥
  • [ ] 私钥有 passphrase
  • [ ] 禁用密码登录
  • [ ] 禁用 root 登录
  • [ ] 正确文件权限
  • [ ] 防火墙限制 IP
  • [ ] 私钥不泄露

如果你愿意,我可以:

  • 给你一份 服务器安全 sshd_config 模板
  • 或讲 SSH CA 怎么做
  • 或针对 Linux / macOS / Windows 分别说明

你现在是个人服务器,还是公司环境?

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手