FRP内网穿透教程完美解决没有公网的问题!

2021-07-10 22:31:34 119点赞 865收藏 71评论

第一次写教程,写的不好站内各位大佬多多包涵

FRP内网穿透方案,图文并茂。保证人人都能外网访问家里的各种服务或远程家里的电脑!欢迎先收藏,再观看。

前言:

作为一个运维佬家里没有公网IP想远程家里的电脑拿些文件很麻烦,所以自己建了个FRP服务器作为中转好去访问家里的设备

我这种外放访问方式的速度取决与家里的上传速度和服务器的带宽上限,我曾经试过zerotier延迟太高,所以用了自建FRP的方案。

下面就是正文啦:

先来介绍一下什么是frp:

1、frp是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持tcp, udp,http, https等协议类型,并且web服务支持根据域名进行路由转发。

2、frp内网穿透主要用于没有公网IP的用户,实现远程桌面、远程控制路由器、搭建的WEB、FTP、SMB服务器被外网访问、远程查看摄像头、调试一些远程的API(比如微信公众号,企业号的开发)等。

接下来就来就是详细的配置教程

一、购买云服务器并初步设置

想要用FRP就必须要有一个具备公网IP的服务器才能来进行内网穿透的功能

所以我们就要先去买个服务器

购买地址

腾讯云:

https://cloud.tencent.com/act/cps/redirect?redirect=1079&cps_key=f1a1612cbec41c719b11ae528ef54e79&from=console

阿里云:

https://www.aliyun.com/product/swas?source=5176.11533457&userCode=rz7dct2n

选择链接点进去注册之后就可以开始购买啦

购买服务器方式(这里以腾讯云举例,阿里云大同小异):

我们进入主页把鼠标移动到产品那里就可以看到轻量应用服务器了

FRP内网穿透教程完美解决没有公网的问题!

点进去之后就可以看到选择地域,我们选中国香港镜像选择系统镜像,选择centos7.6在下面的套餐配置选择24块的1核CPU,1G内存,每月流量1024GB,峰值带宽30Mbps的套餐就可以啦,数据盘就保持不变购买时长一般都是一个月然后选立即购买就可以啦

FRP内网穿透教程完美解决没有公网的问题!

最后提交订单就可以啦

第二步就是我们要来配置服务器

鼠标移动到云产品里面有个轻量应用服务器

FRP内网穿透教程完美解决没有公网的问题!

点更多下拉有个管理点进去

管理管理

管理

首先先在实例信息里面可以重置密码

重置密码重置密码

重置密码

然后再防火墙里面添加规则

开放防火墙开放防火墙

开放防火墙

到这里为止服务器购买的基本准备工作就完成了

二、配置frp服务器

我们先准备好frp的包

目前可以在其他网络站点中的frp项目的页面中下载到最新版本的客户端和服务端二进制文件,所有文件被打包在一个压缩包中。

接下来我们先下载我们服务器端的包选择画红线的那个包

下载下来后就要远程进入服务器了

我们要通过xshall或winscp对我们的服务器进行连接如图所示

FRP内网穿透教程完美解决没有公网的问题!

按照提示输入用户名密码之后就可以链接上啦

进入服务器后先输入cd / 进入根目录下面

cd /cd /

cd /

然后选择xshall上面如图示画红线的小工具

FRP内网穿透教程完美解决没有公网的问题!

把我们刚刚从网上下载的压缩包从左边拖到右边或者点右键上传

直接把frp_0.37.0_linux_386.tar.gz拖动到右边那个栏目中直接把frp_0.37.0_linux_386.tar.gz拖动到右边那个栏目中

直接把frp_0.37.0_linux_386.tar.gz拖动到右边那个栏目中

或者右键frp_0.37.0_linux_386.tar.gz选择传输或者右键frp_0.37.0_linux_386.tar.gz选择传输

或者右键frp_0.37.0_linux_386.tar.gz选择传输

这样我们就把刚刚的那个包上传上去了

现在我们把刚刚上传上的包进行解压输入tar -zxvffrp_0.37.0_linux_386.tar.gz(看清楚你上传的包的名字)

tar -zxvf frp_0.37.0_linux_386.tar.gztar -zxvf frp_0.37.0_linux_386.tar.gz

tar -zxvf frp_0.37.0_linux_386.tar.gz

然后ls看看你解压出来的东西,就是frp_0.37.0_linux_386这个文件夹

lsls

ls

给他加权限:输入chmod -R 777frp_0.37.0_linux_386

chmod -R 777frp_0.37.0_linux_386chmod -R 777frp_0.37.0_linux_386

chmod -R 777frp_0.37.0_linux_386

然后cd frp_0.37.0_linux_386 进入frp_0.37.0_linux_386文件夹 ls看看里面的文件

cd frp_0.37.0_linux_386cd frp_0.37.0_linux_386

cd frp_0.37.0_linux_386

然后输入ifconfig查看一下本机的ip地址,可以看到我们的内网ip是172.21.28.176一定要记住

ifconfigifconfig

ifconfig

来编辑一下frps.ini这个文件

vim frps.inivim frps.ini

vim frps.ini

按字母i启用编辑,然后删掉全部内容后将里面的配置文件编辑的跟我一样

[common]

#bind_addr是云主机的内网ip

bind_addr= 172.21.28.176

#与客户端绑定端口

bind_port= 9654

#dashboard用户名

dashboard_user= admin

#dashboard密码

dashboard_pwd= admin

#dashboard端口,启动成功后可通过浏览器访问如http://ip:9527

dashboard_port= 9527

#设置客户端token,对应客户端有页需要配置一定要记住,如果客户端不填写你连不上服务端

token =8n262f2b-6daa-4g8d-85ee-8ad3d1x439a2

按字母i,bind_addr = 你自己服务器的内网IP按字母i,bind_addr = 你自己服务器的内网IP

按字母i,bind_addr = 你自己服务器的内网IP

编辑完后按键盘上的esc键,输入一个英文冒号下面会如图显示

实在不会就百度一下vim编辑器的使用方法实在不会就百度一下vim编辑器的使用方法

实在不会就百度一下vim编辑器的使用方法

最后输入wq回车完成保存,刚刚编辑过的这些东西都要记住抄下来过一会配置客户端要用到

FRP内网穿透教程完美解决没有公网的问题!

最后catfrps.ini这个文件看看保存的内容是否跟刚刚编辑的一致

cat frps.inicat frps.ini

cat frps.ini

关闭防火墙和selinux,图片里面的三条命令都要输入

setenforce 0和setenforce 0和

setenforce 0和

安装screen

yum -y install screenyum -y install screen

yum -y install screen

安装完成后输入screen

screenscreen

screen

启动frps

./frps -c ./frps.ini./frps -c ./frps.ini

./frps -c ./frps.ini

可通过浏览器访问如http://公网ip:9527

输入用户名密码后能看到这个界面就说明搭建成功了

FRP内网穿透教程完美解决没有公网的问题!

三、配置客户端

这里以windows举例,如果是其他平台frpc.ini文件中的配置内容是一样的

进入网上frp项目的下载页面下载frp_0.37.0_windows_386.zip这个压缩包

把这个包解压到c盘内会有如下几个文件

frpc.exe和frpc.ini是最核心的两个文件frpc.exe和frpc.ini是最核心的两个文件

frpc.exe和frpc.ini是最核心的两个文件

编辑frpc.ini文件跟我的一样,这里举例映射内网本机的3389端口到外网的4567端口保存后退出

这里举例将3389映射为4567端口这里举例将3389映射为4567端口

这里举例将3389映射为4567端口

现在来编辑windows的启动脚本

空白处右键新建一个文本文档命名为start编辑完成后再改后缀

start.txtstart.txt

start.txt

打开后编辑如下内容

FRP内网穿透教程完美解决没有公网的问题!

保存后关闭修改文件的后缀名为bat如图所示

start.batstart.bat

start.bat

双击就开始运行,但有个黑框框感觉非常丑而且会不小心关掉,但如果你设置了开机自启就不会有黑框框了

可以参考这个教程https://blog.csdn.net/taw19960426/article/details/109366260

FRP内网穿透教程完美解决没有公网的问题!

最后再进入http://服务器公网ip:9527这个网址

进入Proxies里面的TCP就可以看到你映射出去的端口了

FRP内网穿透教程完美解决没有公网的问题!

总结

frp非常好用,服务器位于香港延迟是真的好低,给电脑开了远程配合安卓或苹果里面的RD Client这个软件就可以随时远程到家里面的电脑临时应急用一下啦

如果有不知道的可以私信给我

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
71评论

  • 精彩
  • 最新
  • 国内30m带宽的服务器不便宜吧,个人觉得不如zerotier,免费,基本直连

    校验提示文案

    提交
    香港的服务器30M带宽24块

    校验提示文案

    提交
    这价格还行,境外就是怕特殊时期被咔擦

    校验提示文案

    提交
    还有10条回复
    收起所有回复
  • bat服务器都不便宜,没活动不合适

    校验提示文案

    提交
    不不不香港服务器24块有30M带宽还是很划算的

    校验提示文案

    提交
    收起所有回复
  • 服务器那么贵啊?一个月几十块,比宽带费还贵

    校验提示文案

    提交
    但如果你还把这个服务器用作游戏加速器可以说性价比很高了

    校验提示文案

    提交
    啊,我想问的就是这个,怎么弄成xbox的加速器

    校验提示文案

    提交
    还有3条回复
    收起所有回复
  • 还是期待有点对点访问的解决方案

    校验提示文案

    提交
    用zerotier,不过延迟会高很多不能用于远程桌面并且如果网络波动就不是很稳定

    校验提示文案

    提交
    收起所有回复
  • 香港的那个完全连不上,试了一天退了,找电信要了公网IP完美解决 [得意]

    校验提示文案

    提交
    真不错,还能给公网IP,我们这合同里都写出来了,就是虚拟IP,连PPPoE的动态IP都不是 [尴尬]

    校验提示文案

    提交
    电信的服务上来了,一个电话2小时内响应,一秒钟就给换公网了

    校验提示文案

    提交
    还有4条回复
    收起所有回复
  • 这个很少有人用了,神卓互联是主流

    校验提示文案

    提交
    那个带宽低啊,我如果要访问家里nas的文件或在外面上传啥东西的话速度很慢啊

    校验提示文案

    提交
    是FRP速度慢

    校验提示文案

    提交
    还有3条回复
    收起所有回复
  • 没有公网怎么能上网?

    校验提示文案

    提交
    搭建frp作为中转服务器来实现

    校验提示文案

    提交
    原文是说没有公网。你这里回答的是没有公网地址。这是两个事情。没有公网,是指没有互联网。我的意思是作者用词不准确。所以我才说的没有公网怎么上网?而不是说没有公网地址怎么上网。

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 用过,最后还是换了 NPS,FRP WEB 管理不好用。 [皱眉]

    校验提示文案

    提交
    我有空研究一下

    校验提示文案

    提交
    收起所有回复
  • frp受限于服务器的流量和带宽吗?

    校验提示文案

    提交
    是受限带宽,流量超出8毛1G

    校验提示文案

    提交
    收起所有回复
  • 我也一直用FRP来开远程,不过我的阿里菜鸡是1m的,太穷了 [喜极而泣] [喜极而泣] [喜极而泣]

    校验提示文案

    提交
    平均流量不大1M就够啦,我是要远程所以要30M的

    校验提示文案

    提交
    收起所有回复
  • 我联通的默认就给公网IP,太吃惊了

    校验提示文案

    提交
    太爽了吧默认就给公网IP还不用跟他扯皮,移动网络扯皮都没用

    校验提示文案

    提交
    收起所有回复
  • 可以当梯子的话这个价不错,单独买个梯子也要一两百

    校验提示文案

    提交
    最好别干这种事情毕竟你自己实名购买的

    校验提示文案

    提交
    收起所有回复
  • 还有更便宜的,腾讯云有个首单秒杀,1c2g6m的一年99,30m感觉意义不大,毕竟也就1t的流量,frp挂个jupyter远程敲代码挺好

    校验提示文案

    提交
    30M主要就是用来对家里NAS的文件进行上传下载用的,如果单挂个jupyter这种对带宽要求不高的东西倒是无所谓

    校验提示文案

    提交
    收起所有回复
  • 还是绕不过一个公网ip

    校验提示文案

    提交
    没办法移动宽带就是不给公网,就先只能这样了,不过这样速度也不差基本能跑满移动的上行带宽

    校验提示文案

    提交
    收起所有回复
  • 几百块买个群晖就能解决的问题

    校验提示文案

    提交
    确实,群晖自带免费的内网穿透

    校验提示文案

    提交
    收起所有回复
  • 与其这样我选择小宝大神。

    校验提示文案

    提交
  • 这么麻烦?家里安装一条公网ip的宽带就行了啊。

    校验提示文案

    提交
  • 都运维工程师了可别chmod -R 777了,不安全

    校验提示文案

    提交
    主要还是本地防火墙和应用本身加强安全。内网穿透FRP或nat123等常见的只是访问你指定端口应用,不占文件权限。

    校验提示文案

    提交
    收起所有回复
  • 没有公网IP下内网穿透方案有很多,比较常见的有FRP和nat123端口映射外网访问。

    校验提示文案

    提交
  • frp不是握手后p2p??

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
865
扫一下,分享更方便,购买更轻松