共用方式為


Center for Internet Security (CIS) Azure Linux 基準

適用於 AKS 的 Azure Linux 容器主機映像所套用的安全性 OS 組態是以符合 CIS 基準的 Azure Linux 安全性基準為基礎。 作為安全服務,AKS 符合 SOC、ISO、PCI DSS 和 HIPAA 標準。 如需 Azure Linux 容器主機安全性的詳細資訊,請參閱 AKS 中叢集的安全性概念。 若要了解 CIS 基準,請參閱 Center for Internet Security (CIS) 基準。 如需適用於 Linux 的 Azure 安全性基準的詳細資訊,請參閱 Linux 安全性基準

Azure Linux 2.0

此 Azure Linux 容器主機作業系統是基於已套用內建安全性組態的 Azure Linux 2.0 映像。

作為安全性最佳化的作業系統一部分:

  • AKS 和 Azure Linux 依預設會提供安全性最佳化的主機 OS,但沒有選項可選取替代作業系統。
  • 安全性最佳化的主機 OS 是專門針對 AKS 所建置和維護,且無法在 AKS 平台外部獲得支援。
  • 已在 OS 中停用非必要的核心模組驅動程式,以縮小受攻擊面。

建議

下表包含四個區段:

  • CIS 識別碼:與每個基準規則相關聯的規則識別碼。
  • 建議描述:CIS 基準所發佈建議的描述。
  • 等級:L1 (或等級 1) 會建議可在任何系統上設定,且應該不會中斷服務或減少功能的基本安全性需求。
  • 狀態:
    • 通過 - 已套用建議。
    • 失敗:未套用建議。
    • N/A:建議與資訊清單檔權限需求相關,但該需求與 AKS 並不相關。
    • 視環境而定:建議會套用在使用者的特定環境中,且不受 AKS 控制。
    • 對等控制項:以不同的對等方式實作建議。
  • 原因:
    • 潛在的作業影響:未套用建議,因為建議會對服務產生負面影響。
    • 包含在其他地方:Azure 雲端計算的另一個控制項中包含該建議。

以下是以 CIS 規則為基礎的 CIS Azure Linux 2.0 基準 v1.0 (英文) 建議的結果:

CIS 識別碼 建議描述 狀態 原因
1.1.4 停用自動掛接 通過
1.1.1.1 確定已停用 cramfs 檔案系統的掛接 通過
1.1.2.1 確定 /tmp 是個別的分割區 通過
1.1.2.2 確定 /tmp 分割區上已設定 nodev 選項 通過
1.1.2.3 確定 /tmp 分割區上已設定 nosuid 選項 通過
1.1.8.1 確定 /dev/shm 分割區上已設定 nodev 選項 通過
1.1.8.2 確定 /dev/shm 分割區上已設定 nosuid 選項 通過
1.2.1 確定已全域啟動 DNF gpgcheck 通過
1.2.2 確定已全域啟動 TDNF gpgcheck 通過
1.5.1 確定已停用核心傾印儲存 通過
1.5.2 確定已停用核心傾印反向追蹤 通過
1.5.3 確定已啟用位址空間配置隨機化 (ASLR) 通過
1.7.1 確定已正確設定本機登入警告橫幅 通過
1.7.2 確定已正確設定遠端登入警告橫幅 通過
1.7.3 確保已設定 /etc/motd 的權限 通過
1.7.4 確定已設定 /etc/issue 的權限 通過
1.7.5 確定已設定 /etc/issue.net 的權限 通過
2.1.1 確定時間同步處理正在使用中 通過
2.1.2 確定已設定 chrony 通過
2.2.1 確定未安裝 xinetd 通過
2.2.2 確定未安裝 xorg-x11-server-common 通過
2.2.3 確定未安裝 avahi 通過
2.2.4 確定未安裝列印伺服器 通過
2.2.5 確定未安裝 dhcp 伺服器 通過
2.2.6 確定未安裝 dns 伺服器 通過
2.2.7 確定未安裝 FTP 用戶端 通過
2.2.8 確定未安裝 ftp 伺服器 通過
2.2.9 確定未安裝 tftp 伺服器 通過
2.2.10 確定未安裝網頁伺服器 通過
2.2.11 確定未安裝 IMAP 和 POP3 伺服器 通過
2.2.12 確定未安裝 Samba 通過
2.2.13 確定未安裝 HTTP Proxy 伺服器 通過
2.2.14 確定未安裝 net-snmp,或未啟用 snmpd 服務 通過
2.2.15 確定未安裝 NIS 伺服器 通過
2.2.16 確定未安裝 Telnet 伺服器 通過
2.2.17 確定已設定郵件傳輸代理程式使用僅限本機模式 通過
2.2.18 確定未安裝 nfs-utils,或已遮罩 nfs-server 服務 通過
2.2.19 確定未安裝 rsync-daemon,或已遮罩 rsyncd 服務 通過
2.3.1 確定未安裝 NIS 用戶端 通過
2.3.2 確定未安裝 rsh 用戶端 通過
2.3.3 確定未安裝 talk 用戶端 通過
2.3.4 確定未安裝 Telnet 用戶端 通過
2.3.5 確定未安裝 LDAP 用戶端 通過
2.3.6 確定未安裝 TFTP 用戶端 通過
3.1.1 確定已啟用 IPv6 通過
3.2.1 確定已停用封包重新導向傳送 通過
3.3.1 確定不接受來源路由封包 通過
3.3.2 確定不接受 ICMP 重新導向 通過
3.3.3 確定不接受安全 ICMP 重新導向 通過
3.3.4 確定會記錄可疑的封包 通過
3.3.5 確定會忽略廣播 ICMP 要求 通過
3.3.6 確定會忽略假 ICMP 回應 通過
3.3.7 確定已啟用反轉路徑篩選 通過
3.3.8 確定已啟用 TCP SYN Cookie 通過
3.3.9 確定不接受 IPv6 路由器公告 通過
3.4.3.1.1 確定已安裝 iptables 套件 通過
3.4.3.1.2 確定未隨 iptables 一起安裝 nftables 通過
3.4.3.1.3 確定未安裝防火牆或已使用 iptables 遮罩 通過
4.2 確定已設定 logrotate 通過
4.2.2 確定所有記錄檔都已設定適當的存取權 通過
4.2.1.1 確定已安裝 rsyslog 通過
4.2.1.2 確定已啟用 Rsyslog 服務 通過
4.2.1.3 確定已設定 Rsyslog 預設檔案權限 通過
4.2.1.4 確定已設定記錄 通過
4.2.1.5 確定 Rsyslog 未設定為從遠端用戶端接收記錄 通過
5.1.1 確定已啟用 cron 精靈 通過
5.1.2 確定已設定 /etc/crontab 的權限 通過
5.1.3 確定已設定 /etc/cron.hourly 的權限 通過
5.1.4 確定已設定 /etc/cron.daily 的權限 通過
5.1.5 確定已設定 /etc/cron.weekly 的權限 通過
5.1.6 確定已設定 /etc/cron.monthly 的權限 通過
5.1.7 確定已設定 /etc/cron.d 的權限 通過
5.1.8 確定 cron 限制為已授權的使用者 通過
5.1.9 確定 at 限制為已授權的使用者 通過
5.2.1 確定已設定 /etc/ssh/sshd_config 的權限 通過
5.2.2 確定已設定 SSH 私人主機金鑰檔案的權限 通過
5.2.3 確定已設定 SSH 公用主機金鑰檔案的權限 通過
5.2.4 確定 SSH 存取受到限制 通過
5.2.5 確定 SSH LogLevel 適當 通過
5.2.6 確定已啟用 SSH PAM 通過
5.2.7 確定已停用 SSH 根登入 通過
5.2.8 確定已停用 SSH HostbasedAuthentication 通過
5.2.9 確定已停用 SSH PermitEmptyPasswords 通過
5.2.10 確定已停用 SSH PermitUserEnvironment 通過
5.2.11 確定已啟用 SSH IgnoreRhosts 通過
5.2.12 確定只使用強式加密 通過
5.2.13 確定僅使用強式 MAC 演算法 通過
5.2.14 確定只使用強式金鑰交換演算法 通過
5.2.15 確定已設定 SSH 警告橫幅 通過
5.2.16 確定 SSH MaxAuthTries 設定為 4 或更低 通過
5.2.17 確定已設定 SSH MaxStartups 通過
5.2.18 確定 SSH LoginGraceTime 設定為一分鐘或更低 通過
5.2.19 確定 SSH MaxSessions 設定為 10 或更低 通過
5.2.20 確定已設定 SSH 閒置逾時間隔 通過
5.3.1 確定已安裝 sudo 通過
5.3.2 確定未全域停用權限提升的重新驗證 通過
5.3.3 確定已正確設定 sudo 驗證逾時 通過
5.4.1 確定已設定密碼建立需求 通過
5.4.2 確定已設定密碼嘗試失敗的鎖定 通過
5.4.3 確保密碼雜湊演算法為 SHA-512 通過
5.4.4 確定密碼重複使用受到限制 通過
5.5.2 確定系統帳戶受到保護 通過
5.5.3 確定根帳戶的預設群組為 GID 0 通過
5.5.4 確定預設使用者 umask 為 027 或更嚴格 通過
5.5.1.1 確定密碼到期日為 365 天或更短 通過
5.5.1.2 確定已設定密碼變更之間的最小天數 通過
5.5.1.3 確定密碼到期警告天數為 7 天或更多 通過
5.5.1.4 確定非作用中密碼鎖定為 30 天或更短 通過
5.5.1.5 確保所有使用者的上次密碼變更日期是過去的日期 通過
6.1.1 確定已設定 /etc/passwd 的權限 通過
6.1.2 確定已設定 /etc/passwd- 的權限 通過
6.1.3 確定已設定 /etc/group 的權限 通過
6.1.4 確定已設定 /etc/group- 的權限 通過
6.1.5 確定已設定 /etc/shadow 的權限 通過
6.1.6 確定已設定 /etc/shadow- 的權限 通過
6.1.7 確定已設定 /etc/gshadow 的權限 通過
6.1.8 確定已設定 /etc/gshadow- 的權限 通過
6.1.9 確定沒有未擁有或未分組的檔案或目錄存在 通過
6.1.10 確定全域可寫入的檔案和目錄受到保護 通過
6.2.1 確定密碼欄位非空白 通過
6.2.2 確保 /etc/passwd 中的所有群組都存在於 /etc/group 中 通過
6.2.3 確保沒有任何重複的 UID 存在 通過
6.2.4 確保沒有任何重複的 GID 存在 通過
6.2.5 確保沒有重複的使用者名稱 通過
6.2.6 確定沒有重複的群組名稱 通過
6.2.7 確定根路徑完整性 通過
6.2.8 確保根是唯一的 UID 0 帳戶 通過
6.2.9 確保所有使用者的主目錄皆存在 通過
6.2.10 確定使用者擁有其主目錄 通過
6.2.11 確定使用者的主目錄權限為 750 或更嚴格 通過
6.2.12 確定使用者的 dot 檔案不可進行群組或全域寫入 通過
6.2.13 確定使用者的 .netrc 檔案不可進行群組或全域存取 通過
6.2.14 確保沒有任何使用者有 .forward 檔案 通過
6.2.15 確保沒有任何使用者有 .netrc 檔案 通過
6.2.16 確保沒有任何使用者有 .rhosts 檔案 通過

下一步

如需 Azure Linux 容器主機安全性的詳細資訊,請參閱下列文章: