FRP(Fast Reverse Proxy)是一种高性能的反向代理应用,广泛用于内网穿透。它允许用户通过一个公有IP地址访问位于内网中的服务。下面将介绍如何使用FRP将家庭局域网中的多个Web程序通过云服务器暴露到互联网上。

一、准备工作

  1. 云服务器: 首先需要一台可以公开访问的云服务器(如阿里云、腾讯云等)。
  2. 家庭局域网: 确保在家中有一台运行Windows的主机,且上面已经部署好各类Web服务(如Apache、Nginx等)。
  3. FRP软件: 下载FRP的服务端和客户端,可以在FRP的GitHub页面下载。

二、部署FRP服务端

  1. 在云服务器上安装FRP: 登录到云服务器,下载FRP的最新版本并解压:

bash wget https://github.com/fatedier/frp/releases/download/v0.51.0/frp_0.51.0_linux_amd64.tar.gz tar -zxvf frp_0.51.0_linux_amd64.tar.gz cd frp_0.51.0_linux_amd64

  1. 配置FRP服务端: 编辑frps.ini文件,配置FRP服务器的基本信息:

ini [common] bind_port = 7000 # 设置多个web服务的访问 vhost_http_port = 8080 vhost_https_port = 8443

启动FRP服务端:

bash ./frps -c ./frps.ini

三、部署FRP客户端

  1. 在家庭Windows主机上安装FRP: 下载FRP的Windows版本,解压到指定目录。

  2. 配置FRP客户端: 编辑frpc.ini文件,将家庭主机上的Web服务映射到云服务器:

```ini [common] server_addr = YOUR_CLOUD_SERVER_IP server_port = 7000

[web1] type = http local_ip = 127.0.0.1 local_port = 8081 # 家庭主机上Web服务运行端口 remote_port = 81 # 云服务器上的映射端口

[web2] type = http local_ip = 127.0.0.1 local_port = 8082 # 另一个运行在家庭主机上的Web服务 remote_port = 82 # 云服务器上的映射端口 ```

启动FRP客户端:

cmd frpc -c frpc.ini

四、访问服务

完成以上步骤后,你就可以通过访问云服务器的IP地址和远程端口来访问家庭局域网中的Web服务。例如:

  • 访问第一个Web服务: http://YOUR_CLOUD_SERVER_IP:81
  • 访问第二个Web服务: http://YOUR_CLOUD_SERVER_IP:82

五、安全配置

为了保证我们的FRP服务更安全,建议采取以下措施:

  1. 使用token进行身份验证。在frps.inifrpc.ini中添加:

```ini # frps.ini [common] token = your_secure_token

# frpc.ini [common] token = your_secure_token ```

  1. 对于外部访问的Web应用,应考虑HTTPS加密,FRP支持通过Let's Encrypt进行SSL证书自动申请。

六、总结

通过FRP内网穿透,可以方便地将家庭局域网中的多个Web服务映射到云服务器,达成互联网访问的目的。可以根据实际需求自由增加和配置服务。使用FRP的过程中,确保对安全进行适当的考虑,以防止未授权访问。

点赞(0) 打赏

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部