FRP内网穿透

背景

  • 项目是微服务项目,由于系统模块等都注册到nacos并服务都部署在服务器。而我负责的模块需要调试由本地运行,但网关会因为是内网IP而找不到服务,因此我们需要将IP暴露出去。

准备

  • 阿里云服务器 (frp的服务端)
  • 本地 (frp的客户端)
  • frp下载:https://github.com/fatedier/frp/releases

服务器

  • 服务器我选择下载:frp_0.45.0_linux_arm64.tar.gz

  • 除了 frpc_full.ini, frpc.ini, frpc 文件外,其余都复制到服务器中
    FRP内网穿透_第1张图片

  • 修改frps.ini配置文件

[common]
# frp监听的端口,默认是7000,可以改成其他的
bind_port = 7000
# 授权码,请改成更复杂的
token = 520  # 这个token之后在客户端会用到

# frp管理后台端口,请按自己需求更改
dashboard_port = 27500
# frp管理后台用户名和密码,请改成自己的
dashboard_user = admin
dashboard_pwd = admin
authentication_timeout = 0 			# 服务器与客户端时间相差15min会连接失败,0表示不验证
max_pool_count = 5 		# 最大连接数
  • 后台启动(切换到解压目录)
nohup ./frps -c ./frps.ini &
# 查看日志 
cat nohup.out
  • 正常运行
frps tcp listen on 0.0.0.0:7000
frps started successfully

本地

  • 本地我选择下载:frp_0.45.0_windows_amd64.zip

  • 除了 frps_full.ini, frps.ini, frps.exe 文件外,其余都复制到服务器中
    FRP内网穿透_第2张图片

  • 修改frpc.ini配置文件

[common]
server_addr = xxx.xxx  # 公网服务器ip
server_port = 7000       # 公网服务端通信端口
token = 520  			# 令牌,与公网服务端保持一致
pool_count = 5
protocol = tcp               
health_check_type = tcp
health_check_interval_s = 100

[tcp_document ]  # 添加ssh节点
type = tcp
local_port = 9210		# 本地接收请求端口
custom_domains = xxx.xxx  # 公网服务器ip
remote_port = 9210		# 服务器接收请求端口
  • 启动(切换到解压目录)
frpc -c frpc.ini
  • 正常运行
2022/11/29 17:52:50 [I] [service.go:357] [473fd82c03c05c7f] login to server success, get run id [473fd82c03c05c7f], server udp port [0]
2022/11/29 17:52:50 [I] [proxy_manager.go:142] [473fd82c03c05c7f] proxy added: [tcp_document ]
2022/11/29 17:52:50 [I] [control.go:177] [473fd82c03c05c7f] [tcp_document ] start proxy success

你可能感兴趣的:(运维,java,服务器)