frp 内网穿透 - 内网/本地服务-通过服务器映射到外网

       frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。

       frp 主要由 客户端(frpc) 和 服务端(frps) 组成,服务端通常部署在具有公网 IP 的机器上,客户端通常部署在需要穿透的内网服务所在的机器上。
       内网服务由于没有公网 IP,不能被非局域网内的其他用户访问。
       用户通过访问服务端的 frps,由 frp 负责根据请求的端口或其他信息将请求路由到对应的内网机器,从而实现通信。

      ./frps -c ./frps.ini 启动服务端,再通过 ./frpc -c ./frpc.ini 启动客户端。

 

1.应用下载

git下载地址:https://github.com/fatedier/frp/releases

版本对应

注意: 

  1. 服务器端和内网机器端下载的版本要相同,否则可能会影响内网穿透
  2. 根据服务器系统选择合适的脚本
  3. 服务端部署,可以只保留服务端文件 frps**
  4. ​客户端部署,可以只保留客户端文件 frpc**

2.外网服务端配置文件修改启动

2.1 服务端需要修改Frps.ini文件
[common]
#内网穿透服务器端监听的IP地址,可以省略,默认为127.0.0.1
bind_addr = 0.0.0.0
#服务器端监听的端口,默认是7000,可自定义
bind_port = 7001


# 面板地址
#dashboard_addr = 0.0.0.0
#dashboard_port = 7500

# 面板用户名、密码
#dashboard_user = admin
#dashboard_pwd = admin
2.2 启动命令 (需要切换到该目录下)
./frps -c frps.ini
2.3 启动日志
-rwxrwxrwx 1 root root 17182720 8月   2 15:29 frps
-rwxrwxrwx 1 root root       26 8月   2 15:32 frps.ini
[root@VM-16-7-centos frp]# ./frps -c frps.ini
2023/08/03 10:09:45 [I] [root.go:204] frps uses config file: frps.ini
2023/08/03 10:09:45 [I] [service.go:206] frps tcp listen on 0.0.0.0:7009
2023/08/03 10:09:45 [I] [root.go:213] frps started successfully

3.内网、本地服务端配置

3.1 需要修改Frpc.ini文件
[common]
#外网-服务器端ip
server_addr = xx.xx.xx.xx
#外网-服务器端监听的端口(必须与Frps.ini中的配置一致)
server_port = 7001

[ssh]
#配置类型为http协议
type = tcp
#内网机器的IP
local_ip = 127.0.0.1
#内网需要监听的端口(本地 内网 所启服务端口)
local_port = 9999
remote_port = 9999
use_encryption = true
#if true, message will be compressed
use_compression = true

#配置多个协议的话 
[web]
type = http
local_ip = 127.0.0.1
local_port = 9991
remote_port = 9991
# custom_domains是通过frp服务器端访问客户端的域名,必须输入完整的域名,
#custom_domains = zhishi.com

3.2 启动命令

./frpc -c frpc.ini

3.3 启动日志

 4.访问服务

1、启动服务端frps服务成功
2、启动内网本地客户frpc服务成功
3、启动需要映射本机服务成功
server_addr:local_port

访问成功,至此搭建成功!

5.身份认证 (需要的话)

目前 frpc 和 frps 之间支持两种身份验证方式,token 和 oidc,默认为 token。
通过 frpc.ini 和 frps.ini 的 [common] 段落中配置 authentication_method 来指定要使用的身份验证方式。
只有通过身份验证的客户端(frpc)才能成功连接 frps。
Token
基于 Token 的身份验证方式比较简单,需要在 frpc 和 frps 的 [common] 段落中配置上相同的 token 参数即可。

在请求头中加入即可
authentication_method = token
token = my_token

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值