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后方

相关推荐
Ivanqhz5 小时前
数据搬运是性能关键
java·服务器·网络·人工智能·深度学习
其实防守也摸鱼6 小时前
常见安全架构中 Shiro 的认证确认机制解析
运维·服务器·数据库·windows·github
Julien20046 小时前
自动挂载网络附加存储
linux·服务器·网络
K成长日志6 小时前
BLE链路层-隐私保护
网络·物联网·蓝牙·iot·ble
K成长日志6 小时前
BLE链路层-Feature Support
网络·嵌入式·无线通信·蓝牙·iot·ble
Ivanqhz7 小时前
Slope One 算法详解:与矩阵分解、共现矩阵的异同
java·服务器·网络·人工智能·深度学习
Wang's Blog7 小时前
Java 项目实战: 外卖平台-数据库环境搭建与十一张表结构解析
java·服务器·redis
王六米。8 小时前
RAG知识库建设 文档解析 切分与索引如何衔接
服务器·前端·网络·企业数字化转型·智钳智能盒子
wuyk5559 小时前
【Socket 进阶之路】第 7 章 IO 多路复用 select & poll 完整实战|多 fd 监听、超时等待、优缺点横向对比
服务器·开发语言·网络·数据库·物联网
人工智能培训9 小时前
大语言模型:从语言理解到通用智能的跃迁
linux·服务器·前端·人工智能