ssh配合密钥连接

ssh连接方法:

终端

在终端输入(user_name和ip_address改成自己的):
ssh -X user_name@ip_address

接着输入密码,即可ssh连接到服务器的终端

要断开连接的话,输入

exit

文件

在文件夹的其他位置-输入服务器地址输入:

ssh://user_name@ip_address

密钥(linux)

如果不想每次登陆都输入密码,可以通过在服务器上存放密钥实现

  1. 在本机生成密钥:
    ssh-keygen

    1. 首先会询问
      "Enter file in which to save the key"
      是决定密钥文件储存的位置,默认位置在"~/.ssh/"
      如果自定义路径,那么需要设置名称,例如
      /home/XXX/KEY/NAME-key

      将在这个路径下生成一对密钥,包含
      公钥:id_xxx.pub
      私钥:id_xxx

    2. 接着询问
      "Enter passphrase"
      是否给 私钥文件 加一个保护口令,如果设置了,那么每次使用私钥需要输入口令
      在自己的服务器上我一般不设置(直接回车)

      "Enter same passphrase again:"
      输入相同的口令进行确认

    3. 然后密钥就会生成

      密钥分为公钥和私钥
      私钥保存在自己机器上,用来证明"我是本人"
      公钥用来分发给希望连接的服务器,用来验证是否持有对应的私钥

  2. 向目标服务器拷贝公钥
    ssh-copy-id user_name@ip_address
    把你机的 SSH 公钥,追加到远程服务器指定用户的"~/.ssh/authorized_keys" 文件中,从而启用基于密钥的 SSH 登录。

    指定某一把公钥:
    ssh-copy-id -i ~/.ssh/id_edxxx.pub user_name@ip_address

    成功后显示
    "Number of key(s) added: 1"

  3. 重新使用
    ssh -X user_name@ip_address
    连接目标服务器,这时会最后一次要求输入密码。
    在这之后再使用ssh -X user_name@ip_address连接都不需要再输入密码

密钥(windows)

安装

打开"管理员 PowerShell"后,执行:

Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

把OpenSSH 目录加入"系统 Path"

Environment\]::SetEnvironmentVariable( "Path", \[Environment\]::GetEnvironmentVariable("Path","Machine") + ";$env:WINDIR\\System32\\OpenSSH", "Machine" )

然后关闭所有终端,重新打开 PowerShell

ssh -V

ssh-keygen -h

按照相同的方法生成密钥

然后在 Windows 本机查看公钥内容

type $env:USERPROFILE\.ssh\id_ed25519.pub

会看到一行类似:

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI... 24556@DESKTOP-XXXX

在目标服务器上

nano ~/.ssh/authorized_keys

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI... 24556@DESKTOP-XXXX

添加到authorized_keys后方

相关推荐
岁杪杪7 小时前
关于运维:LINUX 零基础
运维·服务器·php
猫头虎8 小时前
如何解决 OpenClaw “Pairing required” 报错:两种官方解决方案详解
网络·windows·网络协议·macos·智能路由器·pip·scipy
tianyuanwo8 小时前
企业级NTP客户端配置指南:基于内部NTP服务器的实践
运维·服务器·ntp客户端
charlotte102410248 小时前
高并发:关于在等待学校教务系统选课时的碎碎念
java·运维·网络
_别来无恙_9 小时前
TFTP的使用Linux
linux·服务器
gaize12139 小时前
Moltbot(Clawdbot) 专属轻量服务器
运维·服务器
Zaralike9 小时前
Linux 服务器网络不通排查 SOP(标准操作流程)
linux·服务器·网络
云姜.9 小时前
网络协议----OSI七层网络协议 和 TCP/IP四层(五层)网络协议
网络·网络协议
!chen9 小时前
LabVIEW TCP Server端工具TCP通信
网络·tcp/ip·labview
getapi9 小时前
注塑件的费用构成
linux·服务器·ubuntu