frp的作用
利用處於內網或防火牆後的機器,對外網環境提供 http 或 https 服務。
對於 http, https 服務支持基於域名的虛擬主機,支持自定義域名綁定,使多個域名可以共用一個80端口。
利用處於內網或防火牆後的機器,對外網環境提供 tcp 和 udp 服務,例如在家裏通過 ssh 訪問處於公司內網環境內的主機
本次實驗目的外網可以ssh連接內網
公網服務器1臺(本次採用阿里雲的centos7)
內網服務器1臺(我這裏演示的是linux環境,vmware安裝的centos7)
安裝frp
wget https://github.com/fatedier/frp/releases/download/v0.13.0/frp_0.13.0_linux_amd64.tar.gz(服務器&客戶機都下載並解壓)
解壓tar -zxvf frp_0.13.0_linux_amd64.tar.gz
進入解壓目錄cd frp_0.13.0_linux_amd64,這裏主要關注4個文件,分別是frpc、frpc.ini是客戶端所關注文件 frps、frps.ini是服務端所關注兩個文件。
配置服務端(公網服務器),首先刪掉frpc、frpc.ini兩個文件,然後再進行配置,vi ./frps.ini,
[common]
bind_port = 7000 #與客戶端綁定的進行通信的端口
vhost_http_port = 6081 #訪問客戶端web服務自定義的端口號
保存然後啓動服務./frps -c ./frps.ini,這是前臺啓動,後臺啓動命令爲nohup ./frps -c ./frps.ini &
配置客戶端(內網服務器),首先刪掉frps、frps.ini兩個文件,然後再進行配置,vi ./frpc.ini
[common]
server_addr = 59.110.219.244 #公網服務器ip
server_port = 7000 #與服務端bind_port一致
#公網通過ssh訪問內部服務器
[ssh]
type = tcp #連接協議
local_ip = 192.168.111.146 #內網服務器ip
local_port = 22 #ssh默認端口號
remote_port = 6000 #自定義的訪問內部ssh端口號
#也可以用來連接內網web(由於沒有域名不做解釋 可參考以下參數跟在上面配置文件之後即可)
#公網訪問內部web服務器以http方式
[web]
type = http #訪問協議
local_port = 8081 #內網web服務的端口號
custom_domains = repo.iwi.com #所綁定的公網服務器域名,一級、二級域名都可以
保存然後執行./frpc -c ./frpc.ini啓動,這是前臺啓動,後臺啓動命令爲nohup ./frpc -c ./frpc.ini &
注意:如果爲雲主機,切記設置防火牆規則,以下僅供參考
至此實驗就以完成
上圖看出訪問阿里主機6000端口 連接的是我內網虛擬機111.146
綜上
實驗完成