適用於 TWGCB-01-012_Red Hat Enterprise Linux 9政府組態基準說明文件(伺服器)v1.2_1140612
本專案是一個根據政府組態基準 (TWGCB) 自動產生的 Shell Script 自動化設定框架。它可以協助 Linux 系統管理者快速檢查並套用符合 TWGCB 規範的安全設定。
- 自動化規則生成:從
TWGCB.csv資料集自動產生對應的 Shell 腳本。 - 檢查與套用模式:支援
check(檢查)和apply(套用)兩種操作模式。 - 日誌記錄:所有執行過程都會被記錄到
/var/log/twgcb-auto.log中,便於追蹤與稽核。 - 模組化設計:每條規則都是一個獨立的腳本,易於管理和客製化。
- 高安全性:主腳本強制要求
root權限,且規則腳本以獨立的子程序執行,避免環境變數污染。
twgcb-auto/
├── twgcb.sh # 主控制程式,可指定 TWGCB-ID 執行
├── rules/ # 儲存各項設定規則
│ ├── TWGCB-01-012-0001.sh
│ ├── TWGCB-01-012-0002.sh
│ └── …
├── config.list # 列出預設需執行的規則 ID
└── README.md # 專案說明文件重要提示: 在生產環境中使用前,請務必在測試環境中充分驗證所有規則。部分規則(特別是涉及磁碟分割或網路設定的)可能需要手動介入。
- 腳本需要在
bash環境下執行。 - 需要
root或sudo權限。
此命令會讀取 config.list 中定義的所有規則 ID,並逐一執行。
-
檢查模式:
sudo ./twgcb.sh check
-
套用模式:
sudo ./twgcb.sh apply
若要針對特定規則進行操作,可在指令後方加上該規則的 TWGCB-ID。
-
檢查單一規則:
sudo ./twgcb.sh check TWGCB-01-012-0001
-
套用單一規則:
sudo ./twgcb.sh apply TWGCB-01-012-0001
您可以直接編輯 config.list 檔案,加入或移除規則 ID,以自訂預設要執行的規則範圍。
若要修改特定規則的行為,可以直接編輯位於 rules/ 目錄下的對應 Shell 腳本。每個腳本都包含 check 和 apply 函式,您可以根據需求修改其內容。
如果您修改了 TWGCB.csv 檔案或 generate_rules.py 生成器腳本,可以透過以下指令重新產生所有規則腳本:
- 安裝 Python (如果尚未安裝)。
- 執行生成器 (可能需要分批執行以避免系統限制):
# 產生所有規則 python3 generate_rules.py # 產生 config.list python3 generate_rules.py --generate-config
- 手動規則:對於無法完全自動化的複雜規則(如磁碟分割),腳本會提示需要手動操作。請仔細閱讀腳本輸出,並遵循其提供的指引。
- 備份:在執行
apply模式前,強烈建議您備份重要資料和系統設定。 - 相容性:此框架設計時已考慮 POSIX 相容性,但主要在現代 Linux 發行版(如 RHEL/CentOS, Ubuntu)上進行概念驗證。在其他系統上使用前,請先進行測試。