frp win linux 實現路由穿透

2021-09-13 23:03:42 字數 3586 閱讀 4121

wget *.tar.gz

tar -zxvf *.tar.gz

解壓後的目錄如下

total 21112

-rwxrwxr-x. 1 1000 1000 10400928 mar 26 19:33 frpc

-rw-rw-r--. 1 1000 1000 6450 mar 26 19:35 frpc_full.ini

-rw-rw-r--. 1 1000 1000 285 mar 28 09:26 frpc.ini

-rw-rw----. 1 root root 115 mar 28 09:08 frpc.log

-rwxrwxr-x. 1 1000 1000 11129280 mar 26 19:33 frps

-r--r-----. 1 root root 20296 mar 27 18:43 frps.2019-03-27.log

-rw-rw-r--. 1 1000 1000 2212 mar 27 18:11 frps_full.ini

-rw-rw-r--. 1 1000 1000 26 mar 28 09:03 frps.ini

-rw-rw----. 1 root root 17209 mar 28 11:24 frps.log

-rw-rw-r--. 1 1000 1000 11358 mar 26 19:35 license

drwxrwxr-x. 2 1000 1000 88 mar 26 19:35 systemd

frps啟動需要指向*.ini配置檔案,在目錄下我們選擇frps_full.ini作為我們的配置檔案

配置檔案中大多數配置不需要修改,需要注意的是下面賬戶和密碼,需要在c端保持一致

dashboard_user = admin

dashboard_pwd = admin

唯一乙個需要修改的地方token,預設是12345678,我們需要修改為我們自己配置的,保證服務端的安全性

token = 自己配置的token密碼
啟動frps的時候我們選擇後台啟動,防止我們關閉shell或者關閉ssh服務後frps停止

frps_full.ini : 是我們啟動的時候指向的配置檔案,

當然如果你選擇的配置檔案是frps.ini,就指向到frps.ini

nohup ./frps -c frps_full.ini &
使用命令列 tail -f nohup.out 檢視啟動日誌,一般日誌檔案下沒有啟動資訊,暫時沒有找到原因

注意:資料夾內是沒有frp.vbs檔案的,下面我會描述下此檔案

修改frpc配置檔案: frpc.ini

我們需要修改 [common]內的資訊,其他的不需要修改,預設即可

[common]

server_addr = 上方搭建frps服務的虛擬機器的ip

server_port = 7000

token = frps配置檔案中的token值

[ssh]

type = tcp

local_ip = 127.0.0.1

local_port = 22

remote_port = 6000

當我們直接雙擊frpc.exe的時候,黑視窗會告訴我們:

請進入到cmd視窗執行此檔案

this is a command line tool.

you need to open cmd.exe and run it from there.

開啟cmd視窗進入到frp的資料夾內執行frpc.exe

microsoft windows [版本 10.0.17134.648]

(c) 2018 microsoft corporation。保留所有權利。

d:\program files\frp\frp_0.25.3_windows_amd64>frpc.exe

2019/03/28 13:19:49 [i] [service.go:221] login to server success, get run id [f75fd636b5f34848], server udp port [7001]

2019/03/28 13:19:49 [i] [proxy_manager.go:137] [f75fd636b5f34848] proxy added: [ssh]

2019/03/28 13:19:49 [w] [control.go:142] [ssh] start error: port already used

2019/03/28 13:19:49 [w] [control.go:142] [gk-admin] start error: port already used

如上所示,便是啟動成功

這時候就出現乙個問題了,我們一直保證cmd視窗開啟,很影響我們使用和操作

我在這裡是寫了乙個frp.vbs指令碼來實現後台啟動frpc.exe,注意這個frp.vbs必須放在frp的目錄下,因為我在指令碼中使用的是相對路徑

frpc.exe -c frpc.ini代表的就是使用frpc.ini配置檔案啟動frpc.exe

如下所示:

dim objshell 

set objshell=wscript.createobject("wscript.shell")

ireturncode=objshell.run("frpc.exe -c frpc.ini",0,true)

雙擊frp.vbs

雙擊此檔案是沒有反應的,不要著急,在任務管理器中看到以下服務便是啟動成功了

配置http穿透由兩種方式:

第一種是http穿透,這個比較麻煩,如果只是平常測試使用不建議使用此方法,此方法的關鍵是把本地ip網域名稱解析到frps服務端

這裡我描述下第二種方法,使用tcp方法穿透http訪問

local_ip: 代表客戶端的ip

local_port: 代表http服務的埠號

remote_port: 代表對映到服務端的埠號

[服務名稱]

type = tcp

local_ip = 127.0.0.1

local_port = 8089

use_encryption = false

use_compression = false

remote_port = 8089

在你本地啟動http服務,使用以下請求方式即可訪問到本地的http

http:// 服務端的ip : 服務端的port / 補全完整的http請求

前端實現路由

後端實現的路由本質是通過伺服器 與路徑的配合去訪問伺服器上的靜態資源。而我們現在的專案都是單頁面,路由控制權都是放在前端了。前端框架現在都是單頁面模式,了解他們實現的本質變得重中之重。前端實現路由有兩種方式 hash 與 history hash原本是作為頁面定位使用,本身會在url後攜帶 切換路由...

Flask 路由實現

flask路由實現 處理url和函式之間繫結關係的程式 路由控制訪問的路徑,路徑能訪問到什麼是由後端來控制的 裝飾器新增路由表實現路由 路由對映表 path map defroute url,kwargs def decorator f path map url f return f return ...

路由的基本實現 hash路由

vue react在路由的實現上,都有基於hash的路由。那麼如何使用原生來實現呢?比如類似下面這樣的路由 hash實現路由的時候,最本質的原理就是hash值的變化,會引發乙個hashchange事件,可以根據這個hash值的變化,載入不同的dom。html divclass box flex bo...