云服务器中的SSH Key管理方法

SSH(Secure Shell)是一种通过加密的方式远程登录服务器的协议,为了提高SSH连接的安全性,可以使用SSH Key对服务器进行身份验证。在云服务器中,SSH Key的管理比较简单,主要包括生成SSH Key、将公钥部署到服务器和配置服务器使用SSH Key进行身份验证。

1. 生成SSH Key
要生成SSH Key,可以在本地终端上运行以下命令:

ssh-keygen -t rsa -b 2048 -C "your_email@example.com"

执行该命令后,会提示输入文件名和密码,可以直接按回车键,使用默认值即可。然后,在本地的`~/.ssh/`目录下,会生成两个文件:`id_rsa`(私钥)和`id_rsa.pub`(公钥)。

2. 将公钥部署到服务器
将公钥部署到服务器,可以通过以下步骤完成:
- 通过SSH连接到服务器。例如:

ssh root@your_server_ip

- 在服务器上创建`.ssh`目录,如果已存在则跳过此步骤:

mkdir ~/.ssh

- 在服务器上创建`authorized_keys`文件,如果已存在则跳过此步骤:

touch ~/.ssh/authorized_keys

- 将本地的公钥内容追加到服务器上的`authorized_keys`文件中:

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

- 设置服务器上的`authorized_keys`文件的权限为600:

chmod 600 ~/.ssh/authorized_keys

3. 配置服务器使用SSH Key进行身份验证
为了确保服务器使用SSH Key进行身份验证,需要修改SSH配置文件`/etc/ssh/sshd_config`。通过以下步骤进行配置:
- 使用文本编辑器打开SSH配置文件:

vi /etc/ssh/sshd_config

- 找到并修改以下两个参数的值:
- `PubkeyAuthentication`:确保该参数的值为`yes`,表示允许使用公钥身份验证。
- `PasswordAuthentication`:确保该参数的值为`no`,表示禁止使用密码身份验证。如果希望同时支持密码和公钥身份验证,可以将其值设置为`yes`。
- 保存并退出SSH配置文件。
- 重启SSH服务,使配置生效:

service ssh restart

通过以上步骤,就可以将SSH Key部署到云服务器,并配置服务器使用SSH Key进行身份验证。

云服务器与GitHub的SSH Key配置方法

在使用Git与GitHub进行代码管理时,可以使用SSH Key来进行身份验证,以便在本地电脑上执行Git操作时无需频繁输入GitHub的用户名和密码。下面将介绍如何将云服务器上的SSH Key配置到GitHub上。

1. 查看云服务器的公钥
首先,要找到云服务器的公钥,可以通过以下命令查看:

cat ~/.ssh/id_rsa.pub

执行命令后,会输出公钥的内容。

2. 在GitHub上添加SSH Key
在GitHub上添加SSH Key,可以按照以下步骤进行:
- 登录GitHub账号,进入个人设置页面。
- 点击页面上方的“SSH and GPG keys”选项卡,然后点击右侧的“New SSH key”按钮。
- 在“Title”输入框中,填写一个有意义的名称,以标识所添加的SSH Key。
- 在“Key”输入框中,将上一步中获取的云服务器的公钥内容粘贴进去。
- 点击“Add SSH key”按钮,完成SSH Key的添加。

3. 测试SSH连接
为了验证SSH Key的配置是否成功,可以执行以下命令进行测试:

ssh -T git@github.com

如果输出显示`Hi username! You've successfully authenticated...`,则表示SSH连接成功。

通过以上步骤,就可以将云服务器的SSH Key配置到GitHub上,实现与GitHub的无密码身份验证。这样,在使用Git与GitHub进行代码管理时,就可以更加方便和安全地进行操作。