当前位置:网站首页 > 编程语言 > 正文

ssh免密登录设置(ssh免密登录设置详细步骤是什么)



Secure Shell ( SSH )是一种加密网络协议,用于客户端和服务器之间的安全连接,并支持各种身份验证机制。基于密码的身份验证和基于公钥的身份验证是目前两种最流行的身份验证机制。

在本教程中,我们将向您展示如何设置基于 SSH 密钥的身份验证以及如何在不输入密码的情况下连接到 Linux 服务器。

设置 SSH 无密码登录

要在 Linux 中设置 SSH 免密登录,您只需生成公共身份验证密钥并将其附加到远程主机 ~/.ssh/authorized_keys 文件即可。

以下步骤将介绍配置 SSH 免密登录的过程:

1.检查现有的 SSH 密钥对。

在生成新的 SSH 密钥对之前,首先检查您的客户端计算机上是否已有 SSH 密钥,因为您不想覆盖现有密钥。

运行以下 ls 命令以查看是否存在现有 SSH 密钥:

ls -al ~/.ssh/id_*.pub

如果存在现有密钥,您可以使用这些密钥并跳过下一步或备份旧密钥并生成新密钥。

以下命令将生成一个新的 4096 位 SSH 密钥对,并将您的电子邮件地址作为注释:

ssh-keygen -t rsa -b 4096 -C ""

按 Enter 接受则默认文件位置和文件名:

Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

接下来,ssh-keygen 工具将要求您键入安全密码。无论您是否想要使用密码短语都取决于您,如果您选择使用密码短语,您将获得额外的安全保护。在大多数情况下,开发人员和系统管理员使用 SSH 而不使用密码,因为它们对完全自动化的流程很有用。如果您不想使用密码短语,请按 Enter

Enter passphrase (empty for no passphrase):

整个交互看起来像这样:



要确认是否已经生成 SSH 密钥,您可以使用以下命令列出新的私钥和公钥:




ls ~/.ssh/id_*

/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub

现在您已经生成了 SSH 密钥对,为了能够在没有密码的情况下登录到您的服务器,您需要将公钥复制到您要管理的服务器。

将公钥复制到服务器的最简单方法是使用名为的命令 ssh-copy-id 。在您的本地机器终端类型:

ssh-copy-id remote_username@server_ip_address

系统将提示您输入 remote_username 的密码:

remote_username@server_ip_address's password:

用户通过身份验证后,公钥将附加到远程用户 authorized_keys 文件,并且将关闭连接。

如果由于某种原因, ssh-copy-id 本地计算机上没有该实用程序,则可以使用以下命令复制公钥:

完成上述步骤后,您应该能够登录到远程服务器而不会被提示输入密码。

要测试它只是尝试通过 SSH 登录到您的服务器:

ssh remote_username@server_ip_address

如果一切顺利,您将立即登录。

要为服务器添加额外的安全层,可以禁用 SSH 的密码身份验证。

在禁用 SSH 密码身份验证之前,请确保您可以在没有密码的情况下登录到服务器,并且您登录的用户具有 sudo 权限。

1.使用具有 sudo 权限的用户或 root 用户,通过 SSH 密钥登录到远程服务器:

完成后保存文件并重新启动 SSH 服务。

在 Ubuntu 或 Debian 服务器上,运行以下命令:

sudo systemctl restart ssh

在 CentOS 或 Fedora 服务器上,运行以下命令:

sudo systemctl restart sshd

到此这篇ssh免密登录设置(ssh免密登录设置详细步骤是什么)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 富文本和文本的区别(富文本是什么)2026-05-09 16:27:08
  • 蓝牙hid协议怎么看有没有(蓝牙hid设备协议)2026-05-09 16:27:08
  • 苹果电脑装双系统怎么切换硬盘(苹果电脑装双系统如何切换)2026-05-09 16:27:08
  • 密码学库(密码学书)2026-05-09 16:27:08
  • vbf是什么类型的游戏(vbfi是什么游戏)2026-05-09 16:27:08
  • 数组方法map(数组方法map怎么用)2026-05-09 16:27:08
  • win7虚拟机镜像文件下载(win7虚拟机镜像文件下载在哪)2026-05-09 16:27:08
  • PlllP什么意思(plp是什么意思中文)2026-05-09 16:27:08
  • impdp导入dmp文件指定表(impdp导入dmp文件指定表空间)2026-05-09 16:27:08
  • 双系统卸载一个系统(双系统卸载一个系统有影响吗)2026-05-09 16:27:08
  • 全屏图片