免費內網穿透工具;樹莓派利用網雲穿實現建站與維護,無需伺服器

jinli-發表於2020-12-04

pi

概述

如題,我們今天主要講利用網雲穿官方提供的內網穿透功能來外網訪問樹莓派上的網站,以及通過 ssh 進行遠端管理。

樹莓派

樹莓派是基於博通出品的 arm 架構處理器的微型電腦,價格低廉,目前最新版本為 4B,筆者使用的是 3B+,當時是二百元左右。

3B + 版本的配置如下:

  1. 主頻 1.4GHz,64 位 4 核的 ARM Cortex-A53 CPU
  2. 1GB LPDDR2 記憶體
  3. 2.4GHz 和 5GHz IEEE802.11.b/g/n/ac 無線網路卡,藍芽 4.2
  4. 4 個 USB2.0
  5. HDMI

這配置跑一個靜態網站是綽綽有餘了,畢竟阿里雲便宜的也就 1 核 1G 而已(主頻會稍高一些)。

建站

nginx

樹莓派官方提供了基於 Debian 的 Raspberry Pi OS,所以安裝軟體與大家熟悉的 Ubuntu 一樣,首先安裝 nginx 作為 web server:

sudo apt install nginx

安裝完啟動:

# 啟動nginx,沒有輸出就表示啟動成功了sudo nginx # 也可以主動檢視程式ps -ef | grep nginx

檢視程式輸出類似如下效果:

nginx

預設 nginx 是有配置檔案直接生效的,可以通過瀏覽器訪問樹莓派的區域網 ip,例如我的是 192.168.199.175,能看到這個頁面,就表示 web server 已經正常提供服務。

瀏覽器

如果需要訪問自己的網站檔案,改一下 nginx 的配置檔案就可以了。

網雲穿內網穿透

網站已經有了,接下來就是配置內網穿透進行外網訪問。

網雲穿官網註冊賬號 - 領取免費隧道,然後跳轉控制檯點選隧道管理、配置隧道資訊;穿透協議設定為 Http (s)。內網埠就是上面安裝的 nginx 的埠,預設是 80,可以通過修改配置檔案做調整,在這裡配置好即可

image-20200802160920441

確定之後控制檯會生成令牌,複製下來。

image-20200802161617631

接著安裝網雲穿客戶端,上面說了樹莓派是 arm 架構處理器,所以要下載 arm 版本的網雲穿軟體,登入控制檯很明顯的可以看到:

arm

複製好連結地址,執行如下命令:

# 使用wgetwget http://xiaomy.net/download/linux/wyc_linux_arm && chmod a+rwx wyc_linux_arm # 使用curl,二選一即可curl -O http://xiaomy.net/download/linux/wyc_linux_arm && chmod a+rwx wyc_linux_arm

執行完成後網雲穿的客戶端就安裝好了,接下來啟動軟體,執行如下命令:

./wyc_linux_arm -token 上面記錄的令牌

可以看到如下輸出:

image-20200802161927244

外網地址也有了,直接在瀏覽器訪問外網域名:

image-20200802164648416

就是這麼簡單,樹莓派裡面的網站就可以供外網訪問了。

運維

網站執行起來就完事了嗎?當然不是,後續可能還需要面臨網站更新、軟體更新、服務重啟等事務,這些事情只能通過遠端管理來操作,也就是這部分要講的內容:通過 ssh 進行樹莓派的運維管理

其實在建站的過程中我們已經在樹莓派上安裝了些軟體,這個過程就是 ssh 連線的操作,而現在要做的就是 ssh 訪問外網地址來連線樹莓派

同樣還是先開通隧道,這次配置穿透協議為 tcp,內網埠為 sshd 的埠,預設是 22 號,當然也可以通過配置檔案進行修改,保持一致就行

image-20200802180254686

確定之後,會生成如下資訊,記錄下外網埠、域名和令牌:

image-20200802165049924

並且再次啟動一個網雲穿客戶端,使用剛剛記錄的口令,這次會生成一個帶有埠的外網地址。

./wyc_linux_arm -token 上面記錄的令牌

最後可以在其他機器上通過下面的命令連線樹莓派:

ssh -p 外網埠 pi@域名

這就實現了對樹莓派進行遠端管理。

總結

通過網雲穿開通了兩條隧道,即實現了外網訪問的網站,也實現了遠端管理。

你可能會問,這麼做有必要嗎?還不如買一個雲伺服器呢!

我個人認為建站最大的成本在於雲伺服器,個人網站使用的 1 核 1G 外加 1Mbps 頻寬通常夠了。以阿里云為例,價格每年 500 左右。而這個配置的伺服器我之前啟動個 hadoop 都很費勁。

image-20200802171642110

而內網穿透明顯便宜很多,我們可以根據網站的情況選用更高的頻寬。並且可以繫結自己的域名,伺服器也不需要備案,外人看來和雲伺服器沒有區別。

最後,非常感謝網雲穿提供的免費方案。

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章