Synology NAS 上架設 WordPress 教學 7 – 設定外部存取 WordPress 網站

Synology-NAS-安裝-WordPress-WordPress首頁

本文為系列第七篇,介紹在不同網路架構的條件下,如何設定外部存取 WordPress 網站。我們需要設定路由器和 NAS,讓位於外部網路的使用者在瀏覽器中輸入網域後,能夠存取到前幾篇中架設完成的 WordPress 網站。根據不同的情況,我們會需要在路由器或 NAS 上設定 PPPoE(網路連接)、DDNS (動態域名)或 Port Forwarding(連接埠轉發)。

「Synology NAS 上架設 WordPress 教學」系列是我在摸索 WordPress 架站過程中的操作記錄與心得分享,一步步地介紹如何在你的 Synology NAS 中安裝世界知名的網站建置平台 WordPress。

Synology NAS 提供了一個便利而強大的方式來搭建自己的個人或小型網站,而 WordPress 則是一個廣泛使用的開源內容管理系統,它使得建立和管理網站變得非常簡單。不論是公司或個人,想要架設形象網站、部落格,甚或是電商平台營利賺錢,都能適用。本系列會帶你從前置工作、安裝相關套件、安裝 WordPress 程式、設定虛擬主機與 HTTPS 憑證等逐步完成。

  1. Synology NAS 上架設 WordPress 教學 1 – 前置工作
  2. Synology NAS 上架設 WordPress 教學 2 – 安裝 Web Station 與 Apache
  3. Synology NAS 上架設 WordPress 教學 3 – 安裝 MariaDB
  4. Synology NAS 上架設 WordPress 教學 4 – 安裝 PHP 與 phpMyAdmin
  5. Synology NAS 上架設 WordPress 教學 5 – 安裝 WordPress
  6. Synology NAS 上架設 WordPress 教學 6 – Web Station 設定虛擬主機
  7. Synology NAS 上架設 WordPress 教學 7 – 設定外部存取 WordPress 網站(本篇)

前言

如果你的 Synology NAS 擁有對外的固定 IP,而且你已在你的網域服務商後台系統中設定好網域與固定 IP 之間的 DNS 對應記錄,那麼只要跟著上一篇的步驟在 Web Station 中完成虛擬主機的設定,就可以躺平等流量進來了(誤)。

不過事情通常沒有那麼簡單。NAS 做為資料備援使用,一般不會開放讓外網直連 NAS,以避免被駭客發現並對其發動攻擊。我們會將 NAS 放置在路由器或防火牆後方,使得 NAS 可以透過路由器去存取外網資源,但又不會被外網發現。如果外網需要存取 NAS 資源時,必須得先經過路由器的把關後才可以通過,非經同意者一律阻擋。如此一來能降低被駭客攻擊的機會,當然也提高了正常使用者存取 NAS 資源時的困難度。

本篇目標

本系列面向想要在 Synology NAS 上面搭建小型網站的使用者。本篇文章為系列中的第七篇,介紹如何設定你的路由器和 Synology NAS,讓外網使用者可以存取到位在內網中 NAS 上的 WordPress 網站。

名詞解釋

PPPoE

PPPoE(Point-to-Point Protocol over Ethernet)是一種點對點的網路連接協議,主要功能是在本地區域網路(LAN)和網路服務提供商(ISP)之間建立連接,允許用戶通過乙太網(Ethernet)介面訪問網際網路。PPPoE 基於點對點協議(PPP),它提供多種身份驗證、連接、傳輸、加密和壓縮等可提高安全性和效率的功能,用於建立廣域網路(WAN)連接。

PPPoE 允許 ISP 在用戶端設備和 ISP 之間建立連接,需要使用者提供帳號名稱和密碼以進行驗證。一旦驗證成功,即可完成 PPPoE 連線建立,使用者也可以開始使用網路上的服務。一般而言,PPPoE 連線是使用動態 IP 分配,也就是說每次連接時都會被分配到不同的 IP 地址。有些 ISP 提供申請配發固定 IP 的服務,有些 ISP 則不支援長時間連線並採取定時斷線的措施。因此使用者申請 ISP 服務前需先查看各 ISP 的連線方案為何、如何申請,以及如何配置。

動態域名系統 DDNS

DDNS(Dynamic Domain Name System)是用於動態 IP 地址的域名解析服務。在網際網路中,每個設備都需要唯一的 IP 地址以便能夠相互通訊。以家庭或小公司來說,他們使用的上網方案可能會定期或在每次連線時分配不同的 IP,這種情況稱為動態 IP 或是浮動 IP。對於一般用戶而言,這種機制通常不會造成任何使用上的不便。然而對於想要架設網站或提供網路服務的用戶來說,每次 IP 更換就代表著需要通知服務使用者連到新的 IP,才能繼續使用原服務。

為此,DDNS 出現來解決動態 IP 所帶來的問題。它通過將指定的域名映射到服務的動態 IP 地址,使得無論 IP 如何變化,服務使用者仍然可以通過該域名訪問其服務,而不需擔心 IP 是否已更換。例如 Synology NAS 的 IP 可能會在每次重新連接網路時變更,如果我們想從外部訪問 NAS 服務、監控攝影機或 WordPress 網站,我們就需要知道它當前的 IP 地址。一旦使用 DDNS 服務,它會監測你的 IP 地址變化,並自動更新域名解析使得你可以始終使用固定域名去訪問你的 NAS。

Port Forwarding

Port Forwarding 名為連線埠轉發或是通訊埠轉發,是一種網路設定,通過路由器或防火牆來實現。它允許將來自外部網路設備的各式請求,通過特定的通訊埠(Port),轉發並訪問到內部網路中的特定設備或服務。常見的用途有遠端訪問設備(例如存取 NAS 服務)、Web 網站架設(伺服器位於內網)、遊戲伺服器(允許外部玩家訪問並一同遊玩)、監視系統(可從遠端透過 IPCam 監視家中或辦公室)和 VPN 等等。

它的好處是讓我們可以從外部去存取內網的服務,仍然可以保有某種程度的安全性,並且也可以避免暴露其他不開放的內網服務讓外部查覺。當然,這項便利的好處也意味著會有潛在的風險。在增修 Port Forwarding 規則時需要特別注意,不正確的轉發配置會導致嚴重的安全風險,反而暴露了不必要的內部網路給攻擊者,所以在設定時需要非常謹慎。

Wikipedia: Port Forwading

網路架構

本篇列舉幾個常見的架構供大家參考,可以大致分為下列幾種情況。

一、路由器對外使用固定 IP

如果連網的機器想要使用固定 IP(也稱為靜態 IP),必須要先向你的網路服務提供商(ISP)確認上網方案。你可以通過 ISP 的客服或網站查詢是否有提供固定 IP 服務,以及相關的價格和條件。每一家 ISP 提供的固定 IP 方案都有些差異,也有一些 ISP 並不提供家用固定 IP 方案,而僅提供企業使用。

以台灣中華電信為例,提供了「HiNet 光世代固定制」、「HiNet ADSL 固定制」以及「Hinet 非固定制固定 IP 申請」等三種方案。前兩個方案較適用於公司企業或高階玩家,會直接配發數個可用的固定 IP 設定在路由器或網路卡上;第三個方案則適合一般個人、家庭或小公司申請,可透過特別的 PPPoE 撥號設定來取得固定 IP。老喬的網路方案是「Hinet 非固定制」,可以在中華電信的服務中心選擇要使用「8 個浮動 IP」或是「7 個浮動 IP + 1 個固定 IP」的方案。

HiNet非固定固定IP申請

勾選並取得固定 IP 後,接下來要在路由器中設定 PPPoE 撥號,讓路由器取得固定 IP,並在路由器中設定 Port Forwarding,將外網對路由器發送的 HTTP / HTTPS 請求導向到內網 NAS 的 WordPress 網站。因為路由器在內外網之間當守門員,外網使用者除了 HTTP / HTTPS 服務外,無法接觸到 NAS 或內網的其他服務,也就避免了讓 NAS 的應用服務暴露到外網,從而降低了被攻擊的風險。

如果你的 ISP 有提供固定 IP 方案,或是你目前所使用的上網合約可以申請固定 IP 的話,我最推薦使用此方式讓 WordPress 網站對外服務。一方面有路由器在 NAS 前面遮風擋雨避免許多可能的網路攻擊,也擁有一定程度的安全性。另一方面固定 IP 不需要 DDNS 的額外設定,可以避免更新 IP 時可能會造成的短暫服務中斷。

二、NAS 對外使用固定 IP

本方案適用於可以取得固定 IP,但是卻沒有路由器設備的使用者。與前一項方案比起來,我並不推薦此方案。原因是此方案中 NAS 會直接暴露到外網,只能靠自身的防火牆保護,所以風險程度較高。以目前市售具有基礎功能的路由器或 WiFi AP 來說,價格都還不會到令人望之卻步的昂貴程度。如果一定得使用 NAS 來提供 WordPress 網站服務的話,最好是將路由器的投資一併列入架站規畫之中。

再次提醒大家,直接讓 NAS 對外具有高風險。除非是迫不得己,否則不建議此方案。記得一定要設定嚴格的防火牆規則,並且做好備份 321 法則,確保即使受到了攻擊或被入侵,也不會影響到你的資料和日常業務,或是可以將影響程度降到最低。

設定步驟只要在 NAS 設定 PPPoE 撥號的連線資訊,就可以讓 NAS 擁有對外的固定 IP。

三、路由器有對外浮動 IP

如果你的 ISP 沒有提供固定 IP 的上網方案、或是你已經用完所有配發的固定 IP、或是你只想使用浮動 IP 上網的話,那麼還是可以讓外網使用者透過域名連到你的 WordPress 網站。此方案與「路由器對外固定 IP」的唯一差別是需要額外在路由器中設定 DDNS 資訊。

首先,以安全程度來說,它與第一項相同,兩者同樣透過路由器來做請求轉發和把關。再來,以使用者體驗來說,它比第一項差一些,因為 IP 更新時有機會造成短時間的服務中斷。最後,你可能會需要申請 DDNS 服務提供商的帳號,甚至需要付費才能使用品質較好較穩定的服務。綜合上述來說,此方案的推薦程度比第一項低,但它仍是不錯的選擇。

四、NAS 對外使用浮動 IP

本方案適用於在沒有路由器且沒有固定 IP 的場景,方法為在 NAS 設定 PPPoE 撥號,接著在 NAS 設定 DDNS 讓 IP 更新時可以修改域名所對應到的 IP。

它與第二項的「NAS 對外固定 IP」一樣都具有高風險,兩者只有固定 IP 與浮動 IP 的差別而已,對於攻擊者來說實際上並無不同。基於安全性上的考量,不建議採用此方案。

方案比較表

本表格比較了上述四種方案所需要設定的資訊,以及推薦程度。接下來會針對各項設定做詳盡的介紹。

PPPoE動態域名連線埠轉發推薦程度
路由器對外固定 IP路由器撥號V★★★★★
NAS 對外固定 IPNAS 撥號
路由器對外浮動 IP路由器撥號路由器設定V★★★★
NAS 對外浮動 IPNAS 撥號NAS 設定

Synology NAS 設定 PPPoE

以中華電信來說,PPPoE 撥號可以取得固定 IP 和浮動 IP,只要在使用者帳號中使用不同的 domain name 即可。所以無論 NAS 對外想要取得固定 IP 或是浮動 IP,都可以參考本章節的介紹。

首先到 Synology NAS 的控制台,選擇左方導覽列中的「網路」,然後進入右方的「網路介面」分頁,並選取下方的「PPPoE」項目後,點擊上方的「編輯」按鈕。

Synology NAS 設定 PPPoE 1 設定介面

接著在開啟的「編輯」視窗中,輸入下列資料:

  • 區域網路:選擇 NAS 使用哪一個網路連到外網。有些 NAS 備有數個網路孔,我們會使用其中一個網路孔連接到路由器,並通過它連接 NAS 與外網
  • 使用者帳號:請輸入 ISP 所提供的 PPPoE 帳號
  • 密碼:請輸入 ISP 所提供的 PPPoE 密碼
  • 其他:不需要修改

完成後點選右下方的「確定」按鈕。

Synology NAS 設定 PPPoE 2 設定連線資訊

完成設定並連線後,就可以看到 PPPoE 已經成功連線並取得 IP 了。如果你設定的是固定 IP 帳號的話,那麼此處所顯示的對外 IP 就會和 ISP 配發給你的固定 IP 一致。

Synology NAS 設定 PPPoE 3 連線成功

Synology NAS 設定 DDNS

Synology NAS 提供了 DDNS 更新動態 IP 的內建服務,讓我們可以很輕鬆的使用浮動 IP 就能夠對外服務。開啟 Synology NAS 的控制台,點選左方導覽列的「外部存取」後,進入右方「DDNS」分頁,並點擊「新增」按鈕。

Synology NAS 設定 DDNS 1 設定介面

在「新增 DDNS」視窗中,首先要設定「服務供應商」。此處點選下拉式選單的 ▼ 符號。

Synology NAS 設定 DDNS 2 新增 DDNS 視窗

下拉式選單中列出了目前 Synology NAS DSM 目前支援的所有 DDNS 服務供應商,其中有許多知名且老牌的公司,例如 DYNDNSFreeDNSNo-IP.com 等等。如果你的 DDNS 服務供應商有列在上面的話,可以直接選取它並完成後續的步驟。如果你沒有任何使用中的 DDNS 服務供應商的話,可以點選「Synology」來使用 Synology 提供的貼心服務。本篇採用此項目進行後續教學步驟。

Synology NAS 設定 DDNS 3 選擇供應商

選好「Synology」之後,接著要輸入下列內容:

  • 「主機名稱」前方文字欄位:輸入你想使用的域名。如果該域名已經被佔用的話,就必須要換個新名字。
  • 「主機名稱」後方下拉式選單:可以選擇你想使用的後綴域名。
  • Synology 帳戶:你的 Synology 帳戶資訊。如果你沒有的話,建議申請一個新的 Synology 帳戶
  • 外部位址:選擇你用來進行 PPPoE 撥號的網路介面
Synology NAS 設定 DDNS 4 設定主機名稱

完成所有設定後,可以點選「狀態」右方的「測試連線」按鈕,它會需要花一點時間執行測試。一旦測試成功之後,狀態就會更新為「正常」。確認一切無誤後,就可以點選右下方的「確定」按鈕。

Synology NAS 設定 DDNS 5 測試連線

此時已經可以看到下方的列表中已經多出剛剛新增的 Synology DDNS 設定了,狀態是「正常」,並且「外部位址」中的對外 IP 與 PPPoE 所取得的 IP 一致。如果你想要新增其他的 DDNS 設定,讓 IP 更新時可以同時更新數個域名的話,可以點選「新增」按鈕並重複本章節的步驟,完成其他 DDNS 服務供應商的建立PP〔P。

Synology NAS 設定 DDNS 6 服務正常啟動

登入 WiFi AP 或路由器

要在路由器中配置 PPPoE、DDNS 和連線埠轉發,需要登入路由器管理介面並找到相應的項目設定。不同路由器管理介面的進入與設定方式都有所不同,但一般而言,需要輸入的資訊都大同小異。

本篇教學使用 ASUS 華碩路由器 RT-AC58U 做為範例。首先開啟路由器管理介面,並輸入帳號密碼登入。

Asus RT-AC58U 登入畫面

路由器設定 PPPoE

在設定好 PPPoE 並撥號連網後,路由器就會直接面對外網的連線請求,當然也包括惡擊攻擊。因此建議將路由器管理介面設定成只能由內網才能開啟和登入,並且也將連線埠更改為其他號碼(非預設的 80 和 443)。一方面可以避免有心人士從外網就可以很輕易地開啟路由器管理介面,另一方面我們也必須要將 80 和 443 連線埠留給 Port Forwarding 轉發給 WordPress 網站使用。

首先點選管理介面左方導覽列中的「外路網路(WAN)」,並在「網際網路連線」分頁中,點選「基本設定」區域中「WAN 連線類型」右方的下拉式選單,選擇「PPPoE」。接著在下方的「帳號設定」區域中,輸入下列資料:

  • PPP 用戶名稱:請輸入 ISP 所提供的 PPPoE 帳號
  • 密碼:請輸入 ISP 所提供的 PPPoE 密碼
  • 網路服務名稱:不用特別設定
  • 其他:不需要修改
Asus RT-AC58U 設定 PPPoE 1 介面

完成輸入後點選最下方的「套用本頁面設定」按鈕。

Asus RT-AC58U 設定 PPPoE 2 確定

路由器設定 DDNS

點選管理介面左方導覽列中的「外路網路(WAN)」,並在「DDNS」分頁中勾選「啟用 DDNS Client」欄位中的「是」。

如同 Synology NAS 的 DDNS 設定一樣,華碩路由器同樣支援多種不同的 DDNS 服務供應商。此處的「伺服器」我選擇的是華碩自家提供的 DDNS 服務「WWW.ASUS.COM」伺服器。如果你已經有其他 DDNS 服務供應商的帳號,並且也在支援列表上的話,可以直接選取並完成相關設定。「主機名稱」請輸入你想使用的域名。如果該域名已經被佔用的話,就必須要換個新名字直到沒有人使用。

Asus RT-AC58U 設定 DDNS 1 介面

「伺服器」的下拉式選單列出所有支援的 DDNS 服務供應商,像是 DYNDNSNo-IP 等等。

Asus RT-AC58U 設定 DDNS 2 DDNS列表

完成上述設定並點選「套用本頁面設定」按鈕後,會跳出「使用條款」的視窗。此處要先勾選「我已滿16歲」後,再點擊「同意」按鈕。

Asus RT-AC58U 設定 DDNS 3 條款同意

一旦註冊完成,就會跳出通知訊息,告知 IP 為 192.168.x.x 的路由器已設定好 DDNS 資訊了。點選「確定」按鈕關閉通知視窗。

Asus RT-AC58U 設定 DDNS 4 註冊成功 Popup

回到管理介面中可以看到多出了黃色的訊息文字。最下方也可以看到我們的主機名稱為 xxx.asuscomm.com。

Asus RT-AC58U 設定 DDNS 5 設定完成與說明

如果你想要確認 DDNS 是否已成功設定,或是在使用的過程中遇到域名解析錯誤的話,可以用瀏覽器開啟華碩的域名查找系統去檢查你的域名是否有被正確地對應到 PPPoE 所取得的 IP 上。

Asus RT-AC58U 設定 DDNS 6 NSLOOKUP檢查

最後在路由器管理介面的首頁,可以看到 PPPoE 所取得的 IP,以及 DDNS 的設定資訊。

Asus-RT-AC58U-設定完成

路由器設定 Port Forwarding

在設定 Port Forwarding 之前,有兩件事需要注意:

  1. 由於設定時需要指明 NAS 的內網 IP,讓路由器知道外網請求該導向何處。因此建議 NAS 在路由器的網域中分配好固定 IP,而不要使用 DHCP 的方式向路由器取得浮動 IP。
  2. 如前面章節所述,路由器管理介面本身的連線埠要避免使用 80 和 443。一來是為了安全性,二來也是要留給 Port Forwarding 使用。

點選管理介面左方導覽列中的「外路網路(WAN)」,並在「虛擬伺服器」分頁中勾選「開啟虛擬伺服器」欄位中的「是」。接著在下方的「通訊埠轉發清單」區域中,分別新增 HTTP 和 HTTPS 的規則(如果你的路由器管理介面支援的話,也可以合併設定)。底下以 HTTP 為範例:

  • 服務名稱:名稱可任意輸入。為了方便識別,此處輸入 HTTP
  • Source Target:留空白
  • 通訊埠範圍:HTTP 填 80、HTTPS 填 443
  • 本地 IP:NAS 的內網 IP
  • 本地通訊埠:可以不填,或是填 Web Station 監聽的埠號(通常一樣是 80 和 443)
  • 通訊協定:選擇 TCP

輸入完成後點擊 ㊉ 圖案完成新增。

Asus RT-AC58U 設定 Port Forwarding

在完成上述設定後,外網的 HTTP 和 HTTPS 請求就會被轉發到內網的 NAS 上了。你可以在瀏覽器中輸入路由器的域名或 IP,檢查路由器是否將請求成功轉發。

結語

本篇文章介紹如何依據不同的網路架構,在路由器或 NAS 上設定 PPPoE、DDNS 或 Port Forwarding,使得來自外網的使用者可以存取到內網 NAS 上的 WordPress 網站。由於不同場合與需求會產生不一樣的網路架構,本篇僅能介紹一般較常見的幾種方案,無法完全符合每種複雜的情況。如果有任何問題,歡迎大家留言討論。

接下來我們會介紹如何在 Synology NAS 上申請 HTTPS 憑證,和一些需要注意的事項與小技巧。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

12 + twelve =

返回頂端