frp實(shí)現(xiàn)內(nèi)網(wǎng)穿透(centos7)

我的博客:https://blog.thuol.com

說明

參考網(wǎng)絡(luò)上其他人文章。將他人技術(shù)文章親自測試并總結(jié)補(bǔ)充。
實(shí)現(xiàn)內(nèi)網(wǎng)穿需要有一臺公網(wǎng)服務(wù)器,域名。(本文將公網(wǎng)服務(wù)器稱為服務(wù)端,內(nèi)網(wǎng)服務(wù)器稱為客戶端)
(需要開啟相關(guān)的端口。相關(guān)端口沒開通,訪問就會失敗。)

frp下載地址:http://getfrp.yzxx-soft.com/
https://github.com/fatedier/frp
本文使用軟件:frp_0.8.1_linux_amd64.tar.gz
本文使用系統(tǒng):centos7(公網(wǎng)一臺,內(nèi)網(wǎng)一臺),其他系統(tǒng)配置類似
本文使用a.com代替實(shí)際域名,10.10.10.10代替實(shí)際公網(wǎng)ip,實(shí)際中請使用自己的域名和ip并解析到服務(wù)端
主域名:a.com
公網(wǎng)服務(wù)器ip:10.10.10.10
內(nèi)網(wǎng)服務(wù)器ip:192.168.198.229

centos7 frp安裝和配置(其他系統(tǒng)配置類似)

  1. 將軟件下載到服務(wù)器和客戶端(服務(wù)端和客戶端相同)
    解壓frp軟件包
tar -zxvf frp_0.8.1_linux_amd64.tar.gz

進(jìn)入解壓后的文件夾

cd frp_0.8.1_linux_amd64

文件說明

frps.ini: 服務(wù)端配置文件
frps: 服務(wù)端軟件
frpc.ini: 客戶端配置文件
frpc: 客戶端軟件

  1. 修改服務(wù)端配置
    修改服務(wù)端frps.ini
vi frps.ini

修改如下內(nèi)容(由于本文為測試,所以將原配置文件清空),或?qū)φ杖缦滦薷摹?/p>

[common]
bind_port = 7000
vhost_http_port = 80
[ssh]
listen_port = 6000
auth_token = 123
[web]
type = http
custom_domains = test1.a.com
auth_token = 123
[web2]
type = http
custom_domains = test2.a.com
auth_token = 123

開啟服務(wù)端服務(wù)(在frp_0.8.1_linux_amd64目錄下)

./frps -c ./frps.ini

服務(wù)端出現(xiàn)如下啟動(dòng)成功



配置說明

[common] 必須設(shè)置
bind_port 是自己設(shè)定的frp服務(wù)端端口
vhost_http_port 是自己設(shè)定的http訪問端口
[ssh] ssh反向代理(不是必須設(shè)置)
listen_port 是自己設(shè)定的ssh訪問端口
auth_token用于身份認(rèn)證(以下皆是)。
[web] http反向代理[]里的內(nèi)容可以自己設(shè)定,但是客戶端和服務(wù)端必須要對應(yīng)(如[aaa],[bbb]);
type 為服務(wù)類型,可以設(shè)為http,https
custom_domains為要映射的域名,記得域名的A記錄要解析到外網(wǎng)主機(jī)的IP。
[web2]同上(可設(shè)置多個(gè))

  1. 修改客戶端配置(win系統(tǒng)找到相應(yīng)配置文件進(jìn)行類似配置)
    修改服務(wù)端frpc.ini
vi frpc.ini

修改如下內(nèi)容(由于本文為測試,所以將原配置文件清空),或?qū)φ杖缦滦薷摹?/p>

[common]
server_addr = 10.10.10.10
server_port = 7000
auth_token = 123
[ssh]
local_port = 22
[web]
type = http
local_port = 80
[web2]
type = http
local_port = 8080

開啟客戶端服務(wù)(在frp_0.8.1_linux_amd64目錄下)

./frpc -c ./frpc.ini

客戶端出現(xiàn)如下啟動(dòng)成功



配置說明

[common]必填
server_addrfrp服務(wù)端的ip(也就是外網(wǎng)主機(jī)的IP)
server_portfrp服務(wù)端的bind_prot。
[ssh]
local_port客戶端ssh端口。
[web]
type對應(yīng)服務(wù)端配置
local_port客戶端訪問端口。
[web2]同上

測試(本文中客戶端已經(jīng)裝了Nginx服務(wù))

  1. http測試
    訪問內(nèi)網(wǎng)http://192.168.198.229

    訪問域名http://test1.a.com
  2. ssh連接內(nèi)網(wǎng)機(jī)器測試(linux系統(tǒng))
    連接設(shè)置



    連接結(jié)果


  3. win系統(tǒng)也可通過tcp遠(yuǎn)程桌面連接,只需要把客戶端端口改成win遠(yuǎn)程默認(rèn)端口:3389。

后臺啟動(dòng)(使用nohup,以服務(wù)端為例子,客戶端類似)

啟動(dòng)(進(jìn)入frp目錄)

nohup ./frps -c ./frps.ini &     #啟動(dòng)服務(wù)端 帶&符號

啟動(dòng)后會返回相關(guān)的pid
關(guān)閉

kill 19619                     #輸入你系統(tǒng)中返回的pid
kill -9 $(pidof frps)          #或者使用這個(gè)命令關(guān)閉,$(pidof frps)中frps為進(jìn)程名稱客戶端為frpc

查看狀態(tài)

netstat -antpl                 #看到7000端口說明后臺啟動(dòng)成功(配置文件中配置的frp服務(wù)端口)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容