搭建自己的frp服务器

本文详细介绍如何使用frp在拥有的公网服务器上搭建自定义的公网隧道,实现HomeAssistant等内网服务的远程访问。文章包括服务器端的frps配置、HomeAssistant的组件配置,以及frpc命令位置的指定等关键步骤。

如果您不想使用组件中现成的公网隧道,可以使用frp自己搭建服务器端——前提条件是:您有一台公网能直接访问到的服务器(云主机)。
https://github.com/zhujisheng/HAComponent/blob/master/tunnel2local/server_diy.md
https://github.com/zhujisheng/HAComponent/tree/master/tunnel2local
服务器端搭建
使用下载的frp包中的frps程序,在服务器上运行。配置文件frps.ini如下:

[common]
bind_port = 7000
token = 12345678
其余的配置项可以参见frps项目的配置说明

HomeAssistant配置
如readme中所述,安放__init__.py和manifest文件
配置文件:
tunnel2local:

frpc命令位置

frpc_bin: “C:/local/frp_0.18.0_windows_amd64/frpc.exe”
frps: 1.2.3.4 #服务器地址
frps_port: 7000 #缺省值为7000
frp_token: “12345678” #缺省值为空
remote_port: 8123 #缺省值为8123

### 在 Windows 系统上搭建 FRP 服务器以实现远程管理 #### 配置 FRP 服务端 在 Windows 系统上搭建 FRP 服务端,需要确保服务端能够稳定运行并提供反向代理功能。以下是具体的配置方法: - **下载与解压**: 下载 FRP 的 Windows 版本二进制文件[^2],将其解压到目标目录。解压后会看到 `frps.exe` 和 `frpc.exe` 等文件,其中 `frps.exe` 是服务端程序。 - **创建配置文件**: 创建一个名为 `frps.ini` 的配置文件,并根据需求进行修改。以下是一个典型的配置文件示例: ```ini [common] bind_port = 7000 dashboard_port = 7500 dashboard_user = admin dashboard_pwd = adminpwd token = 自定义认证密码 ``` 上述配置中,`bind_port` 是服务端监听的端口,`dashboard_port` 是用于访问管理面板的端口,`token` 是客户端和服务端通信的认证密钥[^3]。 - **启动服务端**: 使用命令行工具进入 FRP 所在目录,并执行以下命令启动服务端: ```cmd frps.exe -c frps.ini ``` #### 注册为系统服务 为了确保 FRP 服务端在系统重启后自动运行,可以将其注册为 Windows 服务。以下是具体操作方法: - **使用 Winsw 注册服务**: 下载 `winsw.exe` 并重命名为 `frps.exe`,然后在同一目录下创建一个名为 `frps.xml` 的配置文件,内容如下: ```xml <service> <id>frp</id> <name>FRP Service</name> <description>Fast Reverse Proxy Server</description> <executable>frps.exe</executable> <arguments>-c frps.ini</arguments> <logmode>rotate</logmode> </service> ``` 然后通过以下命令安装服务: ```cmd frps.exe install ``` #### 配置防火墙规则 确保 Windows 防火墙允许 FRP 服务端的监听端口(如 7000)和管理面板端口(如 7500)。可以通过以下命令添加防火墙规则: ```cmd netsh advfirewall firewall add rule name="FRP Service" dir=in action=allow protocol=TCP localport=7000 ``` #### 配置 FRP 客户端 在需要远程管理的目标设备上安装 FRP 客户端,并创建 `frpc.ini` 配置文件。以下是一个示例配置: ```ini [common] server_addr = 服务端IP地址 server_port = 7000 token = 自定义认证密码 [rdp] type = tcp local_ip = 127.0.0.1 local_port = 3389 remote_port = 7800 ``` 上述配置表示将本地的 3389 端口(Windows 远程桌面)映射到服务端的 7800 端口[^3]。 启动客户端时,使用以下命令: ```cmd frpc.exe -c frpc.ini ``` #### 测试连接 完成配置后,可以通过远程桌面客户端连接到服务端的 7800 端口,验证是否能够成功访问目标设备的远程桌面。 ### 注意事项 - 确保服务端和客户端的 `token` 配置一致。 - 如果需要更高的安全性,可以启用 TLS 加密或设置更复杂的认证机制[^1]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值