Nas WordPress 連接設定與安全問題

Synology. Nas WordPress 在外無法連接閱讀

在 Synology NAS 上架設 WordPress,卻無法從外網(外部網路)連接,通常是由於路由器的通訊埠轉發(Port Forwarding)DDNS 設定WordPress 內部的網址設定不一致所導致的。

請依照以下四個核心步驟進行檢查與修正:

1. 確保 DDNS 設定正常

首先,確保你的 NAS 已經有一個對外的「門牌號碼」。

  • 路徑: 控制台 > 外部存取 > DDNS。
  • 檢查狀態是否顯示為 「正常」
  • 注意: 如果你使用的是 QuickConnect,它雖然可以存取 DSM 管理介面,但不支援直接用來開啟 WordPress 網頁。你必須使用 DDNS(例如:xxxx.synology.me)。

2. 設定路由器通訊埠轉發 (Port Forwarding)

這是最常見的原因。外網的請求到了你的路由器,但路由器不知道要把請求交給 NAS。

  • 你需要進入你的路由器設定介面(通常是 192.168.1.1),找到「虛擬伺服器」或「通訊埠轉發」。
  • 手動新增規則:
  • HTTP: 外部通訊埠 80 → 內部 IP (NAS 的本地 IP) → 內部通訊埠 80。
  • HTTPS: 外部通訊埠 443 → 內部 IP (NAS 的本地 IP) → 內部通訊埠 443。

提示: 許多人只開了 5000/5001 (DSM),忘記網頁服務需要的是 80/443。

3. 修改 WordPress 內部的網址設定

如果你在內網安裝 WordPress 時使用的是內部 IP(如 192.168.x.x),WordPress 會把這個 IP 寫死在資料庫裡。當你從外網連接時,網頁會試圖加載內部的圖片或連結,導致連線失敗。

  • 方法 A (如果你還能進去後台) 登入 WordPress 後台 > 設定 > 一般。將「WordPress 位址 (URL)」與「網站位址 (URL)」都改為你的 DDNS 網址(例如:http://xxxx.synology.me/wordpress)。
  • 方法 B (如果你進不去後台):
  1. 進入 Synology 的 File Station。
  2. 找到 web/wordpress/wp-config.php 檔案,下載並用記事本打開。
  3. 在 /* That’s all, stop editing! Happy publishing. */ 這一行上方加入以下代碼:
    define(‘WP_HOME’,’http://你的DDNS網址/wordpress’);
    define(‘WP_SITEURL’,’http://你的DDNS網址/wordpress’);

4. Web Station 設定 (DSM 7.0+ 適用)

確保 Web Station 有正確將流量導向 WordPress 服務。

  • 打開 Web Station > 網頁服務入口
  • 確認是否有 WordPress 的項目。
  • 如果想讓網址更好看(例如直接用 http://blog.xxxx.synology.me 進入),可以點選「新增」>「網頁服務入口」,選擇「基於名稱」並輸入你的子網域。
  • 常見疑難排解
  • 防火牆檢查: 檢查 NAS 控制台 > 安全性 > 防火牆,確保沒有阻擋 80/443 通訊埠。
  • 500 錯誤: 如果出現 500 錯誤,通常是 PHP 延伸模組未開啟。請到 Web Station > 指令碼語言設定 > PHP 編輯對應的版本,將「擴充模組」全部勾選試試。
  • 您目前是否已經申請了 DDNS(像是 xxxx.synology.me)?或是您在嘗試連線時看到了特定的錯誤訊息(如「連線逾時」或「404」)? 告訴我更多細節,我可以幫您更精準地定位問題。

有xxx.synology .me 了 這是否對 Synology nas 有安全威脅?

使用 xxx.synology.me 本身就像是給你的房子掛上一個「門牌號碼」。這確實會增加被發現的機會,但只要「門窗鎖好」,並不會直接構成威脅。

當你開啟了 DDNS 並做了通訊埠轉發(Port Forwarding),全世界的自動掃描機器人(Botnets)都能透過這個網址找到你的 NAS。如果你的防護不夠,這就像是門沒鎖好。

以下是針對 DDNS 存取環境的必做安全加固建議

1. 關閉預設管理連接埠 (最重要)

黑客最喜歡掃描預設的 5000 (HTTP) 和 5001 (HTTPS)。

  • 做法: 到 控制台 > 登入方式,將 DSM 的連接埠改為隨機數字(例如 12345 或 38942)。
  • 效果: 機器人掃描 5001 沒反應,大多會直接放棄,增加攻擊門檻。

2. 開啟「兩步驟驗證」(2FA)

即使你的密碼被猜到或流出,沒有你手機上的 6 位數動態驗證碼,黑客也進不去。

  • 路徑: 點擊右上角個人圖示 > 個人設定 > 安全性 > 雙重驗證。

3. 設定「自動封鎖」功能

這是對抗「暴力破解」(一直猜密碼)的強力防線。

  • 路徑: 控制台 > 安全性 > 防護 > 自動封鎖。
  • 建議設定: 5 分鐘內嘗試 3 次失敗,即永久封鎖該 IP。
  • 進階: 同時開啟「帳號保護」,針對登入失敗次數過多的帳號暫時鎖定。

4. 僅開放必要的通訊埠

不要為了方便而開啟「DMZ」或「UPnP」(這會打開所有門)。

  • 如果你只需要外網看 WordPress,路由器只需要轉發 80 和 443
  • 如果你不需要從外網管理 NAS,不要轉發 DSM 的管理連接埠(5001 或你改過的那個)。

5. 使用 HTTPS 與憑證 (SSL)

確保你的 WordPress 與 NAS 連結是加密的。

  • 路徑: 控制台 > 安全性 > 憑證。
  • Let’s Encrypt 申請免費憑證。這樣你在外網輸入網址時,瀏覽器才會顯示綠色鎖頭,資料傳輸才不會被中途截取。

總結:威脅程度評估

存取方式安全程度威脅描述
純內網 (不開 DDNS)🛡️🛡️🛡️🛡️🛡️極安全,但外面連不進來。
DDNS + 雙重驗證 + 自訂 Port🛡️🛡️🛡️🛡️推薦平衡點,足夠應付 99% 的隨機攻擊。
DDNS + 預設 Port (5001) + 弱密碼⚠️極度危險,幾天內就會被嘗試暴力破門。

需要我幫您檢查如何設定更安全的「自動封鎖」規則,或是引導您申請 Let’s Encrypt 憑證嗎?

申請 Let’s Encrypt 憑證

申請 Let’s Encrypt 免費憑證是保護 Synology NAS 最重要的一步。它能將你的連線從不安全的 http 升級為加密的 https,不僅能消除瀏覽器的「不安全」警告,還能防止密碼在傳輸過程中被竊聽。

以下是詳細的申請步驟:

第一階段:前置檢查

在申請之前,請務必確認以下兩點,否則申請會失敗:

  1. DDNS 已就緒: 你必須已經設定好 xxx.synology.me。
  2. 開啟 Port 80: Let’s Encrypt 的驗證伺服器會透過 Port 80 連線到你的 NAS。請確保你的路由器已將 Port 80 轉發(Forwarding)至 NAS 的內部 IP。
  • 註:申請成功後,可以關閉 Port 80,但建議保留,以便未來自動續期。

第二階段:申請憑證步驟

  1. 進入 DSM 「控制台」 > 「安全性」 > 「憑證」
  2. 點選 「新增」 > 選擇 「新增憑證」 > 點選 「下一步」
  3. 選擇 「從 Let’s Encrypt 取得憑證」,並勾選 「設為預設憑證」
  4. 填寫以下資訊:
  • 網域名稱: 輸入你的 DDNS 網址(例如:xxx.synology.me)。
  • 電子郵件: 輸入你的 Email(憑證到期前會收到通知,雖然 Synology 會自動續期)。
  • 主體別名: 若你有其他子網域(如 blog.xxx.synology.me)可填入,若無則留空。
  1. 點選 「套用」。系統會與 Let’s Encrypt 通訊,成功後狀態會顯示為綠色的 「正常」

第三階段:將憑證指定給 WordPress

拿到憑證後,你必須告訴 NAS「哪些服務要使用這個憑證」:

  1. 在同一個 「憑證」 頁面中,點選上方按鈕 「設定」
  2. 在彈出的視窗中,你會看到系統內所有的服務列表(如系統預設、Web Station、WordPress 等)。
  3. 將這些服務右側的憑證欄位,全部下拉切換成你剛剛申請好的 xxx.synology.me
  4. 點選 「確定」

進階小提醒:強制使用 HTTPS

為了確保外網連線 WordPress 時絕對安全,建議開啟強制轉向:

  • 路徑: 控制台 > 登入方式 > DSM。
  • 勾選 「將 HTTP 連線自動重新導向至 HTTPS」

常見失敗原因

  • Port 80 沒開: 這是 90% 申請失敗的原因。請暫時關閉 NAS 防火牆或確認路由器規則。
  • 頻率限制: 如果短時間內重複申請失敗多次,Let’s Encrypt 會暫時封鎖該域名一小時。

設定好憑證後,您可以在瀏覽器輸入 https://xxx.synology.me/wordpress 測試看看。需要我接著教您如何將 WordPress 裡的網址也改成 https 格式嗎?

將 WordPress 裡的網址也改成 https 格式

既然憑證已經申請好,這最後一步非常關鍵。如果你不修改 WordPress 內部的網址設定,雖然你用了 https 連進去,但網頁內部的圖片和 CSS 樣式可能還是會走 http,這會導致瀏覽器出現「混合內容(Mixed Content)」警告,網頁排版甚至會亂掉。

請按照以下步驟完成最後的轉換:

第一步:修改 WordPress 後台網址

  1. 登入你的 WordPress 後台。
  2. 進入 「設定 (Settings)」 > 「一般 (General)」
  3. 找到以下兩個欄位:
  • WordPress 位址 (URL)
  • 網站位址 (URL)
  1. 將原本的 http://xxx.synology.me/wordpress 全部改為 https://xxx.synology.me/wordpress (多加一個 s)。
  2. 捲動到下方點擊 「儲存設定」
  • 注意:儲存後系統會自動將你登出,這是正常的,請用新的 https 網址重新登入即可。

第二步:處理舊有的「硬編碼」連結 (建議操作)

雖然改了後台設定,但你之前寫的文章裡,圖片路徑可能還是舊的 http。我們可以使用外掛程式一次性掃描並取代它們:

  1. 在 WordPress 安裝並啟用外掛:「Better Search Replace」
  2. 進入 「工具」 > 「Better Search Replace」
  3. Search for 輸入:http://xxx.synology.me
  4. Replace with 輸入:https://xxx.synology.me
  5. Select tables 中選取所有的資料表(Ctrl+A 或 Cmd+A)。
  6. 先勾選最下方的 「Run as dry run? (測試執行)」 看看會改動多少地方。
  7. 確認沒問題後,取消勾選 「Run as dry run?」 並正式執行。

第三步:在 Synology Web Station 強制 HSTS (選填)

為了讓安全性更上一層樓,你可以讓 NAS 告訴瀏覽器「永遠只准用加密連線」:

  1. 打開 NAS 的 Web Station
  2. 進入 「網頁服務入口」,選擇你的 WordPress 項目並點擊 「編輯」
  3. 勾選 「HSTS」 (HTTP Strict Transport Security)。
  4. 儲存設定。

檢查成果

現在,請關閉手機的 Wi-Fi(切換到 5G/4G 外網),在瀏覽器輸入: https://xxx.synology.me/wordpress

  • 看到網址列左側出現一個 「灰色小鎖頭」 嗎?
  • 網頁載入是否正常,沒有排版崩壞或圖片消失?

恭喜!你已經成功架設了一個安全且可以從外網存取的 WordPress。

接下來,您是否想設定自動備份功能,以防萬一 NAS 硬碟發生故障或 WordPress 更新出錯?

發佈留言

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

返回頂端