云计算百科
云计算领域专业知识百科平台

ssh 免密登录服务器(vscode +ssh 免密登录)

每次打开vscode连接服务器都需要输入密码,特别繁琐。 然后自己在网上翻阅了一下教程,发现说的内容比较啰嗦,而且个人感觉非常有误导性倾向。 因此自己直接干脆写一个简便易懂的教程算了。 (以经过本人亲测,真实可靠)

windows 免密连接远程服务器

1. 生成 SSH 密钥

== 这一步一定是在自己本地生成,还不是在服务器中去生成。 == 比如我本地是windows,然后通过cmd去ssh连接远程服务器,那么我首先需要在本地创建一个密钥(包含一个私钥和一个公钥)。

ssh-keygen -t rsa -C "your_email@example.com"

  • 一路回车即可
  • 然后这个存在公钥我本地的路径为:C:\\Users\\heroh/.ssh/id_rsa.pub
    • 这个路径在上述生成过程中可以查看

2. 将密钥中的公钥传到服务器

  • 如果你的windows安装了git bash,那么在git bash中运行以下命令
  • ssh-copy-id -i C:\\Users\\heroh/.ssh/id_rsa.pub -p 22 user@serverIp

    • 第一个参数就是我本地公钥的路径地址
    • -p:指定端口号,默认为22
  • 也可以通过 PowerShell 命令一键完成
  • # 直接通过管道将公钥写入服务器(需输入密码)
    type $env:USERPROFILE\\.ssh\\id_rsa.pub | ssh user@serverIp "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

    过程说明

  • 首次运行 ssh-copy-id 时,需要输入服务器的密码来完成公钥的传输
  • 输入密码后,ssh-copy-id 会将公钥上传到服务器的 ~/.ssh/authorized_keys 文件中
  • 如果成功,你会看到类似以下输出:
  • Number of key(s) added: 1

    Now try logging into the machine, with: "ssh -p 12803 root@xxxx.com"
    and check to make sure that only the key(s) you wanted were added.

    3. 验证免密登录

    ssh -p 22 user@serverIp

    如果不需要密码,那就说明你已经成功了。

    vs code 免密登录

    完成上述操作后,你已经完成80%的操作了。

  • 在vs coder 扩展市场中下载 Remote-SSH 扩展 在这里插入图片描述
  • 进入扩展配置 在这里插入图片描述
  • 配置你服务器的ip和port即可
  • Host 111.111.111.111
    HostName 111.111.111.111
    User root
    Port 60022

  • 然后回到上面第二步,选择你的服务器连接即可
  • 赞(0)
    未经允许不得转载:网硕互联帮助中心 » ssh 免密登录服务器(vscode +ssh 免密登录)
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!