自架 n8n 之後,主機出什麼狀況都只寫在紀錄檔裡,沒有人會去看。
上一篇〈n8n MCP:讓 Claude 直接操作自架 n8n,先過自己的 Cloudflare 門禁〉讓 Claude 連上 n8n 之後,同一個早上我接著做通知,兩件事加起來大約 1.5 小時。
這篇寫家用伺服器通知怎麼分工,全部免費,家裡也沒有新開任何 port。最後還有一段插曲:安全公告通知第一次執行就推了 30 則,AI 卻跟我說只有 3 則。
通知管道選 Telegram
我問 Claude:「我想先打通一條 n8n 可以發送通知的管道,你覺得 Telegram Bot 是最好的方式嗎?要收錢嗎?」它比較了四種:
| 管道 | 費用 | 優點 | 缺點 |
|---|---|---|---|
| Telegram Bot | 免費 | n8n 內建;之後可以雙向,回訊息就能觸發流程 | 要另外裝 Telegram |
| Discord Webhook | 免費 | 只要一個網址,外洩影響最小 | 只能單向 |
| LINE 官方帳號 | 台灣免費方案每月 200 則,不能加購 | 大家都有裝 | 設定最麻煩,額度容易用完 |
| ntfy | 免費 | 不用帳號 | 小眾,主題名稱要取得夠亂 |
我本來就有裝 Telegram,所以選它。要注意的是 bot 的對話不是端對端加密,通知裡只寫「發生什麼事」,不放密碼和帳單細節。
建立 Telegram bot,送出第一則測試
- 在 Telegram 找官方的 BotFather,輸入
/newbot建立 bot,拿到 token;順手關掉「可被加入群組」 - 查自己的 chat ID:先傳一句話給 bot,再用瀏覽器開 Telegram 的
getUpdates網址 - token 由我自己貼進 n8n 的憑證,不經過聊天。Claude 的授權本來就沒有讀帳密的權限,也看不到它
- Claude 透過連接器直接在 n8n 建好「Telegram 通知測試」流程,我接上憑證、按執行

第一次開 getUpdates 時結果是空的,因為我只建了 bot,還沒傳訊息給它。傳一句「Hi」再重新整理,就有資料了。
另一個小狀況是 Claude 建好的流程沒有自動接上 Telegram 憑證,我在節點裡手動選好再執行。接著我回它:「手機有收到訊息了。」
共用失敗通知:任何流程失敗都推一則
管道通了之後,我跟 Claude 說:「我記得 n8n 可以設定一個流程,就是當某個自動流程出現失敗時,自動啟動一個流程。」我想做一個所有流程共用的。
n8n 把這種流程叫 Error Workflow,專門處理其他流程的失敗。Claude 建了「共用:失敗通知(Telegram)」。
這個流程用 Error Trigger 接收失敗事件,訊息裡有流程名稱、失敗的節點、台灣時間、錯誤訊息和執行紀錄連結。
錯誤訊息裡如果有 < > 這類符號,Telegram 解析格式時會出錯,通知反而發不出去,所以送出前要先把這些符號換掉(跳脫處理)。
測試方式是另建一個「故意失敗」的流程,接上錯誤處理後用正式模式執行,確認通知送到,測完封存。過程中學到三個限制:
- 錯誤處理流程必須先「發布」,其他流程才能指定它。我第一次設定時,n8n 直接報錯提醒
- 只有正式執行失敗才會觸發;在編輯畫面手動測試失敗,不會通知
- n8n 沒有「所有流程預設套用」的開關,每個新流程都要自己設定

誰來監看監看者?
到這裡為止,通知都是 n8n 自己發的。Claude 提醒我:如果停電、當機、斷網,或 n8n 整個掛掉,什麼通知都不會來,我反而會以為一切正常。
所以還需要一個家裡以外的東西,在伺服器沒報到時主動通知我。我回它:「一起把這些通知都做一做。」
五種家用伺服器通知
| 通知 | 誰負責 | 怎麼運作 |
|---|---|---|
| 伺服器心跳 | healthchecks.io(免費) | 伺服器每 10 分鐘去報到一次,順便確認 n8n 有回應;約 30 分鐘沒報到,由 healthchecks.io 發 Telegram |
| 每日備份結果 | 伺服器上的小腳本 | 包住原本的備份腳本,失敗才推 Telegram(附最後 10 行紀錄);成功只向 healthchecks.io 報到,不吵人 |
| 硬碟快滿 | 同一支腳本 | 每天備份後檢查,超過 85% 就提醒 |
| 登入通知 | 伺服器的登入流程 | 每次有人用 SSH 或網頁管理介面登入就推一則,附帳號和來源(家裡、經 Cloudflare、Tailscale、不明來源) |
| n8n 安全公告 | n8n 流程 | 每 3 小時查 GitHub 上 n8n 的安全公告,新的推 Telegram,用 n8n 的資料表記錄已通知過哪些,避免重複 |
「心跳」是伺服器定期報平安,哪天沒報到,就代表出事了。登入通知掛在 PAM 上。
PAM 是 Linux 登入時會經過的檢查關卡,可以在這裡掛上「登入就通知」。
設計上有幾個考量:
- 伺服器端的通知故意不經過 n8n。備份時 n8n 會短暫停止,n8n 壞了也不該連通知一起壞
- 心跳排程刻意避開整點和半點,不會撞到凌晨 4:30 備份時 n8n 那不到 1 秒的停止
- 登入通知設成「選用」,就算通知失敗也不會擋住登入。設定前先備份原檔,並保持一個已登入的視窗當逃生門,另開視窗測試能登入才算完成
- token 存在伺服器上只有管理員能讀的檔案裡,傳給發送程式時也不會出現在系統的程序清單中
「我不太清楚我的下一步是什麼了」
做伺服器端這幾個通知時,步驟一多,我跟 Claude 說:「我不太清楚我的下一步是什麼了。」
它改成一次只給一步,每一步附上「正常會看到什麼」,我回報結果後再給下一步,之後就很順。
中間還遇到一次指令錯誤,畫面出現 unexpected argument '-1'。
原因是 Ubuntu 26.04 換了新版的指令工具,tail -1 要寫成 tail -n 1;前面的設定其實都已經完成了。
安全公告第一次執行:手機收到 30 則,AI 說只有 3 則
安全公告是軟體官方發布的漏洞說明,會寫哪些版本受影響、哪一版修好。
第一次執行時資料表是空的,近 30 天的公告全都算「新的」,我的手機一次收到 30 則。
Claude 看了執行紀錄,告訴我:10/14 n8n 剛發布 3 個中度漏洞,我的版本在受影響範圍內,但都跟我沒用到的功能有關,風險低,列入待辦就好。
這個結論是錯的。準備寫這篇文章時,Claude 用 n8n 連接器再查一次執行紀錄,才發現推出去的是 30 則。
我回到原本的對話問「為什麼只算 3 則?」,它重新讀完整紀錄才說明:上次為了省資料量,每個節點只取了前 3 筆,就當成全部。
錯的是 AI 的判讀,通知系統沒有問題,30 則都送到我的手機了。逐則對照我的版本 2.42.7 之後,數字變成:
| 則數 | 說明 | |
|---|---|---|
| 影響 2.42.7 | 11(高 3、中 8) | 都在 2.43.5 或 2.44.1 修正,2.42 這條線沒有修正版 |
| 不影響 2.42.7 | 19 | 在 2.42.0~2.42.2 或 1.x 已經修好,或只影響更舊的版本 |
實際風險還是不高。多數公告的前提是 n8n 裡有其他權限較低的成員,或用了特定節點(Outlook、SharePoint、SeaTable、Quick Base 等),我都沒有。我目前只用了 6 種節點:排程、錯誤觸發、HTTP Request、Code、資料表、Telegram。
但我還是當天就升級了,原因有三個:
- 我自己的維運手冊寫著「有安全公告就當天更新」(見〈我不是資安本科,請 AI 幫家用伺服器做資安健檢,真的抓到漏洞〉),列入待辦等於違反自己定的規則
- 2.42 這條版本線已經不再修補,不升級的話,之後的漏洞也不會修
- 「這台只有我一個人」不完全成立。Claude 的 MCP 連線就等於一個能建立、執行流程的使用者,很多公告的前提正是這種權限,只要 token 外洩,這些漏洞就跟我有關
當天上午我就把 n8n 升級到 2.43.5,這是目前的穩定版(stable);2.44.1 是測試版(beta)。版本號中間那個數字變了(2.42 → 2.43),通常會改到資料庫結構,升級前要先備份。
有個巧合:和 MCP 授權有關的兩則高風險公告,在 2.42.1 就修好了,我 10/12 裝的 2.42.7 剛好躲過。
我也問了共用失敗通知會不會把密碼推到 Telegram,因為其中一則公告(GHSA-qmvv)就是錯誤資料裡會露出憑證。
它只影響 Git、MongoDB Atlas Vector Store、Google Cloud Storage 三種節點,我沒用到,升級後也修好了。
共用失敗通知本來就只送錯誤訊息的前 500 字,不送整份執行資料。後來又加了一道遮罩:送出前先把看起來像金鑰、密碼的字串換成 ***。之後如果用 HTTP Request 呼叫需要金鑰的服務,錯誤訊息裡就算帶到網址裡的金鑰,也不會原樣送到 Telegram。
安全公告流程也改了:一次最多抓 100 則,避免公告一多就漏掉較舊的;抓到之後先比對目前執行中的 n8n 版本,把新公告合併成一則總結,寫出影響目前版本的有幾則、建議升級到哪一版。都不影響的話,通知改成靜音。下次就不用再靠人(或 AI)一則一則對版本。
這次遇到的是:通知送到了,判讀卻錯了。Claude 只讀了一部分資料就下結論,語氣還很有把握。
手機上的通知數量跟 AI 的結論對不起來時,問一句「你是怎麼算的?」就找得到問題。
花費:0 元
全部免費:Telegram Bot 免費、healthchecks.io 用免費方案、n8n 是自架的。家裡也沒有新開任何對外的 port,所有通知都是伺服器主動往外送。
這是舊電腦家用伺服器系列的第 11 篇。
上一篇:〈n8n MCP:讓 Claude 直接操作自架 n8n,先過自己的 Cloudflare 門禁〉;
下一篇〈不是工程師,怎麼跟 AI 合作完成大專案:我架伺服器的做法〉已經上架,寫的是跟 AI 合作完成大專案的 5 個做法。






