本地终端和vscode
Mac
在本地 macOS 终端中,显示并复制你的公钥内容:
1
cat ~/.ssh/id_rsa.pub
(选中输出的全部内容,按
Command + C
复制。如果没有id_rsa.pub
,请先执行ssh-keygen -t rsa
生成)SSH 登录到服务器(更改ip和端口,需要输入密码):
1
ssh root@1.1.1.1 -p 1234
在服务器上执行以下命令:
1
2
3
4
5mkdir -p ~/.ssh
chmod 700 ~/.ssh
echo "在此处粘贴你复制的公钥内容" >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
exit(将
在此处粘贴你复制的公钥内容
替换为你第 1 步复制的实际公钥字符串)完成。再次尝试 SSH 登录应不再需要密码。
Win
在本地 Windows PowerShell 中,显示并复制你的公钥内容:
1
type $env:USERPROFILE\.ssh\id_rsa.pub
(选中输出的全部内容,按 Ctrl+C 复制。如果没有
id_rsa.pub
,请先执行ssh-keygen -t rsa
生成)SSH 登录到服务器(更改ip和端口,需要输入密码):
1
ssh root@1.1.1.1 -p 1234
在服务器上执行以下命令:
1
2
3
4
5mkdir -p ~/.ssh
chmod 700 ~/.ssh
echo "在此处粘贴你复制的公钥内容" >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
exit(将
在此处粘贴你复制的公钥内容
替换为你第 1 步复制的实际公钥字符串)完成。再次尝试 SSH 登录应不再需要密码。
MobaXterm
使用 ssh-copy-id
(在 MobaXterm 本地终端)
- 打开 MobaXterm 的 “Local terminal” (本地终端)。
- 确保本地已有 SSH 密钥对。若无,执行:(一路回车,不要设置密码。密钥默认存放在 MobaXterm 环境的
1
ssh-keygen -t rsa
~/.ssh/
目录,通常对应 Windows 下的C:\Users\YourUsername\Documents\MobaXterm\home\.ssh\
或C:\Users\YourUsername\.ssh\
) - 执行以下命令将公钥复制到服务器:(此过程会要求输入一次
1
ssh-copy-id -p 1234 root@1.1.1.1
root
用户在1.1.1.1
服务器上的密码。) - 完成后,下次通过 MobaXterm 的本地终端或创建的会话连接
root@1.1.1.1 -p 1234
将不再需要密码。