最直接有效的方式是用 ssh-copy-id 命令,它自动完成公钥上传、目录创建、权限设置和文件追加;若不可用,则需手动确保远程 .ssh 目录权限为 700、authorized_keys 文件权限为 600,并完整追加公钥内容。

最直接有效的方式是用 ssh-copy-id 命令,它专为这件事设计,自动完成公钥上传、目录创建、权限设置和文件追加,一步到位。
用 ssh-copy-id 一键复制公钥
这个命令会把本地默认公钥(~/.ssh/id_rsa.pub)自动复制到远程服务器对应用户的 ~/.ssh/authorized_keys 文件中,并确保 .ssh 目录和文件权限正确(700 和 600)。
只需一条命令:
ssh-copy-id username@remote_ip
比如:
ssh-copy-id admin@192.168.5.200
执行后会提示输入一次远程用户的密码,成功后就配置好了。
Linux AI 服务器 — 将 Linux 服务器转换为本地 AI 推理集群。使用 systemd、NVIDIA CUDA 实现无头 Linux AI,零 GUI 开销。
如果 ssh-copy-id 不可用(如某些旧系统或 Windows)
可以手动操作,关键点在于三步不能少:
- 确保远程
.ssh目录存在且权限为700 - 确保
authorized_keys文件权限为600 - 公钥内容必须完整、无换行截断地追加进去
操作示例:
# 1. 查看本地公钥内容(复制整行,不要漏掉末尾的邮箱注释) cat ~/.ssh/id_rsa.pub # 2. 登录远程服务器 ssh username@remote_ip # 3. 在远程服务器上执行(注意是两个 > 符号,表示追加) mkdir -p ~/.ssh && chmod 700 ~/.ssh echo "ssh-rsa AAAAB3NzaC1yc2E... your_email@example.com" >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys
Windows 用户小提醒
Git Bash 或 WSL 下可直接用 ssh-copy-id;若用 PowerShell 或 CMD,建议安装 OpenSSH 客户端(Windows 10/11 自带),或改用 scp 配合手动编辑:
# 先用 scp 把公钥传过去(假设公钥在 C:\Users\Me\.ssh\id_rsa.pub) scp C:\Users\Me\.ssh\id_rsa.pub username@remote_ip:/tmp/id_rsa.pub # 再 ssh 登录,把公钥内容追加到 authorized_keys ssh username@remote_ip cat /tmp/id_rsa.pub >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys rm /tmp/id_rsa.pub
不复杂但容易忽略

















