最新版frp0.60.0内网穿透教学

该文章已生成可运行项目,

申明:本人也是初学者小白,所会不过是代码复制粘贴,部分内容我自己琢磨的可能有错误,欢迎指正批评

作者:

雨云用户:longandlong,B站用户:老北京吨吨桶,uid:49296020,优快云用户:我不是BT男制作,本文欢迎转载,转载注明出处

前言:

本来一直想要不要做最新版的教学(主要懒,做这玩意基本没收益,教程基本就是我的备忘录),直到前两天域名被江苏反诈阻断,各种换域名的方式都秒阻断,当时怀疑旧教程的frp使用的tcp协议,流量经过运营商时被截取查看(后来发现应该是误封,可能因为使用的境外服务器导致的,致电反诈中心,提供备案号后,过了两天解封了),决定出个最新版的frp使用https协议的教程。

注意:使用tcp协议和https协议均无法查看访问者的IP,介意的使用http协议!

1)购买服务器,随便哪家都行,个人不建议🐧,我不清楚他们家是有缓存用户数据,还是有能绕开用户账号密码的方式查看用户数据内容的方法,亦或者其他方式,总之我吃过一回🐧的亏,被封服务器且无法退款,其他服务器厂商如🐜、TY的云服务器目前不清楚是否有这套机制,吃过类似亏的大佬们可以评论区留下厂商名字缩写,当然,如果是如:V那啥N等明显违法行为,厂商直接能检测的出的原因就不要说了。

我个人目前用的厂商为:雨云,链接:雨云 - 新一代云服务提供商原因为:哪怕使用美国线路,到我所在的江苏地区依旧能达到1-2mb/s速率的,其他包括所谓大厂境外所谓的50M,100M宽带,到了江苏地区速率分分钟降的200KB/S都没有,当然也可能是线路问题,雨云显示的速度:

之所以选境外服务器,是因为不需要备案(包括中国香港地区,可惜我买的时候香港服务器售罄),当然有条件最好备案,毕竟境内服务器延迟和速率要好很多,而且无备案有可能在江苏地区被阻断访问!使用我的优惠码MzEyMDc1可以获得一张首月5折优惠券

要求独立IP,2g内存以上,宽带根据自己所需要的服务,自行选择,系统选择centos 7.0以上,我的测试服务器为centos 7.7,完成后购买域名

(2)服务器centos设置:

先解析购买的域名,教程一大堆,就不增加篇幅了,不会请留言,我再出教程

SSH以管理员账号:root 登录服务器

服务端:

root登录先进入根目录:

cd /

然后把frp文件下载到根目录:

wget https://github.com/fatedier/frp/releases/download/v0.60.0/frp_0.60.0_linux_amd64.tar.gz

wget报未找到命令,需要下载wget:

yum -y install wget 

出现Cannot find a valid baseurl for repo: base,则是需要切换阿里源,具体方法参考:群晖安装虚拟机Centos7.*出现Cannot find a valid baseurl for repo: base解决方案

如果出现长时间未下载,则代表GitHub被封锁,可以下载下方压缩文件拖动到根目录:/

frp_0.60.0_linux_amd64.tar

进入根目录

cd /

解压文件

tar -zxvf frp_0.60.0_linux_amd64.tar.gz

改名文件夹方便操作

cp -r frp_0.60.0_linux_amd64 frp

服务端,我们只需要修改frps.toml文件即可,我用的是FinalShell连接的服务器,可以直接修改文件,用其他客户端需要敲命令(这部分自己查vim的指令)

可以右击下载,打开要修改的文件,默认是这样的:

将下列代码复制进去后,按图片说明一项项修改

代码:

bindPort = 47000
vhostHTTPSPort = 443
vhostHTTPPort = 80
auth.token = "123456789asdfg"
webServer.addr = "192.168.10.17"
webServer.port = 7001
webServer.user = "name"
webServer.password = "password"

完成后点击保存将frps.toml文件拖回FinalShell连接的服务器的frp文件夹中,进入改目录:

cd /frp

测试运行一下

./frps -c frps.toml

出现下图代码就是安装成功

输入CTRL+C,退出测试,接下来设置自启动,在np++上添加一个空白文件,复制进去以下代码:

[Unit]
Description=frps service
After=network.target

[Service]
Type=simple
ExecStart=/此处改为你实际的路径/frps -c /此处改为你实际的路径/frps.toml
Restart=on-failure
RestartSec=5s

[Install]
WantedBy=multi-user.target

保存,命名为:frps.service,将frps.service文件拖入服务器:/lib/systemd/system文件夹中,输入以下命令启动frp服务端:

systemctl start frps

输入以下命令设置frp服务端自启:

systemctl enable frps

输入以下命令,查看frp服务端运行状态:

systemctl status frps.service

至此服务端设置完毕!

客户端

我客户端使用的是centos做为frp的客户端,docker端也能使用,具体docker安装请自行搜索

因为我客户端和服务器端的系统都是centos,所以下载方法和解压方法都是一样的,可以参考服务端下载解压改名的操作,区别在于客户端需要修改的文件是:frpc.toml

打开要修改的文件,按图片修改:

代码:

serverAddr = "X.X.X.X"
serverPort = 47000
auth.token = "123456789asdfg"

[[proxies]]
name = "test-tcp"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 6000

以上是TCP协议,接下来是https协议访问

要使用https,我们先要有证书,最好是泛域名证书(这样我们只需要上传一个泛域名证书即可让所有二级域名都能使用https协议),没有就向各大厂商免费申请二级域名证书,腾讯云一年能申请免费50个3个月的二级域名证书(骂归骂,这点腾讯云还是挺大气,阿里好像只有20个?)

为了方便操作,我们直接在frp目录中新建一个文件夹存放证书,打开finalshell中frp目录,右击空白处新建文件夹

输入文件夹名称,如果是二级域名证书,建议输入该证书对应的域名以防止混淆!

将证书(crt和key文件)上传至该文件夹内

接着我们按下面的代码修改frpc.toml文件

代码:

serverAddr = "X.X.X.X"
serverPort = 47000
auth.token = "123456789asdfg"

[[proxies]]   #tcp格式
name = "test-tcp"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22remotePort = 6000

[[proxies]]   #https格式
name = "test-https"
type = "https"
localIP = "192.168.*.*"
localPort = 7400
customDomains = ["test.test.test"]
[proxies.plugin]
type = "https2http"
localAddr = "192.168.*.*:****"
crtPath = "/frp/test.test.test/test.test.test.crt"
keyPath = "/frp/test.test.test/test.test.test"
hostHeaderRewrite = "192.168.*.*"
requestHeaders.set.x-from-where = "frp"

在crtpath和keypath等号后面的目录一定要修改为自己的证书文件位置

接着输入自己的https://+二级域名+我们在服务端中vhostHTTPSPort中设置的端口号即可通过https访问我们内网中的web服务(演示中使用的是443端口,不需要加端口号,如果要使用443或者80端口,请确保服务端443和80端口没被占用,否则将报错,报错检查是否服务端安装了nginx并被启动了!)

当然,我们也能通过打洞的方式来保证安全的情况下访问我们SSH端口,此功能需要内网安装了frp客户端以及我们外网需要打洞访问的机器也安装客户端,而我们在外网的机器大部分情况下都是使用windows,需要windows的教程这篇就不继续了,以后看情况更新frp打洞

本文章已经生成可运行项目
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值