如何在服务器上部署公钥?
美国、香港服务器
如何在服务器上部署公钥?
06-26 来源:
一、先拿到公钥内容
两种常用来源:
FinalShell 密钥管理器里生成的密钥,直接复制公钥字符串(以 ssh-rsa / ssh-ed25519 开头)
本地 .ssh 文件夹下 id_rsa.pub 文件,打开复制全部内容
二、服务器部署公钥(Ubuntu 24 / CentOS 9 通用)
方式 1:手动写入(最稳妥)
先用密码登录服务器,执行:
bash
运行
# 创建 .ssh 目录(不存在则新建)
mkdir -p ~/.ssh
把复制好的公钥追加写入授权文件:
bash
运行
echo "你复制的完整公钥内容" >> ~/.ssh/authorized_keys
必须设置权限(SSH 权限过宽会直接拒绝密钥登录)
bash
运行
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
chown $USER:$USER -R ~/.ssh
方式 2:本地一键推送公钥(Windows 安装 OpenSSH 客户端可直接执行)
打开 Windows PowerShell,执行(替换用户名、IP、SSH 端口):
bash
运行
ssh-copy-id -p 你的SSH端口 用户名@服务器IP
输入一次服务器密码,自动完成公钥上传 + 权限配置。
方式 3:服务器之间互信也可以用这个命令
bash
运行
ssh-copy-id -p 2222 admin@你的服务器IP
三、检查 SSH 配置是否开启公钥认证
bash
运行
sudo nano /etc/ssh/sshd_config
确保下面配置为 yes:
ini
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
# 密钥登录正常后再关闭密码登录
# PasswordAuthentication no
保存退出,重启 SSH 服务:
Ubuntu
bash
运行
sudo systemctl restart ssh
CentOS Stream 9
bash
运行
sudo systemctl restart sshd
四、部署完成后测试
在 FinalShell 选择私钥登录,不再输入服务器账号密码即可连接。
三二互联专业提供香港VPS,美国VPS主机,香港云服务器租用等业务香港美国到大陆CN2 GIA速度最快