一、生成SSH密钥对
使用以下命令生成SSH密钥对。这将创建一个RSA密钥对,包括一个私钥(id_rsa)和一个公钥(id_rsa.pub)
ssh-keygen -t rsa
#-t即指定密钥的类型,密钥的类型有两种,一种是RSA,一种是DSA
二、复制公钥到服务器
使用以下命令将您的公钥(id_rsa.pub)复制到服务器上,替换your_username
为您在服务器上的用户名,your_server_ip_or_hostname
为服务器的IP地址或主机名
ssh-copy-id -i id_rsa.pub your_username@your_server_ip_or_hostname
您将需要输入服务器的密码以完成此操作。
如果服务器不支持ssh-copy-id命令,您可以手动将公钥内容追加到服务器上的~/.ssh/authorized_keys文件中。
要将公钥内容手动追加到服务器上的~/.ssh/authorized_keys文件中,可以按照以下步骤进行操 作:
1、在本地计算机上生成SSH密钥对(如果尚未生成):
ssh-keygen -t rsa
这将生成一个RSA密钥对,包括私钥(id_rsa)和公钥(id_rsa.pub)。
2、查看您的公钥:
您可以使用文本编辑器或终端命令来查看公钥文件内容。使用cat
命令来查看公钥文件的内容:
cat ~/.ssh/id_rsa.pub
3、连接到服务器:
使用SSH连接到服务器,替换your_username
和your_server_ip_or_hostname
为实际的用户名和服务器地址:
ssh your_username@your_server_ip_or_hostname
您将需要输入服务器密码以进行连接。
4、创建~/.ssh
目录(如果不存在):
如果~/.ssh
目录不存在,可以使用以下命令创建它:
mkdir -p ~/.ssh
5、打开authorized_keys
文件进行编辑:
使用文本编辑器(如vi
或vim
)打开~/.ssh/authorized_keys
文件:
vi ~/.ssh/authorized_keys
在文本编辑器中,粘贴您本地计算机上生成的公钥内容(id_rsa.pub
文件中的内容)
6、设置文件权限:
为了确保安全性,您需要设置~/.ssh
目录和authorized_keys
文件的权限。运行以下命令:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
这将仅允许您的用户访问这些文件。
-
命令生成之后使用 ls 命令查看一下
-
密钥生成后会在当前目录下多出两个文件,id_rsa 和 id_rsa.pub,其中 id_rsa 是私钥(客户端使用),id_rsa.pub 这个是公钥(服务器使用)
现在,您已经手动将公钥内容追加到服务器上的~/.ssh/authorized_keys文件中,以允许使用私钥进行SSH免密码登录
三、连接到SSH服务器
现在,您可以客户端使用私钥进行SSH连接。在本地终端或命令行中,运行以下命令以连接到服务器:
ssh your_username@your_server_ip_or_hostname