目录
- 1. 概述
- 2. 环境
- 3. 步骤
- 3.1 生成密钥
- 3.2 部署密钥
- 3.3 使用密钥
1. 概述
使用Xshell软件生成ssh秘钥,正常连接服务器。
2. 环境
Xshell 6
3. 步骤
3.1 生成密钥
1. 打开Xshell --> 工具 --> 新建用户密钥生成向导
2. 选择密钥类型,建议选择ED25519或ECDSA
- 新版本Linux(如 Ubuntu 22.04 ),使用高版本Openssh,默认已经不加载RSA算法,如果需要使用RSA,需要单独配置。
3. 创建密钥加密密码
- 出于安全性考虑,强烈建议设置加密密码,且保证密码强度
- 加密密码会在每次使用密钥时,要求输入验证(Xshell可配置记住密码)。
4. 保存密钥的公钥
- 密钥的公钥,将配置在ssh的服务端,这里需要提前保存。
5. 保存密钥的私钥
- 密钥默认会保存在Xshell中
- 建议导出备份,防止私钥丢失。
6. 以后可在Xshell --> 工具 --> 用户秘钥管理者,查看已生成的密钥
3.2 部署密钥
1. 登录服务端。在登录账号的家目录下创建.ssh目录,权限必须是700
- 以下使用账号 shijin 举例
$ cd ~ && mkdir -p .ssh && chmod 700 .ssh && cd .ssh
$ pwd
/home/shijin/.ssh
2. 上传公钥并修改名称
- 名称必须是 authorized_keys,权限必须是600
$ cp id_ed25519_256.pub authorized_keys && chmod 600 authorized_keys
$ ls
authorized_keys id_ed25519_256.pub
3. 查看文件路径及权限
- .ssh目录权限是700,属主是登录账号
$ ls -al ~
total 24
drwxr-x--- 3 shijin shijin 4096 5月 6 09:32 .
drwxr-xr-x 6 root root 4096 5月 6 09:24 ..
-rw-r--r-- 1 shijin shijin 220 1月 7 2022 .bash_logout
-rw-r--r-- 1 shijin shijin 3771 1月 7 2022 .bashrc
-rw-r--r-- 1 shijin shijin 807 1月 7 2022 .profile
drwx------ 2 shijin shijin 4096 5月 6 09:45 .ssh
- authorized_keys文件权限是600,属主是登录账号
$ ls -al ~/.ssh
total 16
drwx------ 2 shijin shijin 4096 5月 6 09:45 .
drwxr-x--- 3 shijin shijin 4096 5月 6 09:32 ..
-rw-r--r-- 1 shijin shijin 99 5月 6 09:45 authorized_keys
-rw-r--r-- 1 shijin shijin 99 4月 29 17:32 id_ed25519_256.pub
3.3 使用密钥
1. Xshell新建会话 --> 输入已上传公钥的服务端IP --> 修改用户身份验证
2. Xshell已存在的会话 --> 右键属性 --> 修改用户身份验证
3. 在用户身份验证中 --> 方法 --> 选择"Public Key"
4. 配置身份验证信息
- 输入服务端登录的账号名 shijin(已导入公钥)
- 点击用户密钥 --> 浏览 --> 选择与公钥对应的私钥 --> 确定
5. 连接服务端
-
弹出 SSH用户身份验证
-
输入私钥的加密密码
-
可以选择"记住密码",以后就不用每次都输入了
-
点击确定
-
使用密钥成功登录服务端