利用frp进行内网穿透,实现本地web服务向外提供(https)

0x01先决条件

  • 有一台公网服务器

0x02初始项目

  • 把frps放到公网服务器
  • 把frpc放到内网服务器

0x03 服务端配置

[common]
bind_port = 2333 #frp服务端口
token = token@xxxx #认证口令
allow_ports = 443,80 #开放的端口,限制后增加安全

0x04客户端配置

[common]
server_addr = 10.111.1.1 #服务端IP
server_port = 2333 #连接地址
token = token@xxxx #认证口令
[tcp]
type = tcp #代理协议
local_ip = 192.168.1.9 #本地服务器地址
local_port = 443 #本地端口
remote_port = 443 #向远程开放的端口
custom_domains = test.com #访问域名,需解析到公网服务器IP
proxy_protocol_version = v2 #额外的配置,可以获取从公网服务器发起请求的IP地址

0x05本地web服务配置

0x051 nginx需要配置两个web服务器

0x0511第一个web服务仅提供转发的服务

server
{
listen 80 proxy_protocol;
listen 443 ssl http2 proxy_protocol;
#更多...
location / {
proxy_set_header Host test.com;
proxy_set_header X-Forwarded-For-Frp $proxy_protocol_addr;
proxy_pass http://192.168.1.9:8080;
}
}

0x0512 第二个为实际提供web服务

server
{
listen 8080;#此处需要注意端口号,不能是80或443,因为80和443已经启用了proxy_protocol协议
#更多...
}

0x06参考

nginx配置

FRP官网

posted @   小枫同学  阅读(719)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示