当前位置:首页>Linux>不用买云服务器!零成本拥有永久免费 Linux 开发机

不用买云服务器!零成本拥有永久免费 Linux 开发机

  • 2026-09-02 17:10:25
不用买云服务器!零成本拥有永久免费 Linux 开发机

前言

不需要云服务器,不需要公网IP,只需要一个GitHub账号,就能拥有一台永久免费的Linux开发环境。

本文将教你通过Cloudflare Tunnel将GitHub Codespaces的SSH端口映射到本地,实现随时随地免密访问。

第一步:配置GitHub SSH密钥

1 生成SSH密钥对

在本地Ubuntu服务器上执行以下命令生成ED25519密钥:

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

一路回车确认,密钥会保存在 ~/.ssh/id_ed25519.pub 文件中。

2 添加公钥到GitHub

复制公钥内容:

cat ~/.ssh/id_ed25519.pub

登录GitHub,进入设置页面:

https://github.com/settings/keys

点击"New SSH key",粘贴公钥内容,设置名称后保存。

提示: 如果无法直接访问GitHub,可以使用fastgithub_win-x64等加速工具辅助登录。

第二步:创建GitHub Codespaces

访问GitHub Codespaces页面:

https://github.com/codespaces

点击"New codespace",选择"Blank"模板,命名为 codesrv,创建完成后会打开一个类似VS Code的在线编辑器。

我们主要使用它的Shell终端环境进行后续操作。

第三步:本地安装GitHub CLI

SSH登录到你的本地Ubuntu服务器,执行以下一键安装命令:

(type -p wget >/dev/null || (sudo apt update && sudo apt install wget -y)) \ && sudo mkdir -p -m 755 /etc/apt/keyrings \ && out=$(mktemp) && wget -nv -O$out https://cli.github.com/packages/githubcli-archive-keyring.gpg \ && cat $out | sudo tee /etc/apt/keyrings/githubcli-archive-keyring.gpg > /dev/null \ && sudo chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg \ && sudo mkdir -p -m 755 /etc/apt/sources.list.d \ && echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null \ && sudo apt update \ && sudo apt install gh -y

登录GitHub CLI

安装完成后执行登录命令:

gh auth login

按照提示选择HTTPS方式,通过浏览器完成验证。

查看Codespaces列表

gh cs list

你应该能看到刚才创建的 codesrv 实例。

第四步:安装Cloudflare Tunnel

这是最关键的一步,我们需要在Codespaces环境中安装cloudflared来实现端口映射。

1 登录到Codespaces

gh cs ssh

执行此命令会直接登录到你的codesrv实例。

2 在Codespaces中安装cloudflared

sudo wget -q https://pkg.cloudflare.com/cloudflare-main.gpg -O /usr/share/keyrings/cloudflare-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/cloudflare-archive-keyring.gpg] https://pkg.cloudflare.com/cloudflared $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/cloudflared.list sudo apt update && sudo apt install cloudflared -y

3 启动快速隧道映射SSH端口

cloudflared tunnel --url tcp://127.0.0.1:2222

启动成功后,你会看到类似这样的输出:

2026-06-10T06:27:26Z INF |  Your quick Tunnel has been created! Visit it at (it may take some time to be reachable):  | 2026-06-10T06:27:26Z INF |  https://facilities-con-forty-absolute.trycloudflare.com    

记下这个隧道地址,后面会用到。

第五步:本地连接远程Codespaces

1 本地安装cloudflared

在本地Ubuntu服务器上执行同样的安装命令:

sudo wget -q https://pkg.cloudflare.com/cloudflare-main.gpg -O /usr/share/keyrings/cloudflare-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/cloudflare-archive-keyring.gpg] https://pkg.cloudflare.com/cloudflared $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/cloudflared.list sudo apt update && sudo apt install cloudflared -y

2 后台连接隧道

将下面命令中的地址替换为你刚才得到的隧道地址:

nohup cloudflared access tcp --hostname facilities-con-forty-absolute.trycloudflare.com --url localhost:2222 >github.log &

这样本地的2222端口就会被映射到Codespaces的2222端口。

3 免密SSH登录

ssh -p2222 codespace@127.0.0.1

恭喜!你现在已经成功登录到GitHub Codespaces的远程Linux环境了。

总结与扩展

通过这种方法,你不仅可以映射SSH端口,还可以将Codespaces上的任何端口映射到本地使用。

比如Web服务、数据库端口等,相当于拥有了一个完全免费的云端开发环境。

注意事项:
1. GitHub Codespaces免费版每月有使用时长限制
2. 快速隧道地址每次重启都会变化
3. 建议定期备份重要数据

觉得有用就点赞分享吧 👍

关注我,获取更多实用技术教程

最新文章

随机文章