初学、没有云服务器的时候总想着怎样才能让别人访问到自己的项目。
在查阅了百度,逛过了一些论坛之后,了解到了 内网穿透 这个词。
经过一番钻研,通过 手机 + KSWEB + 电脑 成功将内网服务映射出去了(现在想来在手机上跑服务器有点多此一举)
后来慢慢接触到了更多内网映射的渠道,如樱花frp、浮居frp等等,也充过会员,速度还行。
但是,怎能止步于此,前段时间接触到了用私人云服务器搭建的frp服务,这激起了我的兴趣,经过一番琢磨最终搭建起来了,特此记录
Windows 和 Linux 通用,只是软件版本和命令稍有不同
开始前你得具备以下条件
云服务器 + 大陆境内已备案的域名 + 愿意琢磨(第一次会稍微有一点点绕,其实很简单)
我的云服务器版本是 CetenOS 7,这里给出我用到的,其余系统百度下载
不会 传/解压 用就百度,新人用宝塔也方便
示例:
步骤3自定义配置好了后
放行frp服务端口(步骤三的 bind_port = 7000)
放行自定义访问端口(步骤三的 vhost_http_port = 10000)
例如你的主域名是
这里添加解析名为 frp,记录值为云服务器的 公网IP
最终效果是 frp.
先切换到frp的根目录
再用命令 ./frps -c ./frps.ini 启动服务
(上面是相对路径,也可不切换路径,直接在启动命令中用绝对路径)
此种方式启动服务后不能关闭命令窗口,命令窗口关闭后服务也会关闭
挂后台方式参考 步骤13
只有最后几个步骤了,马上完工!
我的系统是 Win10,所以用Windows对应的 frpc包
这里给出我用到的,其余系统百度下载
下载好 frpc包后将文件解压到C盘以外的其它盘(一般文件不建议放C盘)
示例:在E盘根目录新建一个名为 frpc的文件夹,将frpc包解压在里面
如图:
windows下双击打开 frpc.ini
左侧是云服务器的frps配置,供对照
右侧是客户端的frpc配置,这才是我们要设置的地方
1.local_ip 是要映射服务所在的主机ip,如果和fprc在同一电脑可用127.0.0.1(一般都是),不是的话要用对应ip地址
2.local_port 是我们的服务端口,比如SpringBoot程序或者Tomcat的端口是8080就填8080
3.右侧自定义域名与 步骤5 的解析一致(配置文件第6行和第10行请保持一致,防止多客户端冲突)
1.至此配置都完成了,检查一遍以上步骤是否有遗漏或者错误配置
2.确保云服务器 frps 处于运行状态 (./frps -c ./frps.ini 执行后不能关闭命令界面,否则会停止服务。挂后台方式参考 步骤13)
3.确保本地 frpc 处于启动状态,Windows下启动后cmd窗口不能关(Windows下双击.bat文件启动,不能直接点 frpc.exe)
4.确保要映射的端口处于运行状态(如映射Tomcat请确保Tomcat处于运行状态)
11.启动内网映射
在确保以上步骤无误后
以Windows为例,双击 frpc.bat 启动映射服务(Windows客户端挂后台方式参考百度)
如下图,提示success且光标处于待定状态便是启动成功了
此前配置如下(参考 步骤3 和 步骤9):
主域名:
解析值:frp
访问端口:10000
映射类型:http
合并起来就是:http://frp.:10000
外网即可通过以上链接访问我们映射出来的服务
以 Linux 为例,在目录 /etc/systemd/system 下新建文件名为 frps.service 的文件(Windows参考百度)
说明: ExecStart = frps.exe所在的目录/frps -c frps.ini所在的目录/frps.ini
内容如下:
文件新建好后用以下命令控制(Linux的客户端也是此命令,把 frps 改成 frpc 即可):
我们只需要在 步骤五 给每个不同客户端添加一个解析值就可以了
如 frp, frp2, frp3
不同客户端的配置文件里对应解析域名分别填上frp, frp2, frp3
最终访问的url就是:
http://frp.:10000
http://frp2.:10000
http://frp3.:10000
原文链接:http://www.360doc.com/content/23/0110/17/81448954_1063207326.shtml