📜  ubuntu 向服务器添加公钥 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:35:26.225000             🧑  作者: Mango

Ubuntu 向服务器添加公钥 - Shell/Bash

在使用 SSH 连接服务器时,为了确保安全性,我们需要使用公钥认证方式。其中,将本地机器的公钥添加到服务器上是必须的一步。本文介绍如何在 Ubuntu 系统下向服务器添加公钥。

1. 生成公钥和私钥

如果您还没有生成公钥和私钥,请按以下步骤进行。如果您已经具有公钥和私钥,则可以跳过本步骤。

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

其中,your_email@example.com 是您的邮箱地址,该地址将作为公钥的注释信息,在生成过程中会提示输入密码,您可以选择不设置密码。

2. 将公钥添加到服务器

将公钥添加到服务器分为两个步骤:将公钥复制到服务器,将公钥添加到服务器上的 authorized_keys 文件中。以下是具体步骤。

2.1 将公钥复制到服务器

使用以下命令将公钥复制到服务器上,其中,username 是您在服务器上的用户名,server_ip 是服务器的 IP 地址或域名地址,/path/to/your_key.pub 是公钥的路径。

ssh-copy-id -i /path/to/your_key.pub username@server_ip

如果您是第一次连接该服务器,可能会提示您输入服务器的密码,输入后即可自动将公钥复制到服务器上。

2.2 将公钥添加到服务器的 authorized_keys 文件中

登录到服务器上(使用 ssh username@server_ip 命令),并进入到 .ssh 目录中。

cd ~/.ssh

使用以下命令将公钥添加到 authorized_keys 文件中,其中,/path/to/your_key.pub 是公钥的路径。

cat /path/to/your_key.pub >> authorized_keys

如果没有 authorized_keys 文件,可以使用以下命令创建该文件。

touch authorized_keys

确保 authorized_keys 文件的权限为 600

chmod 600 authorized_keys

添加完成后,您可以使用 exit 命令退出服务器。

结束语

此时,您已经将公钥成功添加到服务器上,可以使用 SSH 认证方式连接服务器了。在使用 SSH 认证方式时,系统会自动读取您的私钥,如果您在生成公钥和私钥时设置了密码,则需要在连接服务器时输入该密码。

这就是 Ubuntu 向服务器添加公钥的方法,希望对您有所帮助。