使用Frp內網穿透訪問內網Web項目

使用場景:
內網發布的Web項目,怎樣在公網環境中訪問到

一 前提:

需要有一個公網IP,為安全起見,公網IP以23.23.23.23為例。
公網IP機器作為服務器
內網機器作為客戶端

二 前提:服務端與客戶端需要安裝frp

服務端與客戶端需要安裝frp
下載地址:frp
frp支持linux平臺和windows平臺。
一般linux平臺下載的版本為:frp_版本號linux_amd64.tar.gz,windows平臺下載的版本為:frp版本號_windows_amd64.zip。
linux版本文件的解壓命令為tar -zxvf 文件名 ;windows版本文件直接右鍵解壓即可。
文件解壓后,一般都含有frps(frp服務端運行文件)、frpc(frp客戶端運行文件)、frps.ini(frp服務端配置文件)、frpc.ini(frp客戶端配置文件),以及frp_full.ini(frp全部配置文件解釋說明和參考。

2.1 服務端Frp安裝配置:

服務端因為是Windows系統,直接下載,解壓


image.png

修改 frps.ini文件為:

[common]
#穿透的端口
bind_port = 7000
#http端口設置
vhost_http_port = 8047
#客戶端連接令牌
token = 20190704token123token
#https端口設置
#vhost_https_port=8047
#顯示的日志級別
log_level = info
#https端口設置
#vhost_https_port=8047
2.2 客戶端Frp安裝配置:
fcj@ubuntu:~/Desktop/Frp$ tar -zxvf  frp_0.27.0_linux_amd64.tar.gz
frp_0.27.0_linux_amd64/
frp_0.27.0_linux_amd64/frps_full.ini
frp_0.27.0_linux_amd64/frps.ini
frp_0.27.0_linux_amd64/frpc
frp_0.27.0_linux_amd64/frpc_full.ini
frp_0.27.0_linux_amd64/frps
frp_0.27.0_linux_amd64/LICENSE
frp_0.27.0_linux_amd64/frpc.ini
frp_0.27.0_linux_amd64/systemd/
frp_0.27.0_linux_amd64/systemd/frpc@.service
frp_0.27.0_linux_amd64/systemd/frpc.service
frp_0.27.0_linux_amd64/systemd/frps.service
frp_0.27.0_linux_amd64/systemd/frps@.service

fcj@ubuntu:~/Desktop/Frp$ tar -zxvf  frp_0.27.0_linux_amd64.tar.gz
frp_0.27.0_linux_amd64/
frp_0.27.0_linux_amd64/frps_full.ini
frp_0.27.0_linux_amd64/frps.ini
frp_0.27.0_linux_amd64/frpc
frp_0.27.0_linux_amd64/frpc_full.ini
frp_0.27.0_linux_amd64/frps
frp_0.27.0_linux_amd64/LICENSE
frp_0.27.0_linux_amd64/frpc.ini
frp_0.27.0_linux_amd64/systemd/
frp_0.27.0_linux_amd64/systemd/frpc@.service
frp_0.27.0_linux_amd64/systemd/frpc.service
frp_0.27.0_linux_amd64/systemd/frps.service
frp_0.27.0_linux_amd64/systemd/frps@.service

客戶端修改 frpc.ini文件為

[common]
server_addr = 23.23.23.23
server_port = 7000
token = 20190704token123token

admin_addr = 10.17.128.45
admin_port = 7400
admin_user = admin
admin_pwd = admin

[web01]
type = http
local_ip =10.0.2.109
local_port =8010
custom_domains =23.23.23.23
#密碼保護web
#http_user = fcj
#http_pwd = fcj

#https
#[test_htts2http]
#type = https
#custom_domains =custom_domains = 23.23.23.23

#plugin = https2http
#plugin_local_addr = 127.0.0.1:80

# HTTPS 證書相關的配置
#plugin_crt_path = ./server.crt
#plugin_key_path = ./server.key
#plugin_host_header_rewrite = 127.0.0.1
#https end

三 運行:

  • 服務端
C:\frp_0.27.0_windows_amd64>frps -c frps.ini &
2019/07/01 03:25:55 [I] [service.go:139] frps tcp listen on 0.0.0.0:7000
2019/07/01 03:25:55 [I] [service.go:181] http service listen on 0.0.0.0:8047
2019/07/01 03:25:55 [I] [root.go:204] Start frps success
  • 客戶端
fcj@ubuntu:~/Desktop/Frp/frp_0.27.0_linux_amd64$ sudo ./frpc -c frpc.ini
2019/07/01 03:26:05 [I] [service.go:221] login to server success, get run id [b35d408225204ec3], server udp port [0]
2019/07/01 03:26:05 [I] [proxy_manager.go:137] [b35d408225204ec3] proxy added: [web01]
2019/07/01 03:26:05 [I] [service.go:109] admin server listen on 10.17.128.45:7400
2019/07/01 03:26:05 [I] [control.go:144] [web01] start proxy success

啟動成功后就可以通過23.23.23.23:8047 訪問到內網發布的項目

五 frp其他功能:

1訪問加密:

由于所有客戶端共用一個 frps 的 http 服務端口,任何知道你的域名和 url 的人都能訪問到你部署在內網的 web 服務,但是在某些場景下需要確保只有限定的用戶才能訪問。
frp 支持通過 HTTP Basic Auth 來保護你的 web 服務,使用戶需要通過用戶名和密碼才能訪問到你的服務。
該功能目前僅限于 http 類型的代理,需要在 frpc 的代理配置中添加用戶名和密碼的設置。

# frpc.ini
[common]
#服務端的訪問地址(可用ip或者域名)。
server_addr = 23.23.23.23
#需要穿透的服務端端口,與服務端配置一樣
server_port = 7000
#服務端連接令牌
token = token123token

#普通網站發布映射
[web]
type = http
#本地訪問的端口
local_port = 8020
#自己定義域名(可用ip或者域名)。在此使用的公網IP,因為沒有域名
custom_domains = 23.23.23.23
#密碼保護web
http_user = abc
http_pwd = abc
#普通網站發布 end

通過瀏覽器訪問 http://23.23.23.23:8047,需要輸入配置的用戶名和密碼才能訪問。


image.png
2客戶端監控頁面:

Admin UI
Admin UI 可以幫助用戶通過瀏覽器來查詢和管理客戶端的 proxy 狀態和配置。

需要在 frpc.ini 中指定 admin 服務使用的端口,即可開啟此功能:

[common]
admin_addr = 127.0.0.1
admin_port = 7400
admin_user = admin
admin_pwd = admin
打開瀏覽器通過 http://127.0.0.1:7400 訪問 Admin UI,用戶名密碼默認為 admin。

如果想要在外網環境訪問 Admin UI,將 7400 端口映射出去即可,但需要重視安全風險。


image.png
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,517評論 6 539
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,087評論 3 423
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,521評論 0 382
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,493評論 1 316
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,207評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,603評論 1 325
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,624評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,813評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,364評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,110評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,305評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,874評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,532評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,953評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,209評論 1 291
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,033評論 3 396
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,268評論 2 375

推薦閱讀更多精彩內容