第一步:生成SSH密钥对
在你的本地计算机上生成密钥对(就像制作一把钥匙和一把锁):
bash
(base) tangs@tangs ~ % ssh-keygen -t rsa -b 4096 -C "[email protected]"
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/zhangsan/.ssh/id_rsa):
- 系统会问你保存位置,直接回车使用默认位置: 博主这里就是放在
/Users/zhangsan/.ssh/id_rsa这个路径下了
- 设置密码短语(可选,但建议设置增加安全性):不建议设置
第二步:将公钥上传到VPS
有几种方法可以把”钥匙”(公钥)给VPS:
方法1:使用ssh-copy-id(最简单)
bash
ssh-copy-id username@your_vps_ip
方法2:手动复制
- 查看公钥内容:
bash
cat ~/.ssh/id_rsa.pub
- 登录VPS,创建authorized_keys文件:
bash
mkdir -p ~/.ssh
echo "你的公钥内容" >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
chmod 700 ~/.ssh
第三步:配置SSH服务器
编辑VPS上的SSH配置文件:
bash
sudo nano /etc/ssh/sshd_config
确保以下设置:
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no # 禁用密码登录(可选但推荐)
重启SSH服务:
bash
sudo systemctl restart ssh
第四步:测试连接
现在你可以用密钥登录了:
bash
ssh username@your_vps_ip
简单比喻
这个过程就像给房子配钥匙:
- 生成密钥对 = 制作一对钥匙(公钥是锁,私钥是钥匙)
- 上传公钥 = 把锁安装在VPS的门上
- 用私钥登录 = 用钥匙开锁进门
这样设置后,只有拥有对应私钥的人才能登录VPS,大大提高了安全性!