管理 Azure 本地的 syslog 轉送
本文內容
適用於:Azure Local 2311.2 和更新版本
本文說明如何使用 Azure Local 的 syslog 通訊協議,設定要轉送至客戶管理的安全性資訊和事件管理 (SIEM) 系統的安全性事件。
使用 syslog 轉送與安全性監視解決方案整合,並擷取相關的安全性事件記錄檔,以將它們儲存在您自己的 SIEM 平臺上。 如需此版本中安全性功能的詳細資訊,請參閱 Azure 本機 安全性功能。
根據預設,系統會在每個 Azure 本機主機上部署 Syslog 轉送代理程式,準備好進行設定。 每個代理程式都會以 syslog 格式將安全性事件從主機轉送至客戶設定的 syslog 伺服器。
Syslog 轉送代理程式彼此獨立運作,但可在任一主機上一起管理。 在任何主機上搭配系統管理許可權使用PowerShell Cmdlet來控制所有轉寄站代理程序的行為。
Azure Local 中的 syslog 轉寄站支援下列設定:
使用 TCP、相互驗證(用戶端和伺服器)和 TLS 加密的 Syslog 轉送: 在此設定中,syslog 伺服器和 syslog 用戶端都會透過憑證驗證彼此的身分識別。 訊息會透過TLS加密通道傳送。 如需詳細資訊,請參閱 使用 TCP、相互驗證(用戶端和伺服器)和 TLS 加密 的 Syslog 轉送。
使用 TCP、伺服器驗證和 TLS 加密的 Syslog 轉送: 在此設定中,syslog 用戶端會透過憑證驗證 syslog 伺服器的身分識別。 訊息會透過TLS加密通道傳送。 如需詳細資訊,請參閱 使用 TCP、伺服器驗證和 TLS 加密 轉送 Syslog。
使用 TCP 和無加密的 Syslog 轉送: 在此設定中,不會驗證 syslog 用戶端和 syslog 伺服器身分識別。 訊息會透過 TCP 以純文字傳送。 如需詳細資訊,請參閱 使用 TCP 進行 Syslog 轉送,而不使用加密 。
具有UDP且沒有加密的Syslog: 在此設定中,不會驗證 syslog 用戶端和 syslog 伺服器身分識別。 訊息會透過UDP以純文字傳送。 如需詳細資訊,請參閱 使用UDP的Syslog轉送和無加密 。
重要
若要防範中間人攻擊和竊聽訊息,Microsoft強烈建議您在生產環境中搭配驗證和加密使用 TCP。
TLS 加密版本取決於端點之間的交握。 根據預設,支援 TLS 1.2 和 TLS 1.3。
設定 syslog 轉寄站需要使用網域系統管理員帳戶存取實體主機。 一組 PowerShell cmdlets 已新增至所有 Azure 區域主機,以管理 syslog 轉寄器的行為。
Cmdlet Set-AzSSyslogForwarder
可用來設定所有主機的 syslog 轉寄站組態。 如果成功,就會啟動行動計劃實例,以在所有主機上設定 syslog 轉寄站代理程式。 會傳回行動計劃實例標識碼。
使用下列 Cmdlet 將 syslog 伺服器資訊傳遞至轉寄站,並設定傳輸通訊協定、加密、驗證,以及用戶端與伺服器之間所使用的選擇性憑證:
Set-AzSSyslogForwarder [-ServerName <String>] [-ServerPort <UInt16>] [-NoEncryption] [-SkipServerCertificateCheck | -SkipServerCNCheck] [-UseUDP] [-ClientCertificateThumbprint <String>] [-OutputSeverity {Default | Verbose}] [-Remove]
Cmdlet 參數
下表提供 Set-AzSSyslogForwarder
Cmdlet 的參數:
參數
描述
類型
必要
伺服器名稱
Syslog 伺服器的 FQDN 或 IP 位址。
字串
Yes
ServerPort
Syslog 伺服器監聽的埠號碼。
UInt16
Yes
NoEncryption
強制用戶端以純文字形式傳送 Syslog 訊息。
旗標
否
跳過伺服器憑證檢查
在初始 TLS 信號交換期間,略過 Syslog 伺服器所提供的憑證之驗證。
旗標
否
SkipServerCNCheck
在初始 TLS 握手期間,跳過驗證 Syslog 伺服器所提供的憑證的普通名稱值。
旗標
不
UseUDP
使用 Syslog 搭配 UDP 作為傳輸通訊協定。
旗標
不
用戶端證書拇指印
用來與 syslog 伺服器通訊之用戶端憑證的指紋。
字串
不可以
OutputSeverity
輸出記錄的層級。 值為「Default」或「Verbose」。 預設包含嚴重性層級:警告、嚴重或錯誤。 Verbose 包含所有嚴重性層級:冗長、資訊、警告、重要或錯誤。
字串
否
移除
拿掉目前的 syslog 轉寄站組態,並停止 syslog 轉寄站。
旗標
不
使用 TCP、用戶端和伺服器的相互驗證,以及 TLS 加密進行 Syslog 轉送
在此設定中,Azure 本機中的 syslog 用戶端會使用 TLS 加密,透過 TCP 將訊息轉送至 syslog 伺服器。 在初始信號交換期間,用戶端會確認伺服器是否提供了有效、受信任的憑證。 用戶端也會提供憑證給伺服器,作為其身分識別的證明。
此組態最安全,因為它提供客戶端和伺服器身分識別的完整驗證,並透過加密通道傳送訊息。
重要
Microsoft建議您將此設定用於生產環境。
若要使用 TCP、相互驗證和 TLS 加密設定 syslog 轉寄站,請設定伺服器,並將憑證提供給用戶端,以針對伺服器進行驗證。
針對實體主機執行下列 Cmdlet:
Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening> -ClientCertificateThumbprint <Thumbprint of the client certificate>
重要
用戶端憑證必須包含私鑰。 如果是使用自我簽署的根證書來簽署客戶端憑證,那麼您必須同時匯入該根證書。
使用 TCP、伺服器驗證和 TLS 加密的 Syslog 轉送
在此設定中,Azure Local 中的 syslog 轉寄站會透過使用 TLS 加密透過 TCP 將訊息轉送至 syslog 伺服器。 在初始交握期間,用戶端也會驗證伺服器是否提供有效的受信任憑證。
此設定可防止用戶端將訊息傳送至不受信任的目的地。 使用驗證和加密的 TCP 是預設組態,代表Microsoft針對生產環境建議的最低安全性層級。
Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening>
如果您想要使用自我簽署或未受信任的憑證來測試 syslog 伺服器與 Azure Local syslog 轉寄站的整合,請使用這些旗標來略過用戶端在初始交握期間完成的伺服器驗證。
略過伺服器證書中 [一般名稱] 值的驗證。 如果您提供 syslog 伺服器的 IP 位址,請使用此旗標。
Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening>
-SkipServerCNCheck
略過伺服器證書驗證。
Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening>
-SkipServerCertificateCheck
重要
Microsoft建議您不要在生產環境中使用 -SkipServerCertificateCheck
旗標。
使用 TCP 且未加密的方式轉發 Syslog
在此設定中,Azure 本機中的 syslog 用戶端會透過 TCP 將訊息轉送至 syslog 伺服器,而不加密。 用戶端不會驗證伺服器的身分識別,也不會將自己的身分識別提供給伺服器進行驗證。
Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening on> -NoEncryption
重要
Microsoft建議您不要在生產環境中使用此設定。
使用 UDP 和無加密的 Syslog 轉送
在此組態中,Azure 本機中的 syslog 用戶端會透過 UDP 將訊息轉送至 syslog 伺服器,而不需要加密。 用戶端不會驗證伺服器的身分識別,也不會將自己的身分識別提供給伺服器進行驗證。
Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening> -UseUDP
雖然沒有加密的 UDP 是最容易設定的,但它不會提供任何保護,以防止攔截式攻擊或竊聽訊息。
重要
Microsoft建議您不要在生產環境中使用此設定。
啟用 syslog 轉送
執行下列 Cmdlet 以啟用 syslog 轉送:
Enable-AzSSyslogForwarder [-Force]
系統會使用最後一次成功 Set-AzSSyslogForwarder
呼叫所提供的預存組態來啟用Syslog轉寄站。 如果未使用 Set-AzSSyslogForwarder
提供任何組態,Cmdlet 將會失敗。
停用 syslog 轉送
執行下列 Cmdlet 以停用 syslog 轉送:
Disable-AzSSyslogForwarder [-Force]
Enable-AzSSyslogForwarder
和Disable-AzSSyslogForwarder
cmdlet 的參數:
參數
描述
類型
必要
力量
如果指定,即使目標狀態與目前相同,也會一律觸發行動計劃。 這有助於重設頻外變更。
旗標
否
確認 syslog 設定
成功將 syslog 用戶端連線到 syslog 伺服器之後,您就會開始接收事件通知。 如果您沒有看到通知,請執行下列 Cmdlet 來確認叢集 syslog 轉寄站組態:
Get-AzSSyslogForwarder [-Local | -PerNode | -Cluster]
每個主機都有自己的 syslog 轉發代理程式,使用的是叢集設定的本機複本。 它們應該總是與叢集的組態相同。 您可以使用下列 Cmdlet 來確認每個主機上的目前組態:
Get-AzSSyslogForwarder -PerNode
您也可以使用下列 Cmdlet 來驗證所連線主機上的組態:
Get-AzSSyslogForwarder -Local
Get-AzSSyslogForwarder
Cmdlet 的參數:
參數
描述
類型
必要
本地
顯示目前主機上目前使用的組態。
旗標
不
PerNode
顯示每個主機上目前使用的組態。
旗標
不
群集
在 Azure Local 環境上顯示目前的全域設定。 如果沒有提供任何參數,這是預設行為。
旗標
不
移除 syslog 轉送
執行下列命令以移除 syslog 轉寄站組態,並停止 syslog 轉寄站:
Set-AzSSyslogForwarder -Remove
訊息架構和事件記錄檔參考
下列參考資料記錄了 syslog 訊息架構和事件定義。
Azure 本機基礎結構的 syslog 轉發器會傳送格式化為遵循 RFC3164 中定義的 BSD syslog 通訊協定的訊息。 CEF 也用來格式化 syslog 訊息承載。
每個 syslog 訊息都是根據此架構進行結構化:優先順序 (PRI) |時間 |主機 |CEF 承載 |
PRI 元件包含兩個值: 設施 與 嚴重性 。 兩者都取決於訊息類型,例如 Windows 事件等。
所有 Windows 事件都會使用 PRI 裝置值 10。
簽章標識碼:ProviderName:EventID
名稱:TaskName
嚴重性:層級。 如需詳細資訊,請參閱下列嚴重性數據表。
擴充功能:自訂擴充功能名稱。 如需詳細資料,請參閱下表。
Windows 事件的嚴重性
PRI 嚴重性值
CEF 嚴重性值
Windows 事件層級
MasLevel 值(在延伸模組中)
7
0
未定義
值:0。 表示所有層級的記錄。
2
10
重大
值:1。 指出重大警示的記錄。
3
8
錯誤
值:2。 指出錯誤的記錄。
4
5
警告
值:3。 指出警告的記錄。
6
2
資訊
值:4。 指出參考訊息的記錄。
7
0
詳細資訊
值:5。 指出詳細資訊訊息的記錄。
Azure Local 中的自訂擴充功能和 Windows 事件
自定義擴充功能名稱
Windows 事件
MasChannel
系統
MasComputer
test.azurestack.contoso.com
MasCorrelationActivityID
C8F40D7C-3764-423B-A4FA-C994442238AF
鏈結相關活動ID (Note: This assumes that the term is a descriptor and not a fixed name.)
C8F40D7C-3764-423B-A4FA-C994442238AF
MasEventData
svchost!!4132,G,0!!!EseDiskFlushConsistency!!ESENT!!0x800000
MasEventDescription
已成功處理使用者的組策略設定。 自從上次成功處理組策略之後,未偵測到任何變更。
MasEventID
1501
MasEventRecordID
26637
MasExecutionProcessID
29380
MasExecutionThreadID
25,480
MasKeywords
0x8000000000000000
MasKeywordName
稽核成功
MasLevel
4
MasOpcode
1
MasOpcodeName
資訊
MasProviderEventSourceName
MasProviderGuid
AEA1B4FA-97D1-45F2-A64C-4D69FFFD92C9
MasProviderName
Microsoft-Windows-GroupPolicy
MasSecurityUserId
Windows 安全識別碼
MasTask
0
MasTaskCategory
進程創建
MasUserData
KB4093112!!5112!!安裝!!0x0!!WindowsUpdateAgent Xpath: /Event/UserData/*
MasVersion
0
轉送的雜項事件。 無法自定義這些事件。
事件類型
事件查詢
具有對等方 MAC 位址的無線區域網路 802.1x 驗證事件
query=“Security!*[System[(EventID=5632)]]”
新服務 (4697)
query=“Security!*[System[(EventID=4697)]]”
TS 會話重新連線 (4778), TS 會話中斷連線 (4779)
query=“Security!*[System[(EventID=4778 or EventID=4779)]]”
沒有 IPC$ 和 Netlogon 共用的網路共享物件存取
query=“Security![System[(EventID=5140)] and EventData[Data[@Name='ShareName']!='\ \IPC$'] and EventData[Data[@Name='ShareName']!='\*\NetLogon']]”
系統時間變更 (4616)
query=“Security!*[System[(EventID=4616)]]”
沒有網路或服務事件的本地登入
query=“Security!*[System[(EventID=4624)] and EventData[Data[@Name='LogonType']!='3'] and EventData[data[@Name='LogonType']!='5']]”
安全性記錄清除事件 (1102),EventLog 服務關機 (1100)
query=“安全!*[System[(EventID=1102 或 EventID=1100)]]”
用戶自行登出
query=“Security!*[System[(EventID=4647)]]”
所有非網路登入會話的用戶註銷
query=“Security!*[System[(EventID=4634)] and EventData[Data[@Name='LogonType'] != '3']]”
服務登入事件(如果用戶帳戶不是 LocalSystem、NetworkService、LocalService)
query=“Security!*[System[(EventID=4624)] and EventData[Data[@Name='LogonType']='5'] and EventData[Data[@Name='TargetUserSid'] != 'S-1-5-18 '] and EventData[Data[@Name='TargetUserSid'] != 'S-1-5-19'] and EventData[data[@Name='TargetUserSid'] != 'S-1-5-20']]”
網路共享建立(5142),網路共享刪除(5144)
query=“Security!*[System[(EventID=5142 or EventID=5144)]]”
進程創建 (4688)
query=“Security!*[System[EventID=4688]]”
安全性通道特有的事件記錄服務事件
query=“Security!*[System[Provider[@Name='Microsoft-Windows-Eventlog']]]”
指派給新登入的特殊許可權(管理員對等存取權),不包括 LocalSystem
query=“Security!*[System[(EventID=4672)] and EventData[Data[1] != 'S-1-5-18']]”
將新使用者加入本機、全域或通用安全群組
query=“Security!*[System[(EventID=4732 or EventID=4728 or EventID=4756)]]”
已將使用者從本機管理員群組中移除
query=“Security!*[System[(EventID=4733)] and EventData[Data[@Name='TargetUserName']='Administrators']]”
憑證服務收到憑證要求 (4886),已核准和頒發證書 (4887),拒絕要求 (4888)
query=“Security!*[System[(EventID=4886 or EventID=4887 or EventID=4888)]]”
新用戶帳戶已建立(4720)、使用者帳戶啟用 (4722)、使用者帳戶停用 (4725)、使用者帳戶已刪除 (4726)
query=“Security!*[System[(EventID=4720 or EventID=4722 or EventID=4725 or EventID=4726)]]”
反惡意軟體 舊 事件,但僅偵測事件(減少雜訊)
query=“System!*[System[Provider[@Name='Microsoft Antimalware'] and (EventID = 1116 and EventID ><= 1119)]] ”
系統啟動 (12 - 包含 OS/SP/版本) 和關機
query=“System!*[System[Provider[@Name='Microsoft-Windows-Kernel-General'] and (EventID=12 or EventID=13)]]]
服務安裝 (7000), 服務啟動失敗 (7045)
query=“System!*[System[Provider[@Name='Service Control Manager'] and (EventID=7000 or EventID=7045)]]”
關機請求包含使用者、程序及原因(如果有提供)
query=“System!*[System[Provider[@Name='USER32'] and (EventID=1074)]]”
事件記錄服務事件
query=“System!*[System[Provider[@Name='Microsoft-Windows-Eventlog']]]”
其他記錄清除的事件(104)
query=“System!*[System[(EventID=104)]]”
EMET/漏洞防護事件
query=“Application!*[System[Provider[@Name='EMET']]]”
僅限於應用程式崩潰的 WER 事件
query="Application!*[System[Provider[@Name='Windows 錯誤報告']] and EventData[Data[3]='APPCRASH']]"
使用暫時個人資料登入的使用者(1511),無法建立個人資料,改用暫時個人資料(1518)
query=“Application!*[System[Provider[@Name='Microsoft-Windows-User Profiles Service'] and (EventID=1511 or EventID=1518)]]”
應用程式當機/停止回應事件,類似於 WER/1001。 其中包括發生錯誤之 EXE/模組的完整路徑。
query=“Application!*[System[Provider[@Name='Application Error'] and (EventID=1000)] or System[Provider[@Name='Application Hang'] and (EventID=1002)]]”
任務排程器任務已登錄(106),任務登錄已刪除(141),任務已刪除(142)
query=“Microsoft-Windows-TaskScheduler/Operational!*[System[Provider[@Name='Microsoft-Windows-TaskScheduler'] and (EventID=106 or EventID=141 or EventID=142 )]]”
AppLocker 封裝的(現代 UI)應用程式執行
query=“Microsoft-Windows-AppLocker/Packaged app-Execution!*”
AppLocker 封裝(Modern UI)應用程式安裝
query=“Microsoft-Windows-AppLocker/Packaged app-Deployment!*”
記錄嘗試透過 Terminal Services 連線到遠端伺服器
query=“Microsoft-Windows-TerminalServices-RDPClient/Operational!*[System[(EventID=1024)]]”
取得主機上執行的所有智慧卡卡片持有人驗證 (CHV) 事件(成功和失敗)。
query=“Microsoft-Windows-SmartCard-Audit/Authentication!*”
取得所有 UNC/對應磁碟驅動器成功連線
query=“Microsoft-Windows-SMBClient/Operational!*[System[(EventID=30622 or EventID=30624)]]”
Modern SysMon 事件提供者
query=「Microsoft-Windows-Sysmon/Operational!*」
新式 Windows Defender 事件提供者的偵測事件(1006-1009)和(1116-1119),以及客戶要求的事件(5001、5010、5012)。
query="Microsoft-Windows-Windows Defender/Operational!*[System[(EventID >= 1006 且 EventID <= 1009) 或 (EventID >= 1116 且 EventID <= 1119) 或 (EventID = 5001 或 EventID = 5010 或 EventID = 5012))]"
程式碼完整性事件
query=“Microsoft-Windows-CodeIntegrity/Operational!*[System[Provider[@Name='Microsoft-Windows-CodeIntegrity'] and (EventID=3076 或 EventID=3077)]]”
CA 停止/啟動事件 CA 服務已停止 (4880), CA 服務啟動 (4881), CA DB 數據列(s) 已刪除 (4896), CA 範本載入 (4898)
query=“Security!*[System[(EventID=4880 或 EventID = 4881 或 EventID = 4896 或 EventID = 4898)]]”
僅在 Microsoft IAS 伺服器上生成的 RRAS 事件
query=“Security!*[System[(EventID >= 6272 and EventID <= 6280)]]”
程序終止 (4689)
query=“Security!*[System[(EventID = 4689)]]”
作業的註冊表修改事件:新建的註冊表值(%%1904)、修改的現有註冊表值(%%1905)、註冊表值已刪除(%%1906)
query="Security!*[System[(EventID=4657)] 和 (EventData[Data[@Name='OperationType'] = '%%1904'] 或 EventData[Data[@Name='OperationType'] = '%%1905'] 或 EventData[Data[@Name='OperationType'] = '%%1906'])]"
向無線網路進行驗證的要求(包括對等 MAC 地址 (5632))
query=“Security!*[System[(EventID=5632)]]”
系統辨識新的外部裝置(6416)
query=“Security!*[System[(EventID=6416)]]”
RADIUS 驗證事件使用者指派的 IP 位址 (20274),使用者成功驗證 (20250),使用者已中斷連線 (20275)
query=“System!*[System[Provider[@Name='RemoteAccess'] and (EventID=20274 或 EventID=20250 或 EventID=20275)]] ”
CAPI 事件建置鏈結 (11), 私鑰存取 (70), X509 物件 (90)
query=“Microsoft-Windows-CAPI2/Operational!*[System[(EventID=11 or EventID=70 or EventID=90)]]”
指派給新登入的群組(不包括眾所周知的內建帳戶)
query=“Microsoft-Windows-LSA/Operational!*[System[(EventID=300)] and EventData[Data[@Name='TargetUserSid'] != 'S-1-5-20'] and EventData[[ Data[@Name='TargetUserSid'] != 'S-1-5-18'] and EventData[Data[@Name='TargetUserSid'] != 'S-1-5-19']]”
DNS 用戶端事件
query="Microsoft-Windows-DNS-Client/Operational!*[System[(EventID=3008)] and EventData[Data[@Name='QueryOptions'] != '140737488355328'] and EventData[Data[@Name='QueryResults']='']]"
偵測載入的使用者模式驅動程式 - 以辨識潛在的 BadUSB 威脅。
query=“Microsoft-Windows-DriverFrameworks-UserMode/Operational!*[System[(EventID=2004)]]”
舊版 PowerShell 管線執行詳細資料 (800)
query=“Windows PowerShell!*[System[(EventID=800)]]”
Defender 已停止事件
query=“System!*[System[(EventID=7036)] and EventData[Data[@Name='param1']='Microsoft Defender 防毒軟體網路防護服務'] and EventData[Data[@Name='param2']='stopped']]”
BitLocker 管理事件
query=「Microsoft-Windows-BitLocker/BitLocker Management!*」
下一步
深入了解: