CentOS 7部署frp穿透內網服務器

centos7安裝FRP Server 下載解壓 - 然後修改配置文件即可。

#下載server端
wget https://github.com/fatedier/frp/releases/download/v0.25.0/frp_0.25.0_linux_amd64.tar.gz
#解壓
tar -zxvf frp_0.25.0_linux_amd64.tar.gz
#進入目錄
cd frp_0.25.0_linux_amd64

解壓後我們會看到裏面有好幾個文件,Server端我們只需要下面2個

-rwxrwxr-x 1 mysql mysql 11026848 Mar 11 17:15 frps
-rw-rw-r-- 1 mysql mysql       26 Mar 11 17:19 frps.ini

繼續編輯frps.ini這個文件,寫入以下內容: 註釋:bind_port=700 開啓7000作爲本地服務 vhost_http_port = 7002 開啓7002作爲穿透內網鏈接的服務器 dashboard_port = 7001 公網後臺頁面端口 dashboard_user 公網後臺用戶名 dashboard_pwd 公網後臺密碼 token 密鑰 log_file 日誌 ** subdomain_host 公網能訪問的域名解析**

[common]
bind_port = 7000
vhost_http_port = 7002
subdomain_host = test.test.com
dashboard_port = 7001
dashboard_user = admin
dashboard_pwd = abc123456
token = frp
max_pool_count = 10
log_file = ./frps.log
log_level = info
log_max_days = 3

Bash

Copy

配置文件完成後輸入命令./frps -c ./frps.ini 啓動服務端,當然也別忘記在防火牆放行端口哦。如果需要服務在後臺運行,可以將命令替換爲:nohup ./frps -c ./frps.ini &

#iptables放行端口 iptables -A INPUT -p tcp --dport 7000 -j ACCEPT iptables -A INPUT -p tcp --dport 7001 -j ACCEPT iptables -A INPUT -p tcp --dport 7002 -j ACCEPT service iptables save

#firewalld放行端口 firewall-cmd --zone=public --add-port=7000/tcp --permanent firewall-cmd --zone=public --add-port=7001/tcp --permanent firewall-cmd --zone=public --add-port=7002/tcp --permanent firewall-cmd --reload

安裝Windows 客戶端 上面已提到FRP分服務端和客戶端,上面的步驟已經完成服務端安裝,接下來我們在Windows上安裝客戶端。

Windows 客戶端下載地址:frp_0.25.0_windows_amd64.zip 解壓之後我們需要下面2個文件

可以配置多個web服務 

frpc.exe frpc.ini 修改配置文件frpc.ini內容如下:

[common]
server_addr = 公網ip
server_port = 7000
token = frp
user = admin

[web]
type = http
local_ip = 127.0.0.1 (本地服務器ip)
local_port = 80 (本地端口)
custom_domains = test.test.com (域名)
http_user = dahai (域名訪問設置用戶)
http_pwd = 123456 (域名訪問設置密碼)

[web]
type = http
local_ip = 127.0.0.1 (本地服務器ip)
local_port = 81 (本地端口)
custom_domains = test1.test.com (域名)
http_user = dahai (域名訪問設置用戶)
http_pwd = 123456 (域名訪問設置密碼)

Bash

Copy

server_addr: 爲服務器公網IP server_port: FRP主服務監聽的端口 local_ip: 本地電腦IP local_port: 本地電腦監聽的端口(Windows遠程桌面服務默認監聽3389) remote_port: Server端需要轉發的端口 auth_token: 驗證密碼,上個步驟我們設置的123456

在cmd窗口下進入FRP客戶端目錄,然後執行命令frpc.exe -c frpc.ini,如果不報錯,那麼客戶端也正常運行了。假如您服務器IP是1.1.1.1,當您連接1.1.1.1:7002時,就可以映射到內網的127.0.0.1:7002,從而實現內網穿透。

linux centos服務器機子記得編輯的是frpc.ini 配置一樣即可這裏就不復制了,記得修改你需要知道的域名端口即可 如果不用賬號密碼訪問配置文件中刪掉即可 啓動./frpc -c ./frpc.ini & 後臺啓動 ./frpc -c ./frpc.ini &

總結 上面的方法適合本地申請不到公網IP的童鞋,如果本地已經有公網IP,直接使用光貓或路由器的端口映射 功能即可。上面的工作只是轉發了TCP流量,FRP的用途遠不止這些,如果有興趣可以自行深入研究。

Github項目地址:https://github.com/fatedier/frp

最新版服務端/客戶端下載:https://github.com/fatedier/frp/releases

個人參考配置
服務器端:
[common]
bind_addr = 0.0.0.0             //綁定地址
bind_port = 8888                //TCP綁定端口
bind_udp_port = 8888            //UDP綁定端口
kcp_bind_port = 8888            //KCP綁定端口
vhost_http_port = 80            //HTTP代理端口
vhost_https_port = 443          //HTTPS代理端口
dashboard_addr = 0.0.0.0        //儀表盤地址
dashboard_port = 10000          //儀表盤端口
dashboard_user = admin          //儀表盤用戶名
dashboard_pwd = admin           //儀表盤密碼
token = 123456                  //連接密碼
subdomain_host = test.com       //子域名使用的主機名
客戶端:
[common]
server_addr = 172.16.100.100    //服務器地址
server_port = 8888              //服務器綁定端口
token = 123456                  //特權模式密碼

[web]                           //服務名稱(自定義)
local_ip = 192.168.10.50        //本機ip
type = http                      //鏈路類型
local_port = 80                 //本機端口
subdomain = web                 //服務端爲test.com,故此處子域名爲web.test.com
custom_domains = demo.com       //自定義訪問域名,多個使用,分割
use_compression = true          //使用壓縮
use_encryption = true           //使用加密

[ssh]                           //服務名稱(自定義)
local_ip = 192.168.10.50        //本機ip
type = tcp                      //鏈路類型
local_port = 22                 //本機端口
remote_port = 9000              //遠程訪問端口
use_compression = true          //使用壓縮
use_encryption = true           //使用加密

 

本問來自大海技術博客 http://www.ypyunedu.com/article/96

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章