欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

高性能的內(nèi)網(wǎng)穿透工具frp使用場景

 更新時(shí)間:2022年06月17日 08:51:04   作者:K8sCat  
這篇文章主要為大家介紹了一款高性能內(nèi)網(wǎng)穿透工具frp的使用場景,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

本文將分享一個(gè)很好用的內(nèi)網(wǎng)穿透工具 frp,以及一些具體的使用場景。

什么是 frp

frp 是一個(gè)專注于內(nèi)網(wǎng)穿透的高性能的反向代理應(yīng)用,支持 TCP、UDP、HTTP、HTTPS 等多種協(xié)議。可以將內(nèi)網(wǎng)服務(wù)以安全、便捷的方式通過具有公網(wǎng) IP 節(jié)點(diǎn)的中轉(zhuǎn)暴露到公網(wǎng)。

為什么使用 frp

通過在具有公網(wǎng) IP 的節(jié)點(diǎn)上部署 frp 服務(wù)端,可以輕松地將內(nèi)網(wǎng)服務(wù)穿透到公網(wǎng),同時(shí)提供諸多專業(yè)的功能特性,這包括:

  • 客戶端服務(wù)端通信支持 TCP、KCP 以及 Websocket 等多種協(xié)議。
  • 采用 TCP 連接流式復(fù)用,在單個(gè)連接間承載更多請求,節(jié)省連接建立時(shí)間。
  • 代理組間的負(fù)載均衡。
  • 端口復(fù)用,多個(gè)服務(wù)通過同一個(gè)服務(wù)端端口暴露。
  • 多個(gè)原生支持的客戶端插件(靜態(tài)文件查看,HTTP、SOCK5 代理等),便于獨(dú)立使用 frp 客戶端完成某些工作。
  • 高度擴(kuò)展性的服務(wù)端插件系統(tǒng),方便結(jié)合自身需求進(jìn)行功能擴(kuò)展。
  • 服務(wù)端和客戶端 UI 頁面。

安裝

可以在 Github 的 Release 頁面中進(jìn)行下載:

curl -LO https://github.com/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_amd64.tar.gz
tar zxf frp_0.37.0_linux_amd64.tar.gz

壓縮包里包含了客戶端和服務(wù)端的兩個(gè)可執(zhí)行文件,以及對應(yīng)的配置文件:

> tree -L 1 frp_0.37.0_linux_amd64
frp_0.37.0_linux_amd64
├── frpc # 客戶端程序
├── frpc_full.ini # 對應(yīng)客戶端程序的詳細(xì)配置文件
├── frpc.ini # 對應(yīng)客戶端程序的簡單配置文件
├── frps # 服務(wù)端程序
├── frps_full.ini # 對應(yīng)服務(wù)端程序的詳細(xì)配置文件
├── frps.ini # 對應(yīng)服務(wù)端程序的簡單配置文件
├── LICENSE
└── systemd
    ├── frpc.service # 客戶端的 systemd 服務(wù)配置文件
    ├── frpc@.service # 客戶端的 systemd 模板文件
    ├── frps.service  # 服務(wù)端的 systemd 服務(wù)配置文件
    └── frps@.service # 服務(wù)端的 systemd 模板文件

使用

首先,這個(gè)工具需要一個(gè)公網(wǎng)服務(wù)器配置使用,配置文件可以參考詳細(xì)的配置文件進(jìn)行編寫,后面會講到自己常用的幾個(gè)場景下的配置。

先啟動(dòng)服務(wù)端:

./frps -c ./frps.ini

再啟動(dòng)客戶端:

./frpc -c ./frpc.ini

Tip:如果需要在后臺長期運(yùn)行,可以結(jié)合 systemd 或者 supervisor 進(jìn)行使用。

使用場景

統(tǒng)一的服務(wù)端配置

[common]
bind_port = 9999
authentication_method = token
token = yourtokenhere
vhost_http_port = 10001
vhost_https_port = 10002

配置說明:

  • bind_port 是客戶端連接使用的端口號。
  • 為了安全起見,會給服務(wù)端加上 token 認(rèn)證,客戶端被要求使用服務(wù)端配置的 token 才可以連接。
  • vhost_http_port 和 vhost_https_port 在自定義域名訪問時(shí)需要設(shè)置。

下面將都是基于這個(gè)服務(wù)端配置的一些場景下的客戶端配置。

SSH 連接內(nèi)網(wǎng)服務(wù)器

[common]
server_addr = x.x.x.x
server_port = 9999
token = yourtokenhere
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6666

配置說明:

  • server_addr 是服務(wù)端所在服務(wù)器的公網(wǎng) IP。
  • remote_port 設(shè)置在公網(wǎng)服務(wù)器上綁定的端口號。

現(xiàn)在,我們就可以通過 SSH 連接內(nèi)網(wǎng)服務(wù)器:

ssh -p 6666 k8scat@x.x.x.x

暴露內(nèi)網(wǎng) HTTP 服務(wù)

TCP 類型

這種方式不需要在服務(wù)端設(shè)置 vhost_http_port 和 vhost_https_port:

[common]
server_addr = x.x.x.x
server_port = 9999
token = yourtokenhere
[web]
type = tcp
local_ip = 127.0.0.1
local_port = 3333
remote_port = 6666

訪問:http://x.x.x.x:6666

HTTP 類型

這種方式需要在服務(wù)端設(shè)置 vhost_http_port = 6666,也就是和客戶端配置的 remote_port 相同。

[common]
server_addr = x.x.x.x
server_port = 9999
token = yourtokenhere
[web]
type = http
local_ip = 127.0.0.1
local_port = 3333
remote_port = 6666
custom_domains = x.x.x.x

同樣訪問:http://x.x.x.x:6666

靜態(tài)文件下載服務(wù)

在沒用 frp 之前,使用的是 Nginx 搭建的靜態(tài)文件服務(wù)器,只適用于公網(wǎng)服務(wù)器,如果是內(nèi)網(wǎng),還是得用 frp!下面是使用 frp 搭建靜態(tài)文件下載服務(wù)的客戶端配置:

[common]
server_addr = x.x.x.x
server_port = 9999
token = yourtokenhere
[file-server]
type = tcp
remote_port = 6666
plugin = static_file
plugin_local_path = /home/k8scat/files
plugin_strip_prefix = download
plugin_http_user = k8scat
plugin_http_passwd = yourpasswd

配置說明:

  • plugin_local_path 指定本地文件存放的路徑。
  • plugin_strip_prefix 指定下載的 URL 的前綴,比如需要下載 /home/k8scat/files/a.tgz 文件,那么 URL 將會是 http://x.x.x.x:6666/download/a.tgz。
  • plugin_http_user 和 plugin_http_passwd 為了安全起見,可以設(shè)置下載時(shí)的 HTTP 身份驗(yàn)證。

以上就是高性能的內(nèi)網(wǎng)穿透工具frp使用場景的詳細(xì)內(nèi)容,更多關(guān)于內(nèi)網(wǎng)穿透工具frp的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論