羣暉用FRP快速實現HTTPS加密訪問

前段時間羣暉裝了 TTRSS,奈何 TTRSS 容器自身不負責使用 HTTPS 加密通信。

幸好 FRP 在 v0.26.0 中加入了 http2https 插件,可快速實現外網安全訪問,特此記錄並分享。

 

關於 FRP

FRP:一個可用於內網穿透的高性能反向代理應用,支持 tcp, udp 協議,爲 http 和 https 應用協議提供了額外的能力,且嘗試性支持了點對點穿透。

項目中文文檔:https://github.com/fatedier/frp/blob/master/README_zh.md

熟讀文檔才能事半功倍。

使用 FRP 實現 https 訪問

如圖,要使用此功能,服務端和客戶端版本均不可低於 v0.26.0

使用方法官方有,這裏貼出博主配置 TTRSS 的代碼:

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[ TTRSS ]
type = https
 
# 這裏使用的二級域名,需自行申請證書
custom_domains = xxx . bwskyer . com
 
# 開啓插件,重要
plugin = https2http
 
# 以下爲配置插件
# 轉換成 http 後發送到的本地端口
plugin_local_addr = 127.0.0.1 : 5005
 
# 證書位置(我這裏放在 FRP 程序根目錄)
plugin_crt_path = . / certificate . crt
plugin_key_path = . / private . key
 
# 修改 HTTP 請求中的 header,建議保留 127.0.0.1
plugin_host_header_rewrite = 127.0.0.1
 
# 可選參數
plugin_header_X - From - Where = frp

🔴 特別注意 plugin_host_header_rewrite 參數,建議不修改。

啓動 FRP 後,便可使用 https://xxx.bwskyer.com 訪問 TTRSS 。

與普通 https 反代的差異

正常的 https 配置:

 
1
2
3
4
5
[ HTTPS_BW ]
type = https
local_ip = 127.0.0.1
local_port = 8001
custom_domains = xxx . bwskyer . com

 

適用於通過 web 服務器完成 https 證書導入配置。

下圖是兩種方式的對比,簡單的說,就是如果內網不配置 SSL 證書服務,想快速實現 https 訪問,那就直接把證書交給 FRP 來完成加密,如果內網配置了 SSL 證書服務,則直接跳轉。

通過 https2http 完成的 TTRSS https 訪問。


家庭寬帶部署web服務或被禁,故本文純屬技術討論,文中網址無效。(據說有備案的域名貌似可行,即使如此,依然建議採用 https 方式完成反向代理。)

FRP 功能真的很豐富,多看看文檔,你會發現很多好玩的東西,比如 http 加密碼提示訪問。

-End-

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章