服务器怎样生成秘钥,xshell怎样使用秘钥连接服务器?下面以centos做演示(不仅仅只是cnetos适用,ubt也是可以用的的,但是命令需要稍微改一下)
1. 生成新的 SSH 密钥对
你需要生成新的 SSH 密钥对。如果你希望为 root
用户生成密钥对,请运行以下命令:
ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa
-t rsa
:指定密钥类型为 RSA。-b 4096
:指定密钥长度为 4096 位。-f ~/.ssh/id_rsa
:指定密钥文件保存的路径。
在生成过程中,你会被询问输入 passphrase(可以选择不输入,直接按 Enter 键)。
2. 检查生成的密钥文件
生成密钥对后,你应该能看到两个文件:
id_rsa
(私钥)id_rsa.pub
(公钥)
你可以使用以下命令查看这些文件:
ls -la ~/.ssh
3. 将公钥添加到 authorized_keys
文件中
如果你要将公钥用于授权(例如,在另一台服务器上),需要将 id_rsa.pub
的内容添加到目标服务器上的 authorized_keys
文件中。
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
4. 确保 authorized_keys
权限正确
确保 authorized_keys
文件和 .ssh
目录的权限设置正确:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
至此,秘钥服务器已经成功生成了一个可以使用的密码
5.复制秘钥
这里搞简单一点,查看秘钥后,直接手动复制秘钥。也有别的一些相关命令可以将秘钥直接赋值到剪切板
cat ~/.ssh/id_rsa
6.新建存放秘钥文件
这一步是在你需要连接到远程服务器的电脑上进行了,这里以Windows系统做演示
- 创建一个txt文本文件
- 将之前复制过来的秘钥放到文件中并保存
- 修改文件名为id_rsa.pub
- 至此,你就有一份可以用的秘钥文件了。下面虽然以xshell做使用演示,但是这份秘钥文件使用任何需要秘钥连接你的服务器的场景。
7.xshell使用秘钥连接服务器
- 在会话管理器中,右键点击你的会话并选择“属性”。
- 在会话属性窗口中,选择左侧的“连接”选项卡,然后选择“用户身份验证”。
- 在“用户身份验证”部分,选择“使用密钥认证”。
- 点击“设置”按钮,弹出“密钥管理”窗口。
- 在“密钥管理”窗口中,点击“导入”按钮,选择你刚刚创建的
id_rsa
文件。 - 如果密钥文件有密码,你会被提示输入密码(这里可能需要输入服务器密码)