---
title: 配置SSH密钥认证
description: "1. 打开本地cmd终端。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengdevps/install/installguide/KunpengDevKit_0055.html
sourcePath: /source/zh/kunpengdevps/install/installguide/KunpengDevKit_0055.html
indexId: a9e9bef83afde0348acf1b1591cf4a70c074b85632e1ea3ce3711d3cef872b2a68
---
# 配置SSH密钥认证

#### 配置Windows公私钥

1. 打开本地cmd终端。
2. 执行如下命令生成公私钥对。

```
ssh-keygen -m PEM -t rsa -b 3072
```

- 目标服务器操作系统为openEuler 22.03时，需要使用其他安全的加密算法，例如：ssh-keygen -m PEM -t ecdsa -b 521生成公私钥对。
- 目标服务器操作系统为openEuler 22.03 LTS SP1时，需要使用其他安全的加密算法，例如：ssh-keygen -m PEM -t ed25519 -b 521生成公私钥对。
- 目标服务器操作系统为openEuler 22.03 LTS SP2时，需要使用其他安全的加密算法，例如：ssh-keygen -m PEM -t ed25519 -b 521生成公私钥对。


过程中需要：

  - （可选）输入保存的文件名，默认会在“C:\Users\username\.ssh”目录下保存为“id_rsa”（私钥）和“id_rsa.pub”（公钥）文件。
  - （可选）设置密钥的密码口令。
回显信息如下：
```
Generating public/private rsa key pair. 
 Enter file in which to save the key (C:\Users\username\.ssh\id_rsa): 
 Enter passphrase (empty for no passphrase): 
 Enter same passphrase again: 
 Your identification has been saved in C:\Users\username\.ssh\id_rsa. 
 Your public key has been saved in C:\Users\username\.ssh\id_rsa.pub. 
 The key fingerprint is: 
SHA256:rCRpryf6uZU+dQd/S8WN1azvay58zi3gtb53gayhvO8 china\username@HGHY4USERNAME 
 The key's randomart image is: 
+---[RSA 3072]----+
|               ..|
|                +|
|               =.|
|     . .  .   o +|
|    + . S  o. .o |
|   . + o. ..+o+..|
|      =....o+= +.|
|    .=o  o ..o=o=|
|  .o=+.. .+E .OO+|
+----[SHA256]-----+
```

3. 普通用户登录服务器并上传公钥文件“id_rsa.pub”。
  将公钥文件放至“/home/操作系统用户名/.ssh”目录下，将公钥文件名“id_rsa.pub”改为“authorized_keys”。

  如已存在此“authorized_keys”文件，将公钥文件内容复制至“authorized_keys”文件中即可。

4. 设置“authorized_keys”文件的权限为600。

```
chmod 600 /home/
操作系统用户名
/.ssh/authorized_keys
```


5. 查看服务器ssh配置文件。

```
cat /etc/ssh/sshd_config
```


6. 检查以下两处开关。

```
PubkeyAuthentication yes
RSAAuthentication yes
```


  如若不是“yes”将上述开关设为“yes”后保存配置文件并重启sshd服务。

```
systemctl restart sshd
```


7. 在IDE插件中选择密钥认证，在操作界面上直接导入本地的私钥文件即可。


#### 配置Linux公私钥

1. 使用SSH远程登录工具，以系统用户登录Linux操作系统命令行界面。
2. 执行如下命令生成公私钥对。
```
ssh-keygen -t rsa -b 4096
```

过程中需要：

  - （可选）输入保存的文件名，默认会在/userhome/.ssh目录下保存为“id_rsa”（私钥）和“id_rsa.pub”（公钥）文件。
  - （可选）设置密钥的密码口令。
回显信息如下：

```
Generating public/private rsa key pair.
Enter file in which to save the key (/
userhome
/.ssh/id_rsa):
/root/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in
/
userhome
/.ssh/id_rsa.
Your public key has been saved in
/
userhome
/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:g8T/XaRUqANpuIjxnI34In89+R68QckZPw7eyEaCU+o root@host11
The key's randomart image is:
+---[RSA 4096]----+
|       . .   ..  |
|  .  .. +   ..   |
|   * =+o.. .. .  |
|  o *=o+ =o. o   |
|   .+ o S o.. .  |
|. .... B B o .   |
| o .E. .O + .    |
|  . . +. +       |
|   .   ++        |
+----[SHA256]-----+
```

3. 执行如下命令将公钥文件上传到节点服务器。

```
ssh-copy-id -i
/userhome/.ssh/id_rsa.pub
root@
Server IP
```


  /userhome/.ssh/id_rsa.pub为生成的公钥文件，其中/userhome/（root用户为/root/，普通用户为/home/普通用户名/）请根据实际替换。 Server IP为节点服务器IP地址，请根据实际替换。

  过程中需要输入节点服务器对应用户的密码。
