機(jī)房有很多閑置的主機(jī)棵里,再想到網(wǎng)上的云主機(jī)那么貴,配置容量還那么低朝抖,還不如自己配置下邢锯,看能不能通過(guò)公網(wǎng)連接到學(xué)校內(nèi)網(wǎng)的主機(jī),試了后感覺(jué)不錯(cuò)可以谊囚,只需要內(nèi)網(wǎng)的機(jī)器能夠訪問(wèn)到外網(wǎng)就行了∨孪恚現(xiàn)在在一個(gè)新的主機(jī)上重新做一遍,來(lái)回顧一下所做的步驟镰踏。
一函筋、環(huán)境準(zhǔn)備
最新版本 frp
一臺(tái)公網(wǎng) VPS 服務(wù)器
內(nèi)網(wǎng)一臺(tái)服務(wù)器,需要保證能夠連接到互聯(lián)網(wǎng)
二奠伪、服務(wù)器端配置
服務(wù)器作為公網(wǎng)訪問(wèn)唯一的固定地址跌帐,即作為 server 端。內(nèi)網(wǎng)客戶端作為 client 端绊率,會(huì)主動(dòng)向 server 端創(chuàng)建連接谨敛,此時(shí)再?gòu)?server 端反向發(fā)送數(shù)據(jù)即可實(shí)現(xiàn)內(nèi)網(wǎng)穿透。
1.下載
##下載 frp 并解壓
wget https://github.com/fatedier/frp/releases/download/v0.9.3/frp_0.9.3_linux_amd64.tar.gz
tar -zxvf frp_0.9.3_linux_amd64.tar.gz
cd frp_0.9.3_linux_amd64
2.編輯
編輯目錄下** frps.ini **文件
# 編輯配置文件
# frps.ini
#通用設(shè)置
[common]
# frp 監(jiān)聽(tīng)地址
bind_port = 7000
#frp 控制面板
dashboard_port = 7500
# dashboard 用戶名密碼可選滤否,默認(rèn)都為 admin
dashboard_user = admin
dashboard_pwd = admin
# 開(kāi)啟 ssh 穿透(可通過(guò)外網(wǎng)鏈接內(nèi)網(wǎng) ssh)
[ssh]
type = tcp
listen_port = 6000 #到時(shí)候通過(guò) ssh @x.x.x.x -p 6000 連接到PC1
auth_token = 123 # client端的auth_token 需要和這一致
# 內(nèi)網(wǎng)的多臺(tái)主機(jī) 都可以通過(guò)一個(gè)公網(wǎng)服務(wù)器進(jìn)行映射
[ssh_1]
type = tcp
listen_port = 6001
auth_token = 1231
3.運(yùn)行
其他具體配置說(shuō)明請(qǐng)參考frp [中文文檔]
設(shè)置完成后執(zhí)行
./frps -c frps.ini #(如需后臺(tái)運(yùn)行 在命令后面加個(gè)&)
啟動(dòng)即可
三脸狸、客戶端配置
客戶端只需要多配置所鏈接的服務(wù)器端地址,以及要映射客戶端的哪些服務(wù)端口
1.下載
##下載 frp 并解壓
wget https://github.com/fatedier/frp/releases/download/v0.9.3/frp_0.9.3_linux_amd64.tar.gz
tar -zxvf frp_0.9.3_linux_amd64.tar.gz
cd frp_0.9.3_linux_amd64
2.編輯
編輯目錄下 frpc.ini 文件
# 通用配置
[common]
# 服務(wù)器端地址
server_addr = X.X.X.X # 填自己服務(wù)器端的IP地址或者域名
server_port = 7000 # 服務(wù)器端口
auth_token = 123 # 授權(quán)token 要與服務(wù)器端的SSH密碼一致才能映射 這個(gè)密碼是6000端口的 1個(gè)密碼可以對(duì)一個(gè)端口
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
3.運(yùn)行
最后使用
./frpc -c frpc.ini
啟動(dòng)即可
四、測(cè)試
服務(wù)器會(huì)檢測(cè)到客戶端的請(qǐng)求 如果成功/失敗 均會(huì)有提示
客戶端開(kāi)啟frp后 成功或失敗 也均會(huì)有提示
服務(wù)器和客戶端
服務(wù)端和客戶端同時(shí)開(kāi)啟完成后炊甲,即可訪問(wèn) http://domain.com(或IP地址):7500
進(jìn)入 frp 控制面板泥彤,如下
此時(shí)通過(guò) ssh root@domain.com(或IP地址) -p 6000
即可連接到內(nèi)網(wǎng)服務(wù)器
五、設(shè)為開(kāi)機(jī)啟動(dòng)項(xiàng)
**編輯 rc.local **
sudo vim /etc/rc.local
在最后加入
/home/frp/frps(frps文件的絕對(duì)地址) -c /home/frp/frps.ini(同理) &
(若不加上& (為了后臺(tái)運(yùn)行) CentOS開(kāi)機(jī)時(shí) frp若成功開(kāi)啟 會(huì)在rc.local這卡死)
將rc.local 賦予權(quán)限
sudo chmod +x /etc/rc.d/rc.local
六卿啡、服務(wù)器端熱加載配置文件
當(dāng)需要新增一個(gè) frpc 客戶端時(shí)吟吝,為了避免將 frps 重啟,可以使用 reload 命令重新加載配置文件颈娜。
./frps -c ./frps.ini --reload