如何在服务器上恢复密钥?
美国、香港服务器
如何在服务器上恢复密钥?
05-01 来源:
服务器 SSH 密钥恢复教程(两种场景:恢复整份密钥、仅恢复授权登录密钥)
前提说明
你之前备份的是整个 .ssh 文件夹,里面包含:
id_rsa 私钥
id_rsa.pub 公钥
authorized_keys 授权登录密钥
场景一:完整恢复整个 .ssh 密钥文件夹
1. 先把备份包上传到服务器
把你本地备份的 ssh_key_backup_日期.tar.gz 上传到服务器任意目录,比如 /opt
2. 解压恢复
bash
运行
# 备份原有损坏的旧密钥(防止出错)
mv ~/.ssh ~/.ssh_bak
# 解压备份包到家目录
tar -zxvf /opt/ssh_key_backup_20250101.tar.gz -C ~/
3. 修复权限(必须做,否则密钥登录失效)
bash
运行
chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_rsa
chmod 600 ~/.ssh/authorized_keys
4. 重启 SSH 生效
bash
运行
# Ubuntu
systemctl restart ssh
# CentOS
systemctl restart sshd
场景二:只恢复 授权登录密钥 authorized_keys
适合:私钥本地还在,只是服务器登录密钥丢了
上传你备份的 authorized_keys 到服务器
覆盖恢复
bash
运行
mv /opt/authorized_keys ~/.ssh/
设权限
bash
运行
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
场景三:重装系统后手动恢复密钥
先在服务器创建 .ssh 目录
bash
运行
mkdir -p ~/.ssh
chmod 700 ~/.ssh
把本地的 id_rsa.pub 内容写入授权文件
bash
运行
nano ~/.ssh/authorized_keys
粘贴公钥,保存退出3. 设权限
bash
运行
chmod 600 ~/.ssh/authorized_keys
三二互联专业提供香港VPS,美国VPS主机,香港云服务器租用等业务香港美国到大陆CN2 GIA速度最快