使用私钥登录 SSH 服务器(免密登录)

这篇具有很好参考价值的文章主要介绍了使用私钥登录 SSH 服务器(免密登录)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

SSH(Secure Shell)是一种用于远程登录和安全数据传输的协议。通过SSH,您可以在不安全的网络上安全地连接到远程服务器,并进行加密的数据传输。SSH支持多种身份验证方式,其中之一是使用SSH密钥对进行免密码登录。以下是使用私钥登录SSH服务器的详细介绍:

  1. 生成SSH密钥对

    • 在本地计算机上打开终端或命令行。

    • 使用以下命令生成SSH密钥对。这将创建一个RSA密钥对,包括一个私钥(id_rsa)和一个公钥(id_rsa.pub)。

      ssh-keygen -t rsa
      
    • 您将被提示选择密钥的存储位置和密码(可选)。按照提示进行操作即可生成SSH密钥对。

  2. 复制公钥到服务器

    • 使用以下命令将您的公钥(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_usernameyour_server_ip_or_hostname为实际的用户名和服务器地址:

        ssh your_username@your_server_ip_or_hostname
        

        您将需要输入服务器密码以进行连接。

      4. 创建~/.ssh目录(如果不存在):

        如果~/.ssh目录不存在,可以使用以下命令创建它:

        mkdir -p ~/.ssh
        
      5. 打开authorized_keys文件进行编辑:

        使用文本编辑器(如nanovim)打开~/.ssh/authorized_keys文件:

        nano ~/.ssh/authorized_keys
        
      6. 在文本编辑器中,粘贴您本地计算机上生成的公钥内容(id_rsa.pub文件中的内容)。

      7. 保存并退出文本编辑器:

        • 如果您使用nano编辑器,按Ctrl + O保存文件,然后按Enter
        • 然后按Ctrl + X退出编辑器。
      8. 设置文件权限:

        为了确保安全性,您需要设置~/.ssh目录和authorized_keys文件的权限。运行以下命令:

        chmod 700 ~/.ssh
        chmod 600 ~/.ssh/authorized_keys
        

        这将仅允许您的用户访问这些文件。

    • 命令生成之后使用 ls 命令查看一下

    	id_rsa  id_rsa.pub
    
    • 密钥生成后会在当前目录下多出两个文件,id_rsa 和 id_rsa.pub,其中 id_rsa 是私钥(客户端使用),id_rsa.pub 这个是公钥(服务器使用)

      现在,您已经手动将公钥内容追加到服务器上的~/.ssh/authorized_keys文件中,以允许使用私钥进行SSH免密码登录。

  3. 连接到SSH服务器

    • 现在,您可以客户端使用私钥进行SSH连接。在本地终端或命令行中,运行以下命令以连接到服务器:
     ssh -i id_rsa your_username@your_server_ip_or_hostname
    
    • 您将不再需要输入服务器密码,而是会自动使用私钥进行身份验证。

通过这些步骤,您已经实现了SSH服务器的免密码登录。请确保您妥善保管私钥文件,以确保安全性。这种方式不仅方便,还提高了服务器的安全性,因为私钥通常比密码更难被破解。文章来源地址https://www.toymoban.com/news/detail-765973.html

到了这里,关于使用私钥登录 SSH 服务器(免密登录)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • VSCode远程连接服务器(SSH免密登录)

            连接远程服务器的方式众多,本文将介绍基于VS Code的SSH免密登录方法。在开始SSH远程链接以前,您需要完成以下步骤: 1.以Windows平台为例,您需要在cmd终端(Win+R输入cmd)输入: 如果出现信息即代表Windows端的SSH配置完成。 2.Windows生成公钥的方法: 如果您可以在

    2023年04月26日
    浏览(57)
  • mac ssh远程登录服务器免密设置

    1) 进入私钥存放地址 在mac上打开终端。一般私钥存放在.ssh目录里,所以cd到~/.ssh目录。可以先ls查看一下是否存在私钥和公钥文件。拥有.pub结尾的文件是公钥文件,无.pub的是私钥文件。 2) 生成公私钥对 若没有现存的公钥和私钥文件则需要创建一个,代码如下: 到这里就

    2024年03月26日
    浏览(48)
  • VSCode配置SSH远程免密登录服务器

    VScode远程开发时,每次都需要输入密码,其实同理可以和其他应用类似配置免密登录,流程也类似。 1.在本地主机生成公钥和秘钥         ssh-keygen 2.将公钥内容添加至服务器         将生成钥对时会给出其保存路径,找到公钥,复制内容,添加到如下文件。         s

    2024年02月13日
    浏览(50)
  • 简单几步学会Linux用户使用SSH远程免密登录,LinuxSSH服务器配置允许/禁止某些用户远程登录

    本文基于Linux上CentOS 7版本配合Xshell 7进行演示 目录 一.SSH简介 1.介绍 2.工作流程 二.具体配置免密步骤 1.配置前准备工作 2.正式配置过程 三.在服务器端配置SSH远程黑白名单 1.配置文件/etc/ssh/sshd_config部分参数解析 2.配置远程登录黑白名单 SSH用于计算机之间的加密登录,是一类

    2024年02月22日
    浏览(49)
  • vscode通过ssh连接远程服务器+免密登录(图文)

    1.打开Visual Studio Code,进入拓展市场(Ctrl+Shift+X),下载拓展Remote - SSH 2. 点击远程资源管理器选项卡,并选择远程(隧道/SSH)类别 3. 点击ssh配置 4.在弹出的选择配置文件中,点击第一个  5.在config文件中输入以下内容 如: 6.保存后点击左边刷新按钮  7.这时展开SSH,就能看到刚刚

    2024年02月14日
    浏览(65)
  • Liunx两台服务器实现相互SSH免密登录

    服务器1:server        IPV4:192.168.110.136 服务器2:client         IPV4: 192.168.110.134 [root@server ~]# systemctl disable firewalld            #关闭防火墙 [root@server ~]# setenforce  0                                    #关闭seLiunx [root@server ~]# getenforce Permissive [root@clien

    2024年02月07日
    浏览(38)
  • 阿里云服务器环境配置,ssh免密登录和配置docker

    此文章适合ubuntu20.04 64位和ubuntu22.04 64位版本 一.登陆服务器 租完服务器后,首选需要使用本地gitbash或者cmd进入服务器, 命令: ssh root@xxx   xxx为服务器公网ip,然后yes,然后输入密码就会进入自己的服务器, 二.创建用户 阿里云服务器默认权限是root用户,权限太高,所以需

    2024年02月04日
    浏览(40)
  • 两台服务器上的两个docker容器之间配置ssh免密登录

    因为要在两台服务器的容器上使用ucx实现GPU的RDMA,所以需要两个容器之间ssh免密登录 步骤如下(所有步骤均在容器内部进行) 切换成root用户 在容器内部安装openssh: # apt-get install openssh-client openssh-server 编辑ssh的配置文件,更改ssh的端口: # vim /etc/ssh/sshd_config 在最后一行加

    2024年03月13日
    浏览(50)
  • Visual Studio Code连接远程服务器连接ssh,并设置免密登录以及汉化

    本文介绍如何在Visual Studio Code连接远程服务器连接ssh,并设置免密登录以及界面汉化等。 https://code.visualstudio.com/Download 1.进入官网下载对应版本的IDE 1.点击左侧的“Extensions”拓展下载插件包Python、Chinese(记得点击右下角弹出来的应用即可重新启动展示中文界面)、ssh 2.点击

    2024年02月16日
    浏览(55)
  • SSH免密登录脚本-基于私钥

    一、前提 需要配置hosts文件先把集群内的主机名于IP对于关系解决好。 二、然后这个脚本会读取hosts ip与主机 ####需要安装sshpass   三、如果报错: identity_sign: private key /root/.ssh/id_rsa contents do not match public  

    2024年02月12日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包