在Ubuntu系统中生成SSH密钥对是一个相对简单的过程。以下是详细步骤:
方法一:使用命令行
-
打开终端:
- 你可以通过按
Ctrl + Alt + T
快捷键来打开终端。
- 你可以通过按
-
生成SSH密钥对:
- 输入以下命令来生成一个新的SSH密钥对:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
- 这里,
-t rsa
指定使用RSA算法,-b 4096
指定密钥长度为4096位,-C "your_email@example.com"
是一个注释,用于帮助你识别密钥的用途。
- 输入以下命令来生成一个新的SSH密钥对:
-
选择保存位置和文件名:
- 系统会提示你输入密钥的保存位置和文件名。默认情况下,密钥会保存在
~/.ssh/id_rsa
(私钥)和~/.ssh/id_rsa.pub
(公钥)。 - 如果你想更改保存位置或文件名,可以直接输入路径和文件名,或者按回车键使用默认值。
- 系统会提示你输入密钥的保存位置和文件名。默认情况下,密钥会保存在
-
设置密码短语(可选):
- 系统会提示你输入一个密码短语来保护你的私钥。这是一个额外的安全层,但不是必须的。如果你不想设置密码短语,直接按回车键即可。
-
验证密钥生成:
- 生成完成后,你可以使用以下命令来查看生成的密钥对:
ls -l ~/.ssh/id_rsa*
- 你应该会看到
id_rsa
(私钥)和id_rsa.pub
(公钥)文件。
- 生成完成后,你可以使用以下命令来查看生成的密钥对:
方法二:使用图形界面(GUI)
如果你更喜欢使用图形界面,可以按照以下步骤操作:
-
打开系统设置:
- 点击屏幕左上角的Ubuntu图标,然后选择“设置”。
-
进入“详细信息”:
- 在设置窗口中,找到并点击“详细信息”。
-
选择“SSH”:
- 在详细信息页面中,找到并点击“SSH”选项。
-
生成新的SSH密钥:
- 点击“生成新的SSH密钥”按钮。
- 输入你的电子邮件地址和一个注释,然后点击“生成”。
- 系统会提示你输入一个密码短语来保护你的私钥。如果你不想设置密码短语,直接按回车键即可。
-
保存密钥:
- 生成完成后,你可以选择将公钥复制到剪贴板,或者手动将其粘贴到目标服务器的
~/.ssh/authorized_keys
文件中。
- 生成完成后,你可以选择将公钥复制到剪贴板,或者手动将其粘贴到目标服务器的
将公钥添加到远程服务器
无论你是通过命令行还是图形界面生成的SSH密钥对,都需要将公钥添加到远程服务器的 ~/.ssh/authorized_keys
文件中,以便能够无密码登录。
-
复制公钥:
- 使用以下命令将公钥复制到剪贴板:
cat ~/.ssh/id_rsa.pub | xclip -selection clipboard
- 或者,如果你使用的是图形界面,可以直接从文件管理器中打开
id_rsa.pub
文件并复制内容。
- 使用以下命令将公钥复制到剪贴板:
-
登录到远程服务器:
- 使用SSH登录到远程服务器:
ssh username@remote_host
- 使用SSH登录到远程服务器:
-
编辑
authorized_keys
文件:- 在远程服务器上,编辑
~/.ssh/authorized_keys
文件:nano ~/.ssh/authorized_keys
- 将复制的公钥内容粘贴到文件中,每行一个。
- 在远程服务器上,编辑
-
保存并退出:
- 按
Ctrl + X
,然后按Y
确认保存,最后按Enter
退出。
- 按
完成这些步骤后,你应该能够使用SSH密钥对无密码登录到远程服务器了。