內網穿透技術實踐(通過frp0.11實現)

第一章 引言

首先,什麼是內網穿透?

內網穿透是指在外網訪問運行局域網電腦搭建的服務。舉個例子,你在公司搭建一個Tomcat服務,通過localhost:8080訪問,回家後就無法通過局域網ip訪問,這就需要將本地ip映射到一個公網ip(比如阿里雲、騰訊雲之類),就可以實現在家訪問公司裏搭建的服務

第二章 相關工作

1.公網ip哪裏來?

一般部分運營商會給民用公網ip。但據博主所知,大部分地區電信會提供公網ip,目前移動只提供局域網ip。不過即使有了運營商的公網ip,相關外網端口也被運營商封閉,除非你跟他交涉開啓相關外網端口。所以一般都是使用阿里雲等提供的服務器對應的公網ip

2. 準備frp軟件

下載地址:https://github.com/fatedier/frp/releases
本文以0.11版本爲例,服務端是阿里雲的Linux服務器,客戶端是Windows。客戶端相當於公司電腦,能夠訪問內網,而服務端則是做端口轉發使用


FRP的好處:

  • 利用處於內網或防火牆後的機器,對外網環境提供 http 或 https 服務
  • 對於 http, https 服務支持基於域名的虛擬主機,支持自定義域名綁定,使多個域名可以共用一個80端口
  • 利用處於內網或防火牆後的機器,對外網環境提供 tcp 和 udp 服務,例如在家裏通過 ssh 訪問處於公司內網環境內的主機

第三章 方法

1. 服務端(以Linux服務器爲例)

  • 解壓上面的下載好的frp軟件包:tar zxvf frp_0.11.0_linux_amd64.tar.gz
  • 然後進入解壓到的文件夾: cd frp_0.11.0_linux_amd64
  • 修改服務端配置文件vi frps.ini
    [common]
    #綁定端口
    bind_port = 9000
    
    #http和https服務的端口號
    vhost_http_port = 8001
    vhost_https_port = 444
    
    #frp後臺管理
    #frp後臺管理的端口、用戶、密碼,自行設置
    dashboard_port = 8000
    dashboard_user = admin
    dashboard_pwd = passwd
    
    #token值,與客戶端對應,自行設置
    privilege_token =bdy123
    
  • 啓動服務端(下列二選一)
    1.正常啓動(注意:會話窗口一旦關閉,服務也會中斷,推薦使用第二種方法)
    frps -c frps.ini
    2.後臺打開
    nohup ./frps -c frps.ini &
  • 啓動完成可以在web端看到frp後臺界面
    瀏覽器輸入 '服務器ip:8000' 訪問

2. 客戶端(以Windows爲例)

  • 下載與服務器相同版本的frp,本文以0.11版本爲例,文件目錄如下。
  • 修改客戶端配置文件frpc.ini
[common]
#服務器ip地址
server_addr = 120.79.242.174
#服務端綁定端口,與上面的設置一致
server_port = 9000
#服務端設置的密鑰
privilege_token=bdy123

#tomcat穿透實例
[tomcat]
#通訊協議
type = tcp
#本地ip(局域網ip)
local_ip = 127.0.0.1
#本地訪問的端口
local_port = 8080
#轉發到服務器的端口
remote_port = 8084

#ssh穿透實例
[ssh]
#通訊協議
type = tcp
#本地ip(局域網ip)
local_ip = 127.0.0.1
#本地ssh服務端口
local_port = 22
#轉發到服務器的端口
remote_port = 6000
  • 啓動客戶端
    在文件夾空白處按住shift點鼠標右鍵,選擇在此處打開powershell窗口
    然後鍵入命令 .\frpc.exe -c .\frpc.ini即可打開客戶端

第四章 實際使用及注意事項

  • 設置完成後,如果客戶端電腦訪問tomcat是通過localhost:8080來實現,那麼在不同網段的計算機上就可以通過 服務器地址:8084來打開客戶端電腦上的tomcat服務器
  • 下圖這部分代碼實際上是將本地端口與服務器端做映射,仿照這種寫法可以寫多個代碼塊,具體情況具體分析
  • 如果服務端各種界面打不開,請自行查看雲服務器安全組及其各自的防火牆,設置好相應的出站規則,小問題請自行百度解決
發佈了6 篇原創文章 · 獲贊 4 · 訪問量 2968
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章