用設定檔設定

這一頁的每一件事,主控台上都做得到。它是寫給打不開主控台的那些主機的。

有些主機上沒有瀏覽器可以連到自己的主控台:只有 SSH 的伺服器、放在內網深處的機器,或是安裝時就選了不開主控台的。這些主機的設定改在設定檔裡。

要改的有兩件:自動更新,以及攻擊通知要寄到哪裡。

先找到兩個路徑

後面每一條指令都要用到它們。

安裝方式設定檔執行檔
deb / rpm/etc/svrguard/svrguard.inisvrguard(在 PATH 上)
tar.gz/opt/svrguard/svrguard.ini/opt/svrguard/svrguard
Synology DSM/var/packages/SvrGuard/var/svrguard.ini/var/packages/SvrGuard/target/svrguard

底下的指令一律寫成 svrguard。如果它不在你的 PATH 上(tar.gz 與 Synology 都不在),換成上表那個完整路徑。

確認你找對了設定檔:

svrguard service -config /etc/svrguard/svrguard.ini status

它會真的去載入那個檔。路徑錯的話它會直接說載不進來,而不是靜靜地用別的設定。

自動更新

[update]
url = https://svrguard.ofuyuan.com/update/agent
auto = true               ; true 或 false

把 auto 明確寫成你要的值。不要依賴「預設是什麼」——不同的安裝方式寫進去的值不一樣,而你自己寫下的那個值,不管在哪台主機上都算數。

url 留空,就完全關掉更新檢查(連檢查都不做)。

手動更新一次

⚠️ Linux 與 Synology 是兩個不同的指令,不要互用。

平台指令
Linux(deb / rpm / tar.gz)svrguard update -config <設定檔>
Synology DSMsvrguard update-spk -config <設定檔>

Synology 上還有一個指令會印出上一次升級的完整日誌——升級失敗時,這是沒有主控台的主機唯一看得到原因的地方:

svrguard update-spk -log -config /var/packages/SvrGuard/var/svrguard.ini

攻擊通知

兩段,順序不能倒:先開通道,再填寄信資料。

[notify]
channels = email          ; 可填 syslog, email;留空 = 完全不通知
min_severity = medium     ; high | medium | low
max_per_pass = 30         ; 每則訊息最多列幾個封鎖
batch_hours = 24          ; 0 = 每次偵測都推;1-24 = 每 N 小時一份摘要
daily_summary_hour = 8    ; 每天幾點寄摘要;-1 = 不寄

[email]
smtp_host =
smtp_port = 587           ; 465 走 implicit TLS,其他走 STARTTLS
username =
password =
from =
to =                      ; 多個收件人用逗號分隔
⚠️ 填完密碼,緊接著收緊這個檔的權限。設定檔現在存著你的郵件密碼,而它預設是同一台主機上任何人都讀得到的。
sudo chmod 600 /etc/svrguard/svrguard.ini

三個會讓信寄不出去的地方

改完之後:讓它生效

改設定檔一定要重新啟動服務。SvrGuard 沒有「重新載入設定」這種功能,它只在啟動時讀一次設定檔。

平台指令
Synology DSM/usr/syno/bin/synopkg restart SvrGuard
systemdsystemctl restart SvrGuard
init.d/etc/init.d/SvrGuard restart

⚠️ 服務名稱是 SvrGuard,大小寫要一模一樣。打成 svrguard 會找不到。

然後確認它真的生效了

svrguard notify-test -config /etc/svrguard/svrguard.ini

收到那封測試信,就表示設定是通的。

⭐ 這個指令測的不是你剛剛編的那個檔,是程式真正在用的那一份設定——所以它同時回答了兩個問題:我填對了嗎,以及有沒有別的東西蓋掉我填的。

⚠️ 如果這台主機以前有人從主控台存過通知設定,那一份會蓋過設定檔。這種情況下你改設定檔不會有任何效果,而且沒有任何畫面會告訴你。notify-test 寄不出來、或寄到舊的收件人,就是這個原因——這時候要從主控台改,或請熟悉的人代為清掉。

自動更新沒有對應的檢查指令。它的有效值目前只在主控台上看得到,而這一頁的讀者正好打不開主控台。所以請把 auto 明確寫進設定檔——那是你在這台主機上能做到的最確定的一件事。

⭐ 從主控台改的設定不需要重新啟動,最慢下一輪偵測(預設 5 分鐘)就會生效。要重新啟動的只有直接編設定檔這一種。

還沒把這台主機接上帳號?

沒有瀏覽器的主機也可以用指令綁定,做法在開始使用那一頁。

用指令綁定 →