生活随笔
收集整理的這篇文章主要介紹了
阿里云服务器+N2N搭建远程办公环境
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄
- 阿里云服務器+N2N搭建遠程辦公環境
- 修改記錄
- 緣起
- 準備
- 配置服務端
- 配置Ubuntu客戶端
- 配置Windows客戶端
- 驗證
- 參考文獻
阿里云服務器+N2N搭建遠程辦公環境
修改記錄
緣起
最近上海的疫情突然變得嚴重起來,實際上的全城封閉導致很多人需要在家辦公,我最近也加入了遠程辦公的隊伍。公司有兩臺電腦,一臺windows 10(辦公電腦),一臺Ubuntu 16.04(編譯服務器),在家使用Ubuntu 20.04辦公。家里移動的寬帶,屬于比較爛的一種。
開始嘗試了向日葵和anydesk,免費,傻瓜,短時間內用用還可以,但是長時間用起來,實在是太難受了。 那種生硬的感覺讓我渾身不舒服。還是需要嘗試使用組網的工具才可以。
同事推薦了ZeroTier, 他們用的效果很好(好像都是電信的寬帶),奈何我家的移動寬帶,用ZeroTier的時候ping 延時600ms+, 丟包嚴重,SSH連接以后卡半天才動兩下。
后面想起來N2N,打算嘗試一下。折騰了一下,效果挺好,記錄一下整個過程。
#mermaid-svg-6ivunz5FHkVnQe2M {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-6ivunz5FHkVnQe2M .error-icon{fill:#552222;}#mermaid-svg-6ivunz5FHkVnQe2M .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-6ivunz5FHkVnQe2M .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-6ivunz5FHkVnQe2M .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-6ivunz5FHkVnQe2M .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-6ivunz5FHkVnQe2M .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-6ivunz5FHkVnQe2M .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-6ivunz5FHkVnQe2M .marker{fill:#333333;stroke:#333333;}#mermaid-svg-6ivunz5FHkVnQe2M .marker.cross{stroke:#333333;}#mermaid-svg-6ivunz5FHkVnQe2M svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-6ivunz5FHkVnQe2M .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-6ivunz5FHkVnQe2M .cluster-label text{fill:#333;}#mermaid-svg-6ivunz5FHkVnQe2M .cluster-label span{color:#333;}#mermaid-svg-6ivunz5FHkVnQe2M .label text,#mermaid-svg-6ivunz5FHkVnQe2M span{fill:#333;color:#333;}#mermaid-svg-6ivunz5FHkVnQe2M .node rect,#mermaid-svg-6ivunz5FHkVnQe2M .node circle,#mermaid-svg-6ivunz5FHkVnQe2M .node ellipse,#mermaid-svg-6ivunz5FHkVnQe2M .node polygon,#mermaid-svg-6ivunz5FHkVnQe2M .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-6ivunz5FHkVnQe2M .node .label{text-align:center;}#mermaid-svg-6ivunz5FHkVnQe2M .node.clickable{cursor:pointer;}#mermaid-svg-6ivunz5FHkVnQe2M .arrowheadPath{fill:#333333;}#mermaid-svg-6ivunz5FHkVnQe2M .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-6ivunz5FHkVnQe2M .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-6ivunz5FHkVnQe2M .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-6ivunz5FHkVnQe2M .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-6ivunz5FHkVnQe2M .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-6ivunz5FHkVnQe2M .cluster text{fill:#333;}#mermaid-svg-6ivunz5FHkVnQe2M .cluster span{color:#333;}#mermaid-svg-6ivunz5FHkVnQe2M div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-6ivunz5FHkVnQe2M :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}
Windows-192.168.3.10-remoteUbuntu-192.168.3.11-remoteUbuntu-192.168.3.12-local
準備
公網IP及該IP能訪問的服務器。 我們家是移動的網絡,申請不到公網IP,沒辦法。恰好阿里云有免費試用一個月的,先用過再說。理論上,只要有公網IP,將服務器映射到官網,是一樣的效果。準備不同系統的軟件。N2N是github上開源的工具,需要在自己的系統上編譯好才可以。N2N有不同的版本,可以根據自己的需要選擇。我這里用的是N2N V2版本。
git clone https://github.com/ntop/n2n.git -b
2.8-stable
sudo apt-get install cmake build-essential libssl-dev
cd n2n
./autogen.sh
./configure
make && make install
- Windows 系統安裝
windows系統上也可以下載github源碼自行編譯,但是我windows上沒有裝cmake等工具,直接選擇了使用別人編譯好的版本。下載解壓后,里面是編譯好的x86/x64版本的可執行程序。
在windows上,還需要下載一個 N2N GUI,可以方便地進行管理。我使用的n2ngui是后者,可以選擇使用V1還是V2版本的N2N,還可以替換自定義的N2N程序。下載后解壓,安裝即可。之后會發現網絡適配器中多了一個虛擬適配器,這個后面需要用到。
去下載 n2nedgegui 或者 n2nguien: http://www.vpnhosting.cz/n2nguien.exe. (都是vpnhosting.cz 開發, 前者使用SF托管的, 經測試是n2n_v2的, 使用v1版supernode不能通, 后者可以在Advanced里面設置為n2n_v1從而解決問題,如果用n2n_v1請使用后者)
一些參數(都是假的,按照自己的實際需求填寫)
serverip=1.1.1.1
serverport=8888
groupid=mmmm
password=12345
配置服務端
ssh登錄阿里云服務器,安裝好n2n后,執行如下命令開啟服務:
nohup supernode -l
$serverport -v
&
另外,阿里云的服務器,需要設置安全策略,放行$serverport端口的數據才可以。
配置Ubuntu客戶端
以root用戶執行如下命令:
edge -c
$groupid -k
$password -a
192.168.3.12 -v -l
$serverip:$serverport
其中192.168.3.12就是本機地址,后續創建完成以后就可以通過這個地址進行訪問。我將本地的Ubuntu地址設置為192.168.3.12, 遠端的Ubuntu地址設置為192.168.3.11.
配置Windows客戶端
打開已經安裝好的n2n gui. 在advanced界面選擇V2版本。并填好對應的信息。
填寫完成以后,重啟n2n gui,理論上就可以鏈接成功了,需要檢查的話,請參考中的描述進行check。
n2n gui中自帶的edge可能比較老,有可能無法進行連接,可以找到n2n gui的安裝位置,將其中的edge、edge2(分別對應V1/V2)替換為自己編譯的版本,或者前面下載的版本,替換完成以后,重啟n2n gui即可。
驗證
這樣,192.168.3.10、192.168.3.11、192.168.3.12就可以互相訪問了,不論通過SSH、mstsc還是RDP都可以。ping 的時延大概在幾十毫秒,對遠程辦公來說,足夠了。
supernode和edge有不同的配置參數,如果有興趣,可以細致進行學習。
參考文獻
總結
以上是生活随笔為你收集整理的阿里云服务器+N2N搭建远程办公环境的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。