使用Cloudflare时如何通过VS Code访问cPanel远程代码文件
问题解决方案
Cloudflare默认仅代理80/443端口的HTTP/HTTPS七层流量,21、22这类非Web端口默认会被拦截过滤,以下是经过实测可行的方案,按实现成本从低到高排序:
Cloudflare原生配置方案
- 独立子域名直连源站
新增ssh.你的域名、ftp.你的域名两条A记录,直接指向cPanel服务器真实公网IP,将这两条记录的Cloudflare代理状态从橙云改为「仅DNS解析(灰云)」,这两个子域名的流量将完全绕过Cloudflare过滤,直接连通源站的21、22端口,配置完就能正常用FTP、SSH连接,VS Code的Remote-SSH、SFTP插件都能直接用。注意:该方案会暴露源站真实IP,对源站IP隐藏有要求的话不推荐使用。 - 免费Cloudflare Tunnel隧道转发
不需要付费,也不用暴露源站IP。在cPanel服务器上安装cloudflared客户端,配置TCP隧道将本地22端口、21端口映射到Cloudflare边缘网络,本地VS Code配置SSH/SFTP连接走cloudflared隧道接入,全程走443端口加密传输,不会被Cloudflare拦截,也不需要在服务器上开放额外公网端口。 - Cloudflare Spectrum端口代理
适合有付费版Cloudflare(Pro及以上套餐)的用户,直接在Spectrum控制台添加21、22端口的TCP代理规则,Cloudflare会在边缘层直接转发这两个端口的流量到源站,不需要改DNS解析状态,也不会暴露源站IP。
无需调整Cloudflare的替代方案(仅用现有开放的80/443端口)
- cPanel WebDAV挂载本地目录
cPanel默认自带Webdisk(WebDAV)服务,走443端口HTTPS协议,在cPanel后台开启Webdisk功能、配置好访问账号后,直接在本地系统挂载WebDAV网络驱动器,把远程站点目录映射为本地磁盘,VS Code直接打开映射后的本地目录即可编辑代码,全程走443端口,不会被任何规则拦截。 - Web版VS Code直接访问
在cPanel站点目录部署code-server(VS Code的Web发行版),配置好域名反代走443端口HTTPS访问,直接用浏览器打开就能编辑代码,不需要本地做任何远程连接配置;也可以配合VS Code官方的Remote-Tunnels插件,从本地桌面版VS Code直连远程code-server实例,全程走HTTPS隧道传输。 - Git改用HTTPS协议传输
把Git仓库的远程地址从SSH格式改成HTTPS格式,cPanel自带的Git版本管理功能默认支持HTTPS鉴权,pull/push操作全程走443端口,不会被Cloudflare拦截。
避坑提醒:不要直接把SSH、FTP服务改到443端口尝试绕过Cloudflare,Cloudflare的七层代理会识别非HTTP/HTTPS流量,直接重置连接,完全无法稳定使用。
内容的提问来源于stack exchange,提问作者Sunil Sapkota
相关产品推荐
相关产品推荐

