2️⃣frp内网穿透

frp内网穿透
frp内网穿透
type
status
date
slug
summary
tags
category
icon
password
在本文中,你将学习如何使用frp实现内网穿透,主要包含以下内容:
  • 下载和安装frp
  • 配置frp客户端和服务端
  • 通过systemd管理frp服务
  • 实现web服务的内网穿透
前提条件:
✨ 在开始之前,请确保你已经:
  • 拥有一个域名
  • 拥有一台具有公网IP的云服务器
本文介绍如何通过frp在自己的云服务器上搭建内网穿透服务,提供对外暴露的web服务。
内网穿透可以将本机的服务通过云服务器拥有的公有ip暴露到公网上供他人访问,应用场景有很多,比如做微信小程序开发时需要调试接口,或者向别人演示自己还未正式上线的小demo等。
在阅读本文内容之前,需要有一些前置准备:
  • 你拥有一个域名
  • 你拥有一台具有公网ip地址的云主机

frp

frp 是一款高性能的反向代理应用,专注于内网穿透。它支持多种协议,包括 TCP、UDP、HTTP、HTTPS 等,并且具备 P2P 通信功能。使用 frp,您可以安全、便捷地将内网服务暴露到公网,通过拥有公网 IP 的节点进行中转。

下载

如果你是win系统,可以通过frp的github releases点击下载文件。
如果你是linux系统,你可以通过wget下载:
这里以win为例,下载完压缩包解压之后,你会看到如下的目录结构:
这里介绍一下,这个frpc.toml是客户端的配置文件,客户端指的是你需要进行内网穿透的机器。c就是client的意思。frpc.exe就是客户端的frp程序的启动文件。
frps.toml就是源服务器的配置文件,源服务器指的就是你的云服务器(拥有公网ip的)。同理,这个s就是source的意思。
那其实我们现在用的win机器,只需要保留frpc.toml和frpc.exe就行了,剩下的frps.toml和frps.exe可以删除掉。因为云服务器使用linux系统这个exe他也用不了,所以我们在云服务器上还需要从giithub上下载这个frp的文件。
同样的,在云服务器上下载了文件后,也可以删除掉frpc.toml和frpc,只需要保留frps.toml和frps即可。
接下来介绍具体操作步骤:

对于客户端(win机器)

  1. 通过github releases下载文件
  1. 保留文件中的frpc.tomlfrpc.exe即可
  1. 配置frpc.toml
  1. 启动frpc服务

对于云主机(linux机器)

  1. 通过sh命令获取frp文件
  1. 保留文件中的frps.tomlfrps即可
  1. 配置frps.toml
  1. 启动frps服务
如果你不想每次都进入frp安装目录下通过 xxx/frps -c xxx/frps.toml 来启动的话,可以通过systemd来添加frp服务,通过systemctl统一管理。具体步骤如下:
  1. /lib/systemd/system/下创建 frps.service文件, 内容如下:
  1. 通过systemd管理frps

对外提供web服务

  1. 在云主机上配置frps.toml
  1. 在win机器(客户端)上配置frpc.toml
记得把自己的域名解析到云主机上!
  1. 启动服务
或者 通过systemd
win机器同理,通过powershell或者cmd执行exe程序并通过 -c 指定应用的配置文件。
至此,内网穿透已经实现,你可以愉快的向别人分享你的demo啦!😊

结尾附上frp的官方文档,本文还有些不完善的地方或者没有提到的功能,可以参考frp官方文档。
上一篇
开发随记
下一篇
nginx正向代理
Loading...