温馨提示×

Linux SSH命令如何设置密钥认证

小樊
82
2024-11-15 11:37:53
栏目: 智能运维

要在Linux中通过SSH命令设置密钥认证,请按照以下步骤操作:

  1. 首先,确保你已经在本地计算机上生成了SSH密钥对(公钥和私钥)。如果没有,请使用以下命令生成一个新的密钥对:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

按照提示操作,你可以选择使用默认的文件路径或者自定义文件路径来保存密钥对。

  1. 将本地计算机的公钥添加到远程服务器的~/.ssh/authorized_keys文件中。你可以使用以下命令将公钥复制到远程服务器:
ssh-copy-id -i ~/.ssh/id_rsa.pub user@remote_host

其中,user是远程服务器上的用户名,remote_host是远程服务器的地址。在执行此命令时,系统会提示你输入远程服务器的密码。

  1. 确保远程服务器上的SSH配置文件(通常位于/etc/ssh/sshd_config)允许使用密钥认证。找到或添加以下配置行:
PubkeyAuthentication yes
  1. 为了提高安全性,你还可以禁用密码认证。找到或添加以下配置行:
PasswordAuthentication no
  1. 保存并关闭SSH配置文件。然后,重启SSH服务以使更改生效:
sudo systemctl restart ssh

或者

sudo service ssh restart

现在,你应该可以使用密钥认证通过SSH连接到远程服务器了。当你尝试连接时,系统会提示你输入私钥的密码(如果你设置了的话)。

0