随身WiFi内网穿透_Cloudflared CF内网穿透小白教程

2023-04-15  阅读 1192 次

随身WiFi内网穿透

前提条件:

1.cloudflare账号必须有

2.账号下有一个已经生效的域名,比如yaaibk.com


首先设置域名,如果域名在其他服务商,想用到cloudflare上,域名DNS就必须填cloudflare的DNS,两个都填。看图操作

1.png


 然后输入你的域名后点击添加站点 


B.png再看图操作


C.png

继续


D.png


根据提示到你的域名服务商哪里修改域名的DNS


e.png

上面的设置好后就可以开始安装程序了


下载程序

wget https://git.histb.com/cloudflare/cloudflared/releases/download/2023.4.1/cloudflared-linux-arm -O /usr/bin/cloudflared

#设置权限

chmod +x /usr/bin/cloudflared

#登录 Cloudflared

cloudflared login

这时会弹出来一个URL,用浏览器打开,登录成功后关闭浏览器,再次打开URL,这时候会出现授权 页面,然后选择你想用来做内网穿透的域名授权即可

yaaibk_202304180219-31.pngyaaibk_202304180237-12.pngyaaibk_202304180237-32.png


终端这里会显示成功下载证书

yaaibk_202304180916-24.png

建立隧道

cloudflared tunnel create yaai <你的隧道名称>

隧道名称例子cloudflared tunnel create yaai     里面的yaai就是隧道名,随便起个名称

成功后会提示,同时得到一个隧道ID,复制下来备用

yaaibk_202304180247-47.png

如:bfb3f431-7615-4c6c-a907-71525fec8acb

#新建配置文件目录

mkdir -p /etc/cloudflared/

#切换到配置文件目录

cd /etc/cloudflared/

#新建配置文件(写配置文件 i编辑,ESC退出编辑,:q退出,:wq!保存并强制退出)

vim config.yml

#把下面的代码复制到config.yml里面(注意先把下面代码里的ae4c5b0a-0514-4204-88b2-aee0424cc5ad替换成刚刚复制下来的隧道ID)

tunnel: ae4c5b0a-0514-4204-88b2-aee0424cc5ad

credentials-file: /root/.cloudflared/ae4c5b0a-0514-4204-88b2-aee0424cc5ad.json

ingress:

  - hostname: dy.yaaibk.com

    service: http://127.0.0.1

  - hostname: yp.yaaibk.com

    service: http://127.0.0.1:6065

  - hostname: dc.yaaibk.com

    service: http://127.0.0.1:8081
    
  - service: http_status:404


解释一下

tunnel:<id>就是你隧道的那个id,粘贴上,不需要双引号比如123156465-456adwada456dwad-dawdawd

credentials-file: 不需要你动

protocol: 可选项<auto/quic/http2/h2mux>, auto默认quic,使用quic回源时,对性能占用往往很高,如果没有很变态的延迟要求的人,建议用http2和h2mux,h2mux你可以理解为多通道的意思,实测这俩区别不大(如果你禁用了udp也是不能用quic的注意啦)

ingress: 相当于入站规则 hostname是绑定到这个隧道的cf托管域名,这个tunnel不会自动添加,你需要cli那一步去dashboard手动添加 最后一个service: http_status:404,这个必须得加,有个收尾规则,你可以吧404改成666或者123,那无所谓



给隧道分配域名(里面的yaai就是隧道名称)

cloudflared tunnel route dns yaai dy.yaaibk.com
cloudflared tunnel route dns yaai yp.yaaibk.com
cloudflared tunnel route dns yaai dc.yaaibk.com

安装服务

cloudflared service install

设置自启动

systemctl start cloudflared

查看信息(可无)

systemctl status cloudflared


想要删除的话,用下面的命令

cloudflared service uninstall
rm -rf /root/.cloudflared/cert.pem

多域名指向不同端口的设置办法:

tunnel: 6fx42ae2-765d-4adf-8112-31c55c1551ef

credentials-file: /root/.cloudflared/6fx42ae2-765d-4adf-8112-31c55c1551ef.json

ingress:- hostname: gitlab.widgetcorp.tech

service: http://localhost:80- hostname: gitlab-ssh.widgetcorp.tech

service: ssh://localhost:22- service: http_status:404

上面的配置文件里设置不同的域名对应的端口

下面的给隧道分配域名,给同一个隧道添加多个域名

cloudflared tunnel route dns yaai yi.yaaibk.com
cloudflared tunnel route dns yaai yi2.yaaibk.com
cloudflared tunnel route dns yaai yi3.yaaibk.com

但是,这种办法也只能是用同一个域名分不同的子域名实现,不同的主域名没找到办法。


它可以穿透所有TCP协议,使用方法也很简单

把config.yaml修改一下就行了,比如

service: tcp://127.0.0.1:8888


yaaibk_202305192051-44.png

附:如果打开网站报错 Error 1033 说明你的隧道ID错了,检查一下

yaaibk_202304181029-15.png



查看资料

CF内网穿透快速重新安装方法

本文地址:http://yaaibk.com/post/341.html
版权声明:本文为原创文章,版权归 本站 所有,欢迎分享本文,转载请保留出处!

评论已关闭!