🔑 告别密码!3步搞定SSH免密登录,效率翻倍!🚀

每次连服务器都要输密码?🔑 密码太长记不住?手速太慢总输错?今天教你用 SSH 密钥实现「秒级登录」,从此告别密码烦恼!⚡

🔧 配置全攻略

一、检查现有密钥(避免覆盖!)🔍

所有用户都需要做这一步
👉 打开终端/CMD执行对应命令:

▎🍎 Mac/Linux用户

1
ls -al ~/.ssh | grep id_rsa

▎🪟 Windows用户

1
dir C:\Users\<你的用户名>\.ssh\id_rsa*

🔍 结果判断
如果看到 id_rsaid_rsa.pub 说明已有密钥,可直接使用!没有则继续下一步

二、生成SSH密钥对(造一把专属钥匙)🔐

1
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

💡 关键参数说明:

  • -t rsa:黄金搭档加密算法
  • -b 4096:超强防护盾长度
  • -C:给你的钥匙贴标签

🔐 遇到这两个提示直接回车:

1
2
Enter file in save key (/home/user/.ssh/id_rsa): [直接回车]
Enter passphrase (empty for no passphrase): [建议设置解锁密码]

三、部署公钥到服务器(配钥匙给锁头)🔨

▎🎯 方法一:自动部署(推荐🌟)

1
ssh-copy-id -i ~/.ssh/id_rsa.pub user@remote-server

💡 系统会提示输入最后一次密码,之后就能免密登录!

▎🛠 方法二:手动部署(适合高手)

第一步:复制公钥

▎🍎 Mac/Linux用户

1
cat ~/.ssh/id_rsa.pub | pbcopy

▎🪟 Windows用户

1
cat ~/.ssh/id_rsa.pub | clip

第二步:登录服务器贴钥匙

1
2
3
mkdir -p ~/.ssh
echo "粘贴的公钥内容" >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys # 这步权限设置很重要!

✅ 验证登录是否成功

1
ssh user@remote-server

看到这样的欢迎信息就成功啦!🎉

1
2
Welcome to Ubuntu 22.04.5 LTS
Last login: Mon Jul 15 09:30:28 2024 from 192.168.1.100

🚨 常见问题急救包

❓ 提示 Permission denied (publickey)

👉 三步排查法:

  1. 检查本地密钥路径是否正确
  2. 确认服务器.ssh文件夹权限:
    1
    chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys
  3. 查看服务端ssh配置:
    1
    2
    3
    4
    5
    sudo nano /etc/ssh/sshd_config
    # 确保这三项为yes
    PubkeyAuthentication yes
    AuthorizedKeysFile .ssh/authorized_keys
    PasswordAuthentication no

❓ 密钥被泄露怎么办?

👉 紧急处理三步走:

  1. 立即删除服务器对应公钥
  2. 本地生成新密钥对:ssh-keygen -t ed25519
  3. 重新部署新公钥