63 lines
1.5 KiB
Markdown
63 lines
1.5 KiB
Markdown
# 配置FRP服务器SSH密钥免密登录
|
||
|
||
## 方法1:使用PowerShell脚本(推荐)
|
||
|
||
在Windows PowerShell中执行:
|
||
|
||
```powershell
|
||
cd D:\gongxiangp2
|
||
powershell -ExecutionPolicy Bypass -File scripts/setup-frp-ssh-key.ps1
|
||
```
|
||
|
||
## 方法2:手动执行命令
|
||
|
||
### 步骤1:生成SSH密钥(如果还没有)
|
||
|
||
在Windows PowerShell中执行:
|
||
|
||
```powershell
|
||
# 检查是否已有密钥
|
||
Test-Path $env:USERPROFILE\.ssh\id_rsa
|
||
|
||
# 如果没有,生成新密钥
|
||
ssh-keygen -t rsa -b 4096 -f $env:USERPROFILE\.ssh\id_rsa -N '""'
|
||
```
|
||
|
||
### 步骤2:复制公钥到FRP服务器
|
||
|
||
在Windows PowerShell中执行(需要输入密码 `NEjoy4h8B9Fa`):
|
||
|
||
```powershell
|
||
type $env:USERPROFILE\.ssh\id_rsa.pub | ssh -p 22 root@180.97.221.140 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && chmod 700 ~/.ssh"
|
||
```
|
||
|
||
### 步骤3:测试免密登录
|
||
|
||
```powershell
|
||
ssh -o StrictHostKeyChecking=no -p 22 root@180.97.221.140 "hostname"
|
||
```
|
||
|
||
如果不需要输入密码就能连接,说明配置成功!
|
||
|
||
## 方法3:在FRP服务器上直接配置(如果你已经连接)
|
||
|
||
如果你已经SSH连接到FRP服务器,可以在服务器上执行:
|
||
|
||
```bash
|
||
# 在FRP服务器上创建.ssh目录
|
||
mkdir -p ~/.ssh
|
||
chmod 700 ~/.ssh
|
||
|
||
# 然后从本地复制公钥内容,在FRP服务器上执行:
|
||
echo "你的公钥内容" >> ~/.ssh/authorized_keys
|
||
chmod 600 ~/.ssh/authorized_keys
|
||
```
|
||
|
||
## 验证
|
||
|
||
配置成功后,以后可以直接使用以下命令连接,无需输入密码:
|
||
|
||
```powershell
|
||
ssh -p 22 root@180.97.221.140
|
||
```
|