記錄檔為對攻擊進行疑難排解和取得缺口相關資訊的一個重要元件。所有 ESXi 主機均執行 Syslog 服務,該服務會將來自 VMkernel 和其他系統元件的訊息記錄到本機檔案或遠端主機中。
- 設定持續性記錄到資料存放區。依預設,ESXi 主機上的記錄儲存於記憶體中的檔案系統中。因此,當您將主機重新開機時,記錄將會遺失,並且僅儲存 24 小時的記錄資料。啟用持續性記錄時,您會有用於主機的專用活動記錄。
- 遠端記錄到中央主機可讓您收集中央主機上的記錄檔。您可從該主機使用單一工具監控所有主機、執行彙總分析和搜尋記錄資料。這種方法可協助監控,並顯示對多台主機的協調攻擊的相關資訊。
- 透過使用 ESXCLI 或 PowerCLI 或使用 API 用戶端,在 ESXi 主機上設定遠端安全 Syslog。
- 查詢 Syslog 組態,確保 Syslog 伺服器和連接埠有效。
如需有關 Syslog 設定的資訊以及 ESXi 記錄檔的其他相關資訊,請參閱vSphere 監控和效能說明文件。
在 ESXi 主機上設定 Syslog
您可以使用 vSphere Client、VMware Host Client 或 esxcli system syslog 命令來設定 syslog 服務。
如需使用 esxcli system syslog 命令和其他 ESXCLI 命令的相關資訊,請參閱ESXCLI 入門。如需有關如何為每個遠端主機規格中指定的連接埠開啟 ESXi 防火牆的詳細資料,請參閱設定 ESXi 防火牆。
程序
- 在 vSphere Client 詳細目錄中瀏覽到主機。
- 按一下設定。
- 在系統下,按一下進階系統設定。
- 按一下編輯。
- 篩選 syslog。
- 若要全域設定記錄並設定各種進階設定,請參閱ESXi Syslog 選項。
- (選擇性) 覆寫任何記錄的預設記錄大小和記錄輪替:
- 按一下您要自訂的記錄的名稱。
- 輸入所需的輪替次數和記錄大小。
- 按一下確定。
結果
ESXi Syslog 選項
可以使用一組 syslog 選項定義 ESXi syslog 檔案和傳輸的行為。
除了基本設定 (如 Syslog.global.logHost) 之外,從 ESXi 7.0 Update 1 開始,還提供了用於自訂和 NIAP 符合性的進階選項清單。
選項 | ESXCLI 命令 | 說明 |
---|---|---|
Syslog.global.logHost | esxcli system syslog config set --loghost=<str> |
定義用於訊息傳輸的遠端主機及規格清單 (以逗號分隔)。如果 loghost=<str> 欄位為空,則不會轉送任何記錄。雖然對接收 Syslog 訊息的遠端主機數量沒有硬限制,但最好將遠端主機的數量保持在 5 個或以下。遠端主機規格的格式為:protocol://hostname|ipv4|'['ipv6']'[:port] 。該通訊協定必須為 TCP、UDP 或 SSL 之一。連接埠值可以是介於 1 到 65535 之間的任何十進位數字。如果未提供連接埠,則 SSL 和 TCP 將使用 1514。UDP 使用 514。例如:ssl://hostName1:1514 。 |
Syslog.global.defaultRotate | esxcli system syslog config set --default-rotate=<long> | 要保留的舊記錄檔的最大數目。可全域設定該數目,也可針對個別子記錄器進行設定 (請參閱 Syslog.global.defaultSize)。 |
Syslog.global.defaultSize | esxcli system syslog config set --default-size=<long> | 記錄檔的預設大小 (以 KiB 為單位)。檔案達到預設大小後,syslog 服務會建立一個新檔案。可全域設定該數目,也可針對個別子記錄器進行設定。 |
Syslog.global.logDir | esxcli system syslog config set --logdir=<str> | 記錄所在的目錄。該目錄可能位於掛接的 NFS 或 VMFS 磁碟區中。只有本機檔案系統中的 /scratch 目錄在重新開機後仍會存在。將目錄指定為 [datastorename] path_to_file,其中路徑相對於支援資料存放區的磁碟區的根目錄路徑。例如,路徑 [storage1] /systemlogs 會對應到路徑 /vmfs/volumes/storage1/systemlogs。 |
Syslog.global.logDirUnique | esxcli system syslog config set --logdir-unique=<bool> | 指定要與 Syslog.global.logDir 值相連接的 ESXi 主機名稱。當多個 ESXi 主機登入共用檔案系統時,啟用此設定至關重要。若選取此選項,將會使用 ESXi 主機的名稱,在 Syslog.global.LogDir 指定的目錄下建立子目錄。如果有多個 ESXi 主機使用同一個 NFS 目錄,則唯一的目錄非常有用。 |
Syslog.global.certificate.checkSSLCerts | esxcli system syslog config set --check-ssl-certs=<bool> | 將訊息傳輸至遠端主機時強制檢查 SSL 憑證。 |
選項 | ESXCLI 命令 | 說明 |
---|---|---|
Syslog.global.auditRecord.storageCapacity | esxcli system auditrecords local set --size=<long> | 指定位於 ESXi 主機上的稽核記錄儲存目錄的容量 (以 MiB 為單位)。無法減少稽核記錄儲存的容量。可以在啟用稽核記錄儲存之前或之後 (請參閱 Syslog.global.auditRecord.storageEnable) 增加容量。 |
Syslog.global.auditRecord.remoteEnable | esxcli system auditrecords remote enable | 允許將稽核記錄傳送到遠端主機。遠端主機透過使用 Syslog.global.logHost 參數指定。 |
Syslog.global.auditRecord.storageDirectory | esxcli system auditrecords local set --directory=<dir> | 建立稽核記錄儲存目錄,除非已指定,否則請將 /scratch/auditLog 設定為預設位置。您不得手動建立稽核記錄儲存目錄,也不能在啟用稽核記錄儲存時變更稽核記錄儲存目錄 (請參閱 Syslog.global.auditRecord.storageEnable)。 |
Syslog.global.auditRecord.storageEnable | esxcli system auditrecords local enable | 在 ESXi 主機上啟用稽核記錄儲存。如果稽核記錄儲存目錄不存在,則使用 Syslog.global.auditRecord.storageCapacity 指定的容量建立該目錄。 |
Syslog.global.certificate.checkCRL | esxcli system syslog config set --crl-check=<bool> | 啟用對 SSL 憑證鏈結中所有憑證的撤銷狀態檢查。 啟用 X.509 CRL 驗證,依預設不會根據產業慣例檢查這些 CRL。經過 NIAP 驗證的組態需要進行 CRL 檢查。由於實作限制,如果啟用了 CRL 檢查,則憑證鏈結中的所有憑證都必須提供 CRL 連結。 不要為與認證無關的安裝啟用 crl-check 選項,因為很難正確設定使用 CRL 檢查的環境。 |
Syslog.global.certificate.strictX509Compliance | esxcli system syslog config set --x509-strict=<bool> | 啟用與 X.509 的嚴格符合性。在驗證期間,對 CA 根憑證執行額外的有效性檢查。通常不會執行這些檢查,因為 CA 根本來就受信任,並且可能會導致與現有設定錯誤的 CA 根不相容。經過 NIAP 驗證的組態甚至需要 CA 根來通過驗證。 不要為與認證無關的安裝啟用 x509-strict 選項,因為很難正確設定使用 CRL 檢查的環境。 |
Syslog.global.droppedMsgs.fileRotate | esxcli system syslog config set --drop-log-rotate=<long> | 指定要保留的舊的已捨棄訊息記錄檔數。 |
Syslog.global.droppedMsgs.fileSize | esxcli system syslog config set --drop-log-size=<long> | 指定切換到新訊息記錄檔之前每個捨棄的訊息記錄檔大小 (以 KiB 為單位)。 |
Syslog.global.logCheckSSLCerts | esxcli system syslog config set --check-ssl-certs=<bool> | 將訊息傳輸至遠端主機時強制檢查 SSL 憑證。
備註: 已被取代。在 ESXi 7.0 Update 1 及更新版本中使用
Syslog.global.certificate.checkSSLCerts。
|
Syslog.global.logFilters | esxcli system syslog config logfilter [add | remove | set] ... | 指定一或多個記錄篩選規格。每個記錄篩選器必須用雙分隔號「||」分隔。記錄篩選器的格式為:numLogs | ident | logRegexp 。numLogs 設定所指定記錄訊息的記錄項目數目上限。達到此數目後,就會篩選並忽略指定的記錄訊息。ident 指定一或多個系統元件,以將篩選器套用於這些元件所產生的記錄訊息。logRegexp 以 Python 規則運算式語法指定區分大小寫的片語,以依內容篩選記錄訊息。 |
Syslog.global.logFiltersEnable | 允許使用記錄篩選器。 | |
Syslog.global.logLevel | esxcli system syslog config set --log-level=<str> | 指定記錄篩選層級。僅當對 syslog 精靈問題進行疑難排解時,才必須變更此參數。可以使用值 debug 表示最詳細層級,使用 info 表示預設詳細層級,使用 warning 表示僅警告或錯誤,使用 error 表示僅錯誤。 |
Syslog.global.msgQueueDropMark | esxcli system syslog config --queue-drop-mark=<long>) | 指定佔訊息佇列容量的百分比,達到此值後捨棄訊息。 |
Syslog.global.remoteHost.connectRetryDelay | esxcli system syslog config set --default-timeout=<long> | 指定連線嘗試失敗後重試連線到遠端主機之前的延遲 (以秒為單位)。 |
Syslog.global.remoteHost.maxMsgLen | esxcli system syslog config set --remote-host-max-msg-len=<long> | 對於 TCP 和 SSL 通訊協定,此參數指定截斷發生之前 syslog 傳輸的最大長度 (以位元組為單位)。遠端主機訊息的預設最大長度為 1 KiB。可以將最大訊息長度增加到多達 16 KiB。但是,將此值提高到 1 KiB 以上不能確保長傳輸到達 syslog 收集器時未被截斷。例如,發出訊息的 syslog 基礎結構位於 ESXi 外部時。 此設定不影響 UDP 通訊協定。RFC 5426 將 UDP 通訊協定的最大訊息傳輸長度設定為 480 位元組 (IPV4) 和 1180 位元組 (IPV6)。由於此限制,並且網路基礎結構可以任意捨棄 UDP 封包,因此不建議使用 UDP 來傳輸關鍵 syslog 訊息。 |
Syslog.global.vsanBacking | esxcli system syslog config set --vsan-backing=<bool> | 允許將記錄檔和稽核記錄儲存目錄放置在 vSAN 叢集上。但是,啟用此參數可能會導致 ESXi 主機變得無回應。 |
ESXi 記錄檔位置
ESXi 透過使用 Syslog 功能,在記錄檔中記錄主機活動。
元件 | 位置 | 用途 |
---|---|---|
驗證 | /var/log/auth.log | 包含與本機系統驗證相關的所有事件。 |
ESXi 主機代理程式記錄 | /var/log/hostd.log | 包含管理和設定 ESXi主機及其虛擬機器的代理程式的相關資訊。 |
Shell 記錄 | /var/log/shell.log | 包含在 ESXi中輸入的所有命令以及 Shell 事件 (例如,啟用 Shell) 的記錄。 |
系統訊息 | /var/log/syslog.log | 包含所有一般記錄訊息,並且可用來進行疑難排解。該資訊之前位於訊息記錄檔中。 |
vCenter Server代理程式記錄 | /var/log/vpxa.log | 包含與 vCenter Server通訊的代理程式的相關資訊 (如果主機由 vCenter Server 管理)。 |
虛擬機器 | 與受影響的虛擬機器的組態檔 (命名為 vmware.log 和 vmware*.log) 具有相同的目錄。例如, /vmfs/volumes/datastore/virtual machine/vmware.log | 包含虛擬機器電源事件、系統失敗資訊、工具狀態和活動、時間同步、虛擬硬體變更、vMotion 移轉和虛擬機器複製等。 |
VMkernel | /var/log/vmkernel.log | 記錄與虛擬機器以及 ESXi有關的活動。 |
VMkernel 摘要 | /var/log/vmksummary.log | 用於判定 ESXi的運作時間和可用性統計資料 (以逗號分隔)。 |
VMkernel 警告 | /var/log/vmkwarning.log | 記錄與虛擬機器有關的活動。 |
Quick Boot | /var/log/loadESX.log | 包含與透過 Quick Boot 重新啟動 ESXi主機相關的所有事件。 |
受信任基礎結構代理程式 | /var/run/log/kmxa.log | 記錄與 ESXi受信任主機上的用戶端服務相關的活動。 |
金鑰提供者服務 | /var/run/log/kmxd.log | 記錄與 vSphere Trust Authority金鑰提供者服務相關的活動。 |
證明服務 | /var/run/log/attestd.log | 記錄與 vSphere Trust Authority證明服務相關的活動。 |
ESX Token 服務 | /var/run/log/esxtokend.log | 記錄與 vSphere Trust AuthorityESX Token 服務相關的活動。 |
ESX API 轉寄站 | /var/run/log/esxapiadapter.log | 記錄與 vSphere Trust AuthorityAPI 轉寄站相關的活動。 |