通過 frp 進(jìn)行內(nèi)網(wǎng)穿透并實(shí)現(xiàn)Rstudio server遠(yuǎn)程訪問

需求

因?yàn)閷?shí)驗(yàn)室小服務(wù)器沒有公網(wǎng)ip,所以只有在學(xué)校局域網(wǎng)中才能訪問和使用服務(wù)器。寒假又剛好遇上新型流感病毒,不能去學(xué)校,但是工作不能落下。幸好回家前做了內(nèi)網(wǎng)映射,在家也可以使用實(shí)驗(yàn)室服務(wù)器,順便還解決了 Rstudio server的使用問題。

前提條件

  1. 有個(gè)有公網(wǎng)ip的服務(wù)器,國內(nèi)的例如阿里云、疼騰訊云等
  2. 如果要使用Rstudio server,則前提在本地服務(wù)器上已經(jīng)開啟了服務(wù),本文不講

使用到的軟件

frp https://github.com/fatedier/frp

模式如下圖,其中bind port 和 server port 相同,映射關(guān)系則為 local_ip:local_port <==> remote_ip:remote_port 。所有的端口都需要放入放行白名單。

1.jpg

通過 ssh 訪問學(xué)校/公司內(nèi)網(wǎng)機(jī)器

根據(jù)對(duì)應(yīng)的操作系統(tǒng)及架構(gòu),從releases 頁面下載最新版本的程序。

將 frps 及 frps.ini 放到具有公網(wǎng) IP 的機(jī)器上。

將 frpc 及 frpc.ini 放到處于內(nèi)網(wǎng)環(huán)境的機(jī)器上。

修改 frps.ini 文件,這里使用了最簡化的配置:

[common]
bind_port = 7000
  • 啟動(dòng) frps:
./frps -c ./frps.ini
  • 修改 frpc.ini 文件,假設(shè) frps 所在服務(wù)器的公網(wǎng) IP 為 x.x.x.x;
[common]
server_addr = x.x.x.x
server_port = 7000

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
  • 啟動(dòng) frpc:
./frpc -c ./frpc.ini

所有完成后,訪問內(nèi)網(wǎng)機(jī)器就可以通過各種軟件訪問 x.x.x.x:6000 來完成。

Rstudio server 端口轉(zhuǎn)發(fā)

Rstudio server 默認(rèn)服務(wù)端口為8787,開始以為端口類型監(jiān)聽類型為 http,因?yàn)槠綍r(shí)都是通過web在使用,后來發(fā)現(xiàn)也是tcp類型。所以和上面的方法一樣就行,直接在frpc.ini 文件中追加如下內(nèi)容

[Rstudio_server]
type = tcp
local_ip = 127.0.0.1
local_port = 8787
remote_port = 8787

開啟服務(wù)后,在瀏覽器中輸入 x.x.x.x:8787 就能打開Rstudio了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容