frp 是乙個可用於內網穿透的高效能的反向**應用,支援 tcp, udp 協議,為 http 和 https 應用協議提供了額外的能力,且嘗試性支援了點對點穿透。
注意事項:
以0.32.0版本64位為例:
wget
部署分為服務端和客戶端,先執行服務端
說下我使用的機器裝置:
類別裝置
服務端阿里雲伺服器ecs(centos 7.7 64位)
客戶端樹莓派3b+
簡單說下,博主服務端用的阿里雲伺服器ecs ,這樣你就有了一台有公網ip的機器,如果不是用公網的機器,那只能在區域網中訪問了。
客戶端用的樹莓派3b+ 乙個linux小主機,一直在吃灰,這次也算物盡其用了。
你可以選擇你有的兩台裝置分別做服務端和客戶端做測試,windows、linux、mac 都可以
# 解壓
tar -zxvf frp_0.32.0_linux_amd64.tar.gz -c /usr/local
# 進入配置路徑
cd /usr/local/frp/frp_0.32.0_linux_amd64
下面博主自己的配置:
token = 123456bind_port
: 提供給客戶端訪問的埠
vhost_http_port
: 服務端給使用者訪問的埠,這裡可以配合使用網域名稱,後面詳細說明
authentication_method
:使用token方式來驗證客戶端訪問
token
:自己定義乙個隨機數,客戶端的token要和服務端token 保持一致,注意不要洩露,防止別人隨意蹭服務端提供的服務
./frps -c ./frps.ini
上面直接啟動,關閉連線視窗會關閉程序,可以後台執行
nohup ./frps -c ./frps.ini &
高階:將服務端frps新增為service
進入/usr/local/frp/frp_0.32.0_linux_amd64/systemd 路徑
cd /usr/local/frp/frp_0.32.0_linux_amd64/systemd
[unit]
description=frp server service
after=network.target
[service]
type=******
user=root
restart=on-failure
restartsec=5s
execstart=/usr/bin/frps -c /etc/frp/frps.ini
[install]
wantedby=multi-user.target
啟動程式複製到/usr/bin 目錄下,配置檔案複製到/etc/frp 路徑下,沒有frp資料夾,自行建立
# 啟動指令碼複製到/usr/bin目錄下
cp /usr/local/frp/frp_0.32.0_linux_amd64/frps /usr/bin
# 在/etc下新建frp資料夾
cd /etc
mkdir frp
# 複製配置檔案
cp /usr/local/frp/frp_0.32.0_linux_amd64/frps.ini /etc/frp
# 複製frps.service
cp /usr/local/frp/frp_0.32.0_linux_amd64/systemd/frps.service /etc/systemd/system
以上操作如沒有許可權, 請在命令前新增sudo
,或者使用root使用者(使用root使用者一定要小心操作)
下面嘗試使用systemctl來管理frps
# 啟動
systemclt start frps
# 停止
systemclt stop frps
# 重啟
systemctl restart frps
# 檢視狀態
systemctl status frps
# 開機啟動
systemctl enable frps
訪問:http://公網ip:8080
注意: 服務端起來後就可以訪問到頁面, 這時候還沒有客戶端提供服務, 等客戶端啟動後, 就可以訪問到具體服務。
如果機器80埠可用的話,標題2.1.2的 vhost_http_port 也可以配置成80埠,這樣就可以直接使用http://公網ip
訪問了。
如果80埠已經被占用了,我們我可以使用nginx來處理
在nginx配置中新增以下配置:
server
}
我們可以使用二級網域名稱,直接訪問
訪問的請求會自動**到 上,這裡博主的nginx和frp部署在一台機器上。
解壓rp_0.32.0_linux_arm.tar.gz
修改frpc.ini配置
# frpc.ini
[common]
server_addr = 公網ip
custom_domains = 公網網域名稱
啟動
./frpc -c ./frpc.ini
後台執行:
nohup ./frpc -c ./frpc.ini &
frp實現內網穿透
利用處於內網或防火牆後的機器,對外網環境提供 http 或 https 服務。對於 http,https 服務支援基於網域名稱的虛擬主機,支援自定義網域名稱繫結,使多個網域名稱可以共用乙個80埠。利用處於內網或防火牆後的機器,對外網環境提供 tcp 和 udp 服務,例如在家裡通過 ssh 訪問處於...
frp實現內網穿透
第二部 開啟資料夾,配置裡面的frpc.ini檔案,右鍵編輯就可以 裡面的ssh是預設的要改個名字,不是提示名字被占用,web 是自己加上去的,但是也要改個名字。埠號 按自己需求定,比如你的tomcat是80埠,就配80 按這個配置好檔案後,進行第三步。第三步 在doc視窗下執行這個配置檔案,執行這...
Frp實現內網穿透
一 內網穿透 內網穿透 可用使用外網訪問本地的應用,例如 內網穿透後使用zyd.fanaozhe.top訪問本地的localhost 8080 二 frp安裝步驟 服務端 客戶端2.frp的解壓啟動 1 服務端 將tar包解壓縮 tar zxvf frp 0.26.0 linux amd64.tar...