經過frp內網穿透實現外網訪問校內資源

原文地址 https://www.iots.vip/post/frp...
  又到了要交論文的畢業季,如何在外網訪問學校免費的萬方、知網等數據庫是個問題,本文記錄了經過frp工具實現內網穿透從而實現外網訪問校內資源的過程。<!--more-->
  frp 是一個可用於內網穿透的高性能的反向代理應用,支持 tcp, udp, http, https 協議。項目地址:frphtml

準備工做

咱們須要用到的有:linux

  • 一臺具備公網IP的VPS(本文使用的CentOS 64位)
  • 一臺學校內網電腦(不要求有固定公網IP,能免費訪問萬方等數據庫就行,本文使用的系統爲win7 64位)

根據系統環境從項目版本頁 下載對應的版本。這裏咱們下載 frp_0.18.0_linux_amd64.tar.gz與frp_0.18.0_windows_amd64.zipgit

配置服務器端

  將frp_0.18.0_linux_amd64.tar.gz上傳到服務器中並解壓,這裏服務器端只須要用到frps與frps.ini兩個文件,其餘的能夠刪除。
配置文件使用默認,執行:github

sudo chmod +x frps
./frps -c frps.ini

輸出信息爲chrome

2018/05/05 11:45:23 [I] [service.go:96] frps tcp listen on 0.0.0.0:7000
2018/05/05 11:45:23 [I] [root.go:172] Start frps success

便可。數據庫

配置客戶端

  解壓frp_0.18.0_windows_amd64.zip,這裏客戶端也只須要用到兩個文件,frpc.exe 與frpc.ini
咱們這裏使用http_proxy模式,關於frp的其餘功能配置見frp項目首頁 使用notepad++修改frpc.ini以下:windows

[common]
server_addr = 你的服務器IP 
server_port = 7000
[http_proxy]
type = tcp
remote_port = 6000
plugin = http_proxy

打開命令提示符cmd,CD到解壓目錄
執行:centos

frpc.exe -c frpc.ini

無error便可。
同時在服務器端輸出相似於瀏覽器

2018/05/05 11:45:39 [I] [proxy.go:86] [0dasdasdaadf3] [http_proxy] get a new work connection: [xxxxxx:xxx]

信息即表示測試經過。bash

正式部署

服務器端

  將服務器端的程序丟到後臺執行:

nohup ./frps -c frps.ini &     #這裏是將命令./frps -c frps.ini在後臺執行不掛起,忽略輸入並把輸出追加到"nohup.out,可使用jobs -l查看該進程

客戶端

  經過vb來實現後臺啓動frp客戶端:
新建文件frp.vbs,添加內容爲:

dim objShell 
set objShell=wscript.createObject("WScript.Shell") 
iReturnCode=objShell.Run("C:\Windows\frp\frpc.exe -c C:\Windows\frp\frpc.ini",0,TRUE)

這裏C:Windowsfrpfrpc.exe -c C:Windowsfrpfrpc.ini 我是將frpc.exe與frpc.ini兩個文件置於C盤Windowsfrp文件夾下的,你們能夠根據本身的路徑來修改。
  這樣咱們直接雙擊frp.vbs便可執行,能夠在任務管理器中看到frpc.exe的進程。
  打開運行(開始菜單-運行)輸入

%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup

並回車彈出資源管理器,將frp.vbs放入該目錄下,便可實現開機後臺自啓(具體有什麼用,你懂的)

瀏覽器設置

如今咱們已經在家裏準備用學校的萬方了,應該怎樣設置呢?
因爲咱們frp客戶端使用的是http_proxy模式,因此須要在咱們的瀏覽器中添加一個代理服務器:
點擊瀏覽器設置——代理服務器設置(360極速瀏覽器直接在地址欄輸入chrome://settings/proxy360)
在代理服務器列表中輸入: 你的IP:6000,並在代理服務器設置中勾選該代理便可。
如今你已經可以免費下載萬方等數據庫的論文了。

其餘注意事項

  • 客戶端與服務器端時間不能相差太大!不然會出現認證超時的錯誤:authorization timeout,關於如何同步服務器時間,可見CentOS服務器設置自動時間同步
相關文章
相關標籤/搜索