Visual Studio code远程连接Linux超详细教程

[复制链接]
发表于 2026-10-6 11:19:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×

一、Linux 侧先把 SSH 装好

VS Code 远程开发的底层就是 SSH,所以第一件事不是在 Windows 上怎么点,而是让 Linux 能接受连接。默认端口是 22。

Ubuntu 上一般自带 OpenSSH 服务端,没有就装:

sudo apt-get update
sudo apt-get install openssh-server
sudo systemctl enable --now ssh

CentOS / Rocky / AlmaLinux 系用 yum:

sudo yum install openssh-server
sudo systemctl enable --now sshd

确认端口在听:

ss -lntp | grep :22

连不上先查这两处:云厂商安全组有没有放行 22,本机防火墙(ufw 或 firewalld)有没有拦。本地机器先自己测一把:

ssh 用户名@服务器IP

二、VS Code 装 Remote SSH 插件

打开 VS Code,用 Ctrl+Shift+P 唤出命令面板,搜「Configure Display Language」可以先切中文(已汉化可跳过)。然后点左侧扩展图标,搜 Remote-SSH 安装——这是微软官方插件,装完左下角会出现绿色远程图标。

配置连接信息,打开命令面板输入 Remote-SSH: Open Configuration File,选默认路径,加一段:

Host dev-linux
    HostName 192.168.1.20
    User ubuntu
    Port 22
    IdentityFile ~/.ssh/id_rsa

配好之后点左侧远程图标,选中 dev-linux 连接,弹出的新窗口里打开文件夹,就能像操作本地一样编辑远程文件,终端、调试、Git 全都在远程上跑。

三、免密登录怎么配

每次输密码很烦且影响自动化。做法是密钥登:

Windows 端(PowerShell)生成密钥,一路回车即可:

ssh-keygen -t rsa -b 4096

把公钥推到服务器:

ssh-copy-id 用户名@服务器IP

没装 ssh-copy-id 就手动拷:

type $env:USERPROFILE\.ssh\id_rsa.pub | ssh 用户名@服务器IP "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

服务端建议再收紧一点:/etc/ssh/sshd_config 里确认 PubkeyAuthentication yes,同时把 PasswordAuthentication 设成 no,密码登录一关,爆破就打不进来了。改完重启 sshd:

sudo systemctl restart sshd

四、实际开发中的几处优化

  • 改端口:公司网络 22 常被封,装 SSH 时改个端口(如 2222),配置里 Port 2222 对应写进 hosts 段,别忘了同步安全组和 SELinux 端口登记。
  • 稳定性:远程窗口挂久了断,在客户端配置加 ServerAliveInterval 30 和 ServerAliveCountMax 10 保活。
  • 转发 GUI:远程跑图形程序,配 ForwardX11 yes 或走 X11 转发,比再开一层 VNC 省事。
  • 端口转发:远程上的服务(比如 8080 的接口、数据库端口)用 VS Code 的端口转发直接映射到本地,浏览器 localhost 就能访问,不用再记一堆 ssh 隧道命令。
  • 多机管理:hosts 段可以一次写好几台,用不同 Host 名区分,切换只点一下。

五、连不上的排查顺序

  • ssh: connect to host x port 22: Connection refused —— 服务没起,systemctl status ssh 看状态。
  • Connection timed out —— 网络或安全组,telnet IP 22 试通断。
  • 能连上但认证失败 —— 密钥权限不对,服务器上 ~/.ssh/authorized_keys 和 .ssh 目录不能是 777,标准权限是 700 和 600。
  • 连上了但打开文件夹卡住 —— 多为远端缺 rsync 或磁盘挂载异常。

qidao123.com企服评测-应用市场 编辑提示

本文按 Ubuntu 与 CentOS 两类系统给出 SSH 服务安装、密钥免密登录、VS Code Remote-SSH 配置与常见连接故障顺序,命令均按 Linux 环境校验。生产环境建议关闭密码登录仅保留密钥,改端口时同步放行安全组与 SELinux。企业开发环境可用一套 hosts 模板集中管理多台机器,配合端口转发减少手工隧道操作。

回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表