frp搭建内网穿透服务

借鉴:杂记 | 使用FRP搭建内网穿透服务(新版toml配置文件,搭配反向代理食用)_frps.toml-CSDN博客

 

FRP 主要由两部分组成:

FRPC客户端(frp client)

  • 运行在公司内网机器上
  • 接收来自公网的访问请求
  • 将请求转发给内网服务

FRPS 服务端(frp server)

  • 部署在具有公网 IP 的机器上
  • 暴露服务的公网入口
  • 接收公网访问请求
  • 通过加密隧道转发到 FRPC

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

版本下载:Releases · fatedier/frp · GitHub

修改服务端配置frps.toml

复制代码
# frps.toml
bindPort = 7000                 # 服务端与客户端通信端口

transport.tls.force = true        # 服务端将只接受 TLS链接

auth.token = "public"             # 身份验证令牌,frpc要与frps一致

# Server Dashboard,可以查看frp服务状态以及统计信息
webServer.addr = "0.0.0.0"        # 后台管理地址
webServer.port = 7500             # 后台管理端口
webServer.user = "admin"        # 后台登录用户名
webServer.password = "admin"    # 后台登录密码
复制代码

服务端启动命令

./frps -c frps.toml

修改客户端端配置frpc.toml

复制代码
# frpc.toml
transport.tls.enable = true        # 从 v0.50.0版本开始,transport.tls.enable的默认值为 true
serverAddr = "x.x.x.x"
serverPort = 7000                 # 公网服务端通信端口

auth.token = "public"             # 令牌,与公网服务端保持一致

[[proxies]]
name = "test-http"
type = "tcp"
localIP = "127.0.0.1"            # 需要暴露的服务的IP
localPort = 9000                # 将本地9000端口的服务暴露在公网的6060端口
remotePort = 6060                 # 暴露服务的公网入口

[[proxies]]
name = "ssh"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 6000
复制代码

 客户端启动命令

./frpc -c frpc.toml

配置完成,访问公网ip:6000端口即可实现访问内网机器ip:22

为防止进程停止导致内网机器无法远程,配置成system服务可自动重启

vi /etc/systemd/system/frpc.service
复制代码
[Unit]
Description=frpc
After=network.target
Wants=network.target

[Service]
Restart=always
RestartSec=5
ExecStart=/opt/frp/frpc -c /opt/frp/frpc.toml

[Install]
WantedBy=multi-user.target
复制代码

 

posted @   阿锋888  阅读(166)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类
点击右上角即可分享
微信分享提示