缘起
上回说到如何在爱快软路由虚拟机里安装windows系统,末了提到一嘴内网穿透的事宜,想必很多小伙伴都有内网穿透的需求吧,今天就来介绍一个主流的内网穿透服务——frp,说到frp很多小伙伴都不陌生,很多穿透网站就是用frp实现的,我前面的文章也介绍过如何白嫖内网穿透服务,感兴趣的小伙伴可以去看看,今天我们会自己搭建frps,所以是需要一台服务器的。自己搭建的好处就是稳定,稳定,还是tmd稳定,我是遇到过很多关键时刻掉链子的内网穿透,自己搭的frp稳定运行一年多了都没出问题。话不多说我们开始折腾。
折腾
首先需要在服务器上操作,至于服务器在哪里搞,就看个人喜好了,国内的云服务器厂商这两年优惠力度挺大的,根据自己的喜好选择就是了。在某全球最大同行交流网站上搜索“frp”不出意外的话第一个就是“fatedier/frp”项目,点进去找到release界面,根据自己的服务器类型下载对应压缩包,一般来说都是下载图示我框选出来的文件。当然你也可以ssh进服务器在命令行中输入命令下载,不过不建议这么做,因为懂的都懂的原因,国内大部分服务器对全球最大同行交流网站的下载速度都不是太友好,还是用自己的电脑下载下来再传上去快点,一般来说是这样的。
ssh进服务器,找一个你喜欢的目录将下载下来的frp文件解压后上传到这里,建议直接上传到根目录就行了,好找。把文件夹重命名一下,改个简单点的名字,一般命名为“frp”就不错。打开文件夹里面的文件应该跟我这里是一样的,右击文件夹给予文件夹里面的文件权限。
接下来我们需要编辑下文件夹内的“frps.ini”文件按照图示在下面加一行密码就行了,默认监听端口是7000,可以改的,一般默认就可以[common] bind_port = 7000 token = testtest
编辑完成后保存即可。记得要去防火墙放行监听端口。
部署好后先来测试一下,进入到frp文件夹,执行./frps -c frps.ini
命令,看到图示运行结果就说明部署好了。
为了让frp在服务器重启后能自动运行,我们需要设置下开机自启,方法有很多种,介绍种简单的。在frp目录里建立一个脚本文件并给予权限,如图示将命令输入进去cd /root/frp nohup ./frps -c frps.ini >/dev/null 2>&1 &
再到“/etc”文件夹里找到“rc.local”文件,编辑该文件,在最后加上一行/root/frp/1.sh
如图示,重启下服务器看看是否设置成功,在端口里能看到frps就是成功了。
接下来要来设置frp的客户端,推荐使用openwrt里面的frp客户端,简单设置下就可以搞定。首先我们打开openwrt后台管理界面,在“服务”选项里找到“frp内网穿透”选项,按照图示配置,先将“启用”勾选上,“服务器”填写服务器的ip地址,“端口”填写之前设置的监听端口,“令牌”填写之前设置的密码,其他的没有特殊需求保持默认即可,确认无误后点击“保存&应用”,左上角frp状态就变成运行中了。
客户端启动后我们还需要添加一下需要内网穿透的服务,滑动到frp设置界面的最下方,如图示在服务列表选项卡里点击“添加”按钮,来到新界面如图示配置参数,“开启状态”选择启用;“frp协议类型”选择TCP;“远程端口”在范围内随意选择一个即可,我这里填1010,记得要在服务器防火墙放行这个端口;“内网主机地址”选择你要穿透的服务的内网地址,也可以自定义;“内网主机端口”如果你的服务平常访问没有带端口的话,http填写80,https填写443;“服务备注名”随意填写即可,要保证唯一性,确认无误后点击“保存&应用”
如果一切顺利的话,访问设置的服务器地址加上刚才设置的远程端口就可以访问到你穿透的服务了。
总结
能实现内网穿透的方式多种多样,光openwrt的服务里面就有好多,frp这种方式我觉得是比较稳定的,穿透的稳定性取决于你的服务器网络的稳定性,一般用国内的云服务器的话速度是很快的,带宽不大但是对于网页来说是够用了,如果要追求大带宽的话可以选择其他穿透方式,比如ddns就很不错,有机会的话也写篇文章介绍介绍。
文章评论