码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • VSCode远程开发 Windows11 Linux


    问题背景

    之前一直用JetBrains的Gateway和本地Linux虚拟机开发,不过笔记本配置不够,太卡了。最近租了个国外的便宜服务器,JetBrains的Gateway总断连,也不知道为什么,所以试试VSCode。

    本地 Windows 11 ,远程 Ubuntu 22.04.3 LTS (GNU/Linux 5.15.0-25-generic x86_64)

    2024-02-22 之前存的草稿没发布,不幸电脑安装了个Windows11测试版更新进不了桌面,重装后又装了一次。

    解决过程

    一般使用ssh连接的命令(需要另行输入密码):

    ssh <User Name>@<IP Address>
    ssh root@192.168.134.130
    
    • 1
    • 2

    之前远程已经安装了go和ssh。

    安装vscode-remote-extensionpack

    在这里插入图片描述

    安装ns(ncat,nc)

    连接到服务器走代理可能速度快一些,需要用到nc。

    我之前就安装了 Windows 包管理工具Chocolatey。

    2024-02-22 补充:安装 Chocolatey
    使用管理员权限模式打开Powershell,执行以下命令,安装并检查是否安装成功:

    Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
    
    choco -?
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    问一问 ChatGPT ,可知需要安装 nmap,其中包括ncat,ncat是nc的一个增强的版本。顺便问后文所提的代理命令。

    choco install nmap
    
    • 1

    配置ssh

    在本地配置ssh

    对于一般的配置,可以通过输入使用的ssh命令添加远程。
    在这里插入图片描述
    对于较复杂的配置,可以通过编辑ssh配置文件~/.ssh/config,~表示用户目录。
    在这里插入图片描述
    配置后内容如下:
    在这里插入图片描述

    Host xxx
        HostName 127.x.x.x
        User root
        ForwardAgent yes
        IdentityFile ~/.ssh/id_ed25519
        ProxyCommand ncat --proxy localhost:7890 --proxy-type http %h %p
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • Host 是名字
    • HostName 是 IP 地址
    • User 是远程的用户名
    • ForwardAgent 大概是指是否支持远程机器使用本地密钥
    • IdentityFile 在本地生成的ssh私钥
    • ProxyCommand 代理命令

    id_ed25519 生成参考:
    Github: 生成新的 SSH 密钥并将其添加到 ssh-agent
    在 Git for Windows 上自动启动 ssh-agent
    测试 SSH 连接

    注意:代理要配置为可以接受“局域网连接”,也就是同一机器上程序的连接,大概是因为监听localhost

    在远程配置ssh

    把 IdentityFile 对应的公钥发送到远程,配置远程ssh支持通过此公钥登录。

    修改 ssh 配置 /etc/ssh/sshd_config:
    (我的机器初始时以下前两行是注释掉的,后一行没有,不确定实际需不需要后一个)

    PubkeyAuthentication yes
    AuthorizedKeysFile      .ssh/authorized_keys
    
    RSAAuthentication yes
    
    • 1
    • 2
    • 3
    • 4

    在.ssh/authorized_keys中加入公钥的内容,无需执行重启等其它操作。

    SSH timed out

    因为总是连接错误,提示:
    Could not establish connection to "xxx": Connecting with SSH timed out.

    VSCode Setting设置中配置(我直接都设了,没注意是哪个起了作用):

    • remote.SSH.useLocalServer : true
    • remote.SSH.remotePlatform : {“Host”: “linux”}

    Host为ssh配置中的Host。

    在这里插入图片描述

    后续步骤

    后续按提示安装 VSCode Golang 需要的工具。

    尚存的问题

    构建的时候

    参考资料

    ChatGPT: 配置VS Code远程代理

    【Linux】配置SSH免密登录
    使用Linux,从正确配置ssh开始
    vscode+go远程开发
    VScode连接linux服务器timed out [Could not establish connection * SSH timed out] 解决方案集合,总有一个能成功
    vscode和虚拟机联网的一些问题备注
    windows平台VS code配置remote ssh

    Github: Connecting to GitHub with SSH
    Github: Troubleshooting SSH
    Gitee: SSH 公钥设置

  • 相关阅读:
    原型模式(创建型)
    代码随想录day38|DP动态规划登场|理论基础|509. 斐波那契数|70. 爬楼梯|746. 使用最小花费爬楼梯|Golang
    Bootstrap的列表组相关知识
    国内大型语言模型(LLM)的研发及突破性应用
    cs224n-2022-assignment1
    二、防火墙-安全策略
    从零开始完成一副西南地区全图的地图版面设计
    本地引入 Axios 报错
    4.Mybatis 环境搭建
    可转债列表页与日频交易数据呈现:fastapi+antV G2
  • 原文地址:https://blog.csdn.net/u010834463/article/details/136062627
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号