一、本地

你在本地 Windows PowerShell 做这些。

1. 创建 .ssh 文件夹

mkdir "$env:USERPROFILE\.ssh"

如果提示已经存在,没关系。


2. 生成密钥文件

假设你想把密钥命名为 yg-2,执行:

ssh-keygen -t ed25519 -f "$env:USERPROFILE\.ssh\yg-2" -C "codex-ssh"

如果 $env:USERPROFILE 在你的终端里不识别,就直接用绝对路径,例如:

ssh-keygen -t ed25519 -f "C:\Users\<你的Windows用户名>\.ssh\yg-2" -C "codex-ssh"

中间它会问:

Enter passphrase:
Enter same passphrase again:

可以直接按两次回车,不设置密码。

生成成功后,本地会出现两个文件:

C:\Users\<你的Windows用户名>\.ssh\yg-2
C:\Users\<你的Windows用户名>\.ssh\yg-2.pub

含义是:

yg-2      私钥,留在本地,Codex 填这个
yg-2.pub  公钥,复制到服务器

3. 查看本地公钥

在本地 PowerShell 执行:

type "$env:USERPROFILE\.ssh\yg-2.pub"

或者:

type "C:\Users\<你的Windows用户名>\.ssh\yg-2.pub"

它会输出一整行,类似:

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIxxxxxxxx codex-ssh

复制这一整行。

注意:不要复制私钥 yg-2 的内容,只复制 yg-2.pub 的内容。


二、服务器

你在远程服务器终端做这些。

服务器里不需要生成私钥,也不需要放 yg-2 文件。
服务器只需要保存你本地的公钥内容。

1. 创建服务器 SSH 授权目录

mkdir -p /root/.ssh
chmod 700 /root/.ssh

2. 添加公钥

你的服务器没有 nano,所以不用 nano。直接用这个方式:

cat >> /root/.ssh/authorized_keys

执行后光标会停住。

这时把你刚才从本地 yg-2.pub 复制的那一整行粘进去,例如:

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIxxxxxxxx codex-ssh

粘贴完后按:

Ctrl + D

这表示结束输入并保存。


3. 设置权限

chmod 600 /root/.ssh/authorized_keys

然后检查一下:

cat /root/.ssh/authorized_keys

确认里面有你刚才粘贴的公钥。


三、本地测试 SSH 是否成功

回到本地 PowerShell,执行:

ssh -i "C:\Users\<你的Windows用户名>\.ssh\yg-2" -p <端口> root@<服务器地址>

如果你用的是普通用户,不是 root,就改成:

ssh -i "C:\Users\<你的Windows用户名>\.ssh\yg-2" -p <端口> <用户名>@<服务器地址>

如果这次不需要输入服务器密码就能进去,说明密钥配置成功。

如果还是要求输入密码,说明服务器的 /root/.ssh/authorized_keys 里没有正确添加 yg-2.pub 那一整行,或者你登录的用户不是 root。


四、Codex 里怎么填

Codex 里填本地私钥路径:

显示名称:
随便写,例如 remote-server

主机名:
root@<服务器地址>

SSH 端口:
<端口>

身份验证:
身份文件

身份文件路径:
C:\Users\<你的Windows用户名>\.ssh\yg-2

不要填:

C:\Users\<你的Windows用户名>\.ssh\yg-2.pub

也不要把完整命令:

ssh -i ... -p ... root@...

整条填进主机名。主机名只填:

root@<服务器地址>

端口单独填到端口框里。


五、最容易出错的点

你可以这样记:

本地:
生成 yg-2 和 yg-2.pub
Codex 填 yg-2

服务器:
只保存 yg-2.pub 的内容
不要保存 yg-2

对应关系是:

本地私钥:C:\Users\<你的Windows用户名>\.ssh\yg-2
服务器公钥:/root/.ssh/authorized_keys 里的一行 ssh-ed25519 ...

只要这两个是一对,SSH 和 Codex 才能免密码登录。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐