• 个人搭建frp服务及客户端连接实现网路穿透


    ​最近发现钉钉提供的免费穿透服务关闭了,对于前后端分离开发的我们,被打了个措手不及。

    好在钉钉提供补救措施——自行搭建frp服务指南,一个宝藏博主开源了他的frp项目。我们根据自己服务器选择frp版本,我的服务器是x86_64,选择了frp_0.44.0_linux_amd64.tar.gz 

    这里要提一下,首先准备一个指向穿透服务器的备案过的域名,如abc.com(国外域名自行决定备不备案)。

    下载文件:(也可事先下载好再上传到服务器)

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

    文件解压:

    tar -xvf frp_0.38.0_linux_amd64.tar.gz 

    移动文件至 /usr/local/frp:

    1. mkdir /usr/local/frp
    2. mv frp_0.44.0_linux_amd64/* /usr/local/frp/

    文件说明:

    1. frps.ini: 服务端配置文件
    2. frps: 服务端软件
    3. frpc.ini: 客户端配置文件
    4. frpc: 客户端软件

    有的系统是systemctl控制,有的是service命令控制,可自行将frp加入对应的控制服务,不加也不影响服务的启动和运行,所以这里不赘述。

    修改服务端配置frps.ini:

    1. [common]
    2. #frp服务端口,自行设定
    3. bind_port = 7000
    4. #http访问时端口
    5. vhost_http_port = 80
    6. #身份钥匙
    7. token = tk123456
    8. #[ssh]
    9. ##ssh反向代理端口,自行设定
    10. #listen_port = 6000
    11. #服务端设定的客户端响应,[web]可改为[abc],自行设定
    12. [web]
    13. type = http #服务类型
    14. custom_domains = dev1.abc.com #要映射的域名
    15. [web2]
    16. type = http
    17. custom_domains = dev2.abc.com

    启动服务端:

    1. ./frps -c ./frps.ini
    2. # 后台启动
    3. nohup ./frps -c ./frps.ini &

     运行“./frps -c ./frps.ini”后提示[I] [root.go:209] frps started successfully 即表示frp服务端启动成功。

    接下来配置frp客户端

    由于我在win10系统上使用,因此又下了对应的frp文件frp_0.44.0_windows_amd64.zip,解压使用客户端配置文件。

    解压文件:

    1. frps.ini: 服务端配置文件
    2. frps.exe: 服务端软件
    3. frpc.ini: 客户端配置文件
    4. frpc.exe: 客户端软件

    我们配置frp客户端服务,因此只要第三、第四两个文件就行。

    修改配置frpc.ini:

    1. [common]
    2. #域名abc.com指向的IP地址
    3. server_addr = xxx.xxx.xxx.xxx
    4. #frp服务端设定端口
    5. server_port = 7000
    6. #frp服务端设定的安全钥匙
    7. token = tk123456
    8. #[ssh]
    9. #type = tcp
    10. #local_ip = 127.0.0.1
    11. #local_port = 22
    12. #remote_port = 6000
    13. [web] #服务项名称,与frp服务端某个服务项一致
    14. type = http #类型
    15. local_ip = 127.0.0.1 #所需穿透内网IP,这里是本机
    16. local_port = 8080 #内网服务端口
    17. remote_port = 7000 #frp服务端设定端口
    18. custom_domains = dev1.abc.com #客户端指向域名,与服务端设置一致

    启动客户端:

    进入解压文件夹,在文件夹地址栏输入cmd,回车后进入cmd命令窗口,并直接定位到该文件夹下。

    在命令窗口输入frpc.exe,提示[web] start proxy success 表示客户端启动成功。

    至此,本机8080端口下的服务,可通过域名dev1.abc.com在外网访问了。

    在搭建自己的frp服务前,作为白嫖档的滋肾档员,哪能放弃白嫖的原则,经过不懈的努力挖掘了N个内网穿透工具。但是网络速度实在台难以忍受,在挖到N+1个后终决定以头悬梁锥刺股的意志自行搭建内网穿透服务。

    以上为个人经验,有需要的朋友自行参考。

  • 相关阅读:
    Nginx
    K8S(4)DaemonSet
    将 JavaScript 字符串隐藏为数字的 4 种简单方法以及如何删除浮点数上的尾随零
    分享一下办公自动化常用的思想
    java101-arraylist的遍历和增加
    Spring Framework 学习笔记5:事务
    UML统一建模语言
    Redis系列19:LRU内存淘汰算法分析
    我的python-web基础(Flask前后端不分类)
    【GD32F303红枫派使用手册】第十六节 USART-DMA串口收发实验
  • 原文地址:https://blog.csdn.net/woweile/article/details/126240546