backgroundbackground

使用Chisel+CDN+IPv6访问内网服务

Chisel / CDN / IPv6

教程

2024-11-24 07:27

前言

公网IP是个好东西,但是可遇而不可求,好在现在家宽IPv6已经广泛可用了,但是在外面不总是有IPv6环境的,你会说套一层Cloudflare做转换呀,但是有个局限就是只能用HTTP服务,那么有没有办法绕过这个限制,最大限度的薅Cloudflare的羊毛呢

当然有,那就是ChiselChisel是一个端口转发以及流量转换工具,能将TCPUDP流量用WebSocket协议转发,关于Chisel教程可以参考我写的这篇 Chisel - 强大的端口转发和网络隧道工具

准备工作

Cloudflare配置

1、在Cloudflare的控制台配置地址解析,将你的域名解析到你的IPv6地址上

2、在SSl/TLS选项内选择源服务器,创建源服务器证书,将证书和密钥下载到内网服务器上,假设文件名为key.pemcert.pem

3、然后在规则Origin Rules中创建规则,将所有传入请求重写到11443

因为家宽的44380等端口一般是封锁的,所以只能换其他端口

内网服务配置

在内网服务器上安装Chisel,然后执行下面的命令:

chisel server -p 11443 --keepalive 10s --socks5 --reverse --auth 'user:password' --tls-key key.pem --tls-cert cert.pem

这里指定Chisel的服务端口为11443,和上面Cloudflare中定义的规则一致
用户名密码'user:password'根据情况调整,客户端也要保持一致
Chisel教程参考这个:Chisel - 强大的端口转发和网络隧道工具

开始使用

现在假如你在外面,只需要在电脑上执行下面这个命令:

chisel client -v --auth 'user:password' https://你的域名:443 \
    22:localhost:22 \
    8080:localhost:8080

这里映射了一个SSH端口和一个Web端口
你的域名改成实际的域名地址
端口443Cloudflare暴露的地址

然后在浏览器输入localhost:8080,即可访问内网服务器上的8080端口

执行ssh user@localhost,即可SSH连接到内网服务器