人妻夜夜爽天天爽三区丁香花-人妻夜夜爽天天爽三-人妻夜夜爽天天爽欧美色院-人妻夜夜爽天天爽免费视频-人妻夜夜爽天天爽-人妻夜夜爽天天

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

FRP配合lucky實現低代碼內網穿透

admin
2025年1月13日 18:41 本文熱度 300

動機

學校的服務器,NAT上的管理權在網管,想把一些服務開放到公網上就得做內網穿透。STUNZeroTier太麻煩,且需要依賴別人的服務器,被排除了。自己有NAS、有公網IPv4地址、有域名,做FRP穿透是最好的選擇。

找遍全網,基本都是介紹在云主機上部署FRPS+Nginx的方案,對于家用NAS來說太麻煩;一些回答也太冗長,不簡潔、太陳舊。

原理

FRP的英文全稱是Fast Reverse Proxy,就是一種代理。

  • 服務端叫FRPS,要有能偵聽公網端口的能力,且其連接公網的設備要能通過域名或固定IP被訪問到。
需偵聽一個bind_port,和一堆remote_port。把remote_port收到的數據,轉發給bind_port。
  • 客戶端叫FRPC,要有能訪問公網的能力。
需訪問FRPSbind_port,根據收到的內容,代理到指定的local_iplocal_port。
  • 用戶端訪問FRPSremote_port,就等同于訪問各local_iplocal_port。

可見,其本質是由于客戶端缺少偵聽公網端口的能力FRP就在服務端開放這些端口(remote_port),并通過bind_port這個通道讓客戶端自己把所需的服務代理到內網。整個系統對外開放的總端口數并沒有減少,至少還增加了一個bind_port

配置說明

網絡拓撲圖如下所示,家里的NAT均可控,學校的NAT不可控。其中,綠色虛線代表HTTPS的訪問通道;紫色的虛線代表TCP、UDP等普通應用的訪問通道;紅色虛線代表固有通道。

?
網絡拓撲圖

NAT的配置

需要把FRPC上指定使用的端口在家庭路由器上做端口轉發,轉發到NAS;再把NAS上的這些端口轉發給容器。

FRPC上配置的server_port最終轉發到FRPS上配置的bind_portFRPC上配置的remote_port最終也要能轉發到FRPS上。

lucky反向代理的使用

lucky是個好東西,不光可以做泛域名的DDNS和SSL證書,還能做子域名的泛域名DDNS、SSL證書和反向代理。這里我們先設置*.university.example.com的DDNS,再設置*.university.example.com的SSL證書,最后把https://*.university.example.com:6666proxy port)代理到http://frps_ip:8080vhost_http_port)。以上,就完成了擁有SSL證書的泛子域名反向代理。

FRP上的配置

TCP、UDP等穿透很簡單,把remote_portlocal_ip+local_port建立聯系即可。

HTTP的穿透,需要配合FRP上的代理功能。FRPS上,指定泛域名subdomain_host = university.example.comFRPC上, 根據不同的subdomain選擇對應的local_iplocal_port。由于FRPSFRPC之間是HTTP明文傳輸,開啟了加密use_encryption;其實FRP還支持雙端SSL認證,太麻煩就沒搞(誰會沒事閑的攻擊我呢?哈哈)。

下面給出4份配置文件,配合網絡拓撲圖一看就懂。

服務端配置

docker-compose.yaml

version: '3.3'
services:
  frps:
    image: snowdreamtech/frps
    environment:
      TZ: Asia/Shanghai
    restart: unless-stopped
    ports:
      - "7070:7070" # dashboard
      - "8000:8000" # bind
      - "8001:8001" # App 1
      - "8002:8002" # App 2
      - "8080:8080" # http
    volumes:
      - ./frps.toml:/etc/frp/frps.toml

配置文件frps.toml

這里要注意,最新版的服務端和客戶端的配置文件擴展名不再是.ini,而是.toml 。

[common]
bind_port       = 8000
token           = PrNnmRqYrsSLpWpmTFBBsdCphHqtfFGk
# HTTP協議相關
vhost_http_port = 8080
subdomain_host  = university.example.com
# 以下為看板端口和用戶/密碼,非必須
dashboard_user  = admin
dashboard_pwd   = 123456
dashboard_port  = 7070

客戶端配置

docker-compose.yaml

version: '3.3'
services:
  frpc:
    image: snowdreamtech/frpc
    environment:
      TZ: Asia/Shanghai
    restart: unless-stopped
    ports:
      - "7070:7070" # dashboard
    volumes:
      - ./frpc.toml:/etc/frp/frpc.toml

配置文件frpc.toml

[common]
server_addr = cloud.example.com
server_port = 8000
token = PrNnmRqYrsSLpWpmTFBBsdCphHqtfFGk # 和服務端的token一致
# 指定可用的域名服務器以訪問公網,特定環境下可能需要
dns_server = 114.114.114.114
[App 1]
type           = tcp
local_ip       = 192.168.1.2
local_port     = 5901
remote_port    = 8001
[App 2]
type           = tcp
local_ip       = 192.168.1.3
local_port     = 3389
remote_port    = 8002
[Gitlab]
type           = http
local_ip       = 192.168.1.10
local_port     = 8080
subdomain      = gitlab
use_encryption = true
[iKuai]
type           = http
local_ip       = 192.168.1.11
local_port     = 80
subdomain      = gw
use_encryption = true
# 以下為看板端口和用戶/密碼,非必須
admin_port = 7070
admin_user = admin
admin_pwd  = 123456

效果

App 1:訪問cloud.example.comtcp 8001端口,被穿透到學校內網的192.168.1.2tcp 5901端口。

App 2:訪問cloud.example.comtcp 8002端口,被穿透到學校內網的192.168.1.3tcp 3389端口。

GitLab HTTP:訪問https://gitlab.university.example.com:6666,被穿透到學校內網的http://192.168.1.10:8080

iKuai HTTP:訪問https://gw.university.example.com:6666,被穿透到學校內網的http://192.168.1.11:80

貢獻

本文通過圖文介紹了FRP內網穿透的原理,提出了一種在NAT環境下利用docker-compose一鍵部署FRPSFRPC容器進行內網穿透的方案。配合lucky反向代理,實現了低代碼構建基于泛子域名、帶SSL證書的HTTP內網穿透。


閱讀原文:https://zhuanlan.zhihu.com/p/687477877


該文章在 2025/1/13 18:41:00 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 99热这里只有精品一区二区三区 | 精品国产一区二区三区久久久 | 海角精产国品一二三区别 | 一本久道久久综合婷婷五月 | 91精品啪在线观看国产日本 | 周妍希国产福利在线观看 | 国产av综合精品色区 | 国产精品亚洲av色欲在线观 | 精品日韩在线 | 人妻av乱片av出轨av隔壁 | 国产成人愉拍精品 | 成人欧美一区二区三区 | 波多野结衣电影在线观看电影免费在线观看 | 加勒比无码人妻在线 | 日韩av无码久久精品免费 | 性色av一区二区三区无码 | 麻豆久久婷婷国产综合五月 | 插B内射18免费视频 插吧插吧综合网 | 国产色综合久久无码麻豆 | 日本一本精品中文字幕视频 | 中文字幕精品在线 | 老女老肥熟国产在线视频 | 亚洲国产精品免费无码 | 麻豆md沈芯语梦境 | 亚洲自拍三级 | 国产精品一区久久久久久 | 欧美日韩免费r | aⅴ在线视频男人的天堂 | 中文字幕一区二区人妻在线不卡 | 欧美性猛交一区二区三区精品 | 国产美女高潮流的白浆久久 | 欧美日韩另类视频偷拍 | 欧美又粗又嫩又黄A片成人 欧美又粗又深又猛又爽A片 | 日韩欧美国产一区免费 | 在线亚洲AV不卡一区二区 | 看看免费a一片欧 | 日韩欧美中文字幕一区二区三区 | 一级二级毛片 | 成年在线观看无码中文 | 丰满女人ass硕大 | 亚洲精品无码成人A片在线小说 |