選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

AL2023 核心強化

焦點模式
AL2023 核心強化 - Amazon Linux 2023

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AL2023 中的 6.1 Linux 核心已設定並建置數個強化選項和功能。

核心強化選項 (獨立於架構)

CONFIG 選項 AL2023/6.1/aarch64 AL2023/6.1/x86_64 AL2023/6.12/aarch64 AL2023/6.12/x86_64
CONFIG_ACPI_CUSTOM_METHOD n n N/A N/A
CONFIG_BINFMT_MISC m m m m
CONFIG_BUG y y y y
CONFIG_BUG_ON_DATA_CORRUPTION y y y y
CONFIG_CFI_CLANG N/A N/A N/A N/A
CONFIG_CFI_PERMISSIVE N/A N/A N/A N/A
CONFIG_COMPAT y y y y
CONFIG_COMPAT_BRK n n n n
CONFIG_COMPAT_VDSO N/A n N/A n
CONFIG_DEBUG_CREDENTIALS n n N/A N/A
CONFIG_DEBUG_LIST y y y y
CONFIG_DEBUG_NOTIFIERS n n n n
CONFIG_DEBUG_SG n n n n
CONFIG_DEBUG_VIRTUAL n n n n
CONFIG_DEBUG_WX n n n n
CONFIG_DEFAULT_MMAP_MIN_ADDR 65536 65536 65536 65536
CONFIG_DEVKMEM N/A N/A N/A N/A
CONFIG_DEVMEM n n n n
CONFIG_EFI_DISABLE_PCI_DMA n n n n
CONFIG_FORTIFY_SOURCE y y y y
CONFIG_HARDENED_USERCOPY y y y y
CONFIG_HARDENED_USERCOPY_FALLBACK N/A N/A N/A N/A
CONFIG_HARDENED_USERCOPY_PAGESPAN N/A N/A N/A N/A
CONFIG_HIBERNATION y y y y
CONFIG_HW_RANDOM_TPM N/A N/A N/A N/A
CONFIG_INET_DIAG m m m m
CONFIG_INIT_ON_ALLOC_DEFAULT_ON n n n n
CONFIG_INIT_ON_FREE_DEFAULT_ON n n n n
CONFIG_INIT_STACK_ALL_ZERO N/A N/A N/A N/A
CONFIG_IOMMU_DEFAULT_DMA_STRICT n n n n
CONFIG_IOMMU_SUPPORT y y y y
CONFIG_IO_STRICT_DEVMEM N/A N/A N/A N/A
CONFIG_KEXEC y y y y
CONFIG_KFENCE n n n n
CONFIG_LDISC_AUTOLOAD n n n n
CONFIG_LEGACY_PTYS n n n n
CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY n n n n
CONFIG_MODULES y y y y
CONFIG_MODULE_SIG y y y y
CONFIG_MODULE_SIG_ALL y y y y
CONFIG_MODULE_SIG_FORCE n n n n
CONFIG_MODULE_SIG_HASH sha512 sha512 sha512 sha512
CONFIG_MODULE_SIG_KEY certs/signing_key.pem certs/signing_key.pem certs/signing_key.pem certs/signing_key.pem
CONFIG_MODULE_SIG_SHA512 y y y y
CONFIG_PAGE_POISONING n n n n
CONFIG_PAGE_POISONING_NO_SANITY N/A N/A N/A N/A
CONFIG_PAGE_POISONING_ZERO N/A N/A N/A N/A
CONFIG_PANIC_ON_OOPS y y y y
CONFIG_PANIC_TIMEOUT 0 0 0 0
CONFIG_PROC_KCORE y y y y
CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT n n n n
CONFIG_RANDOM_TRUST_BOOTLOADER y y N/A N/A
CONFIG_RANDOM_TRUST_CPU y y N/A N/A
CONFIG_REFCOUNT_FULL N/A N/A N/A N/A
CONFIG_SCHED_CORE N/A y N/A y
CONFIG_SCHED_STACK_END_CHECK y y y y
CONFIG_SECCOMP y y y y
CONFIG_SECCOMP_FILTER y y y y
CONFIG_SECURITY y y y y
CONFIG_SECURITY_DMESG_RESTRICT y y y y
CONFIG_SECURITY_LANDLOCK n n n n
CONFIG_SECURITY_LOCKDOWN_LSM y y y y
CONFIG_SECURITY_LOCKDOWN_LSM_EARLY y y y y
CONFIG_SECURITY_SELINUX_BOOTPARAM y y y y
CONFIG_SECURITY_SELINUX_DEVELOP y y y y
CONFIG_SECURITY_SELINUX_DISABLE n n N/A N/A
CONFIG_SECURITY_WRITABLE_HOOKS N/A N/A N/A N/A
CONFIG_SECURITY_YAMA y y y y
CONFIG_SHUFFLE_PAGE_ALLOCATOR y y y y
CONFIG_SLAB_FREELIST_HARDENED y y y y
CONFIG_SLAB_FREELIST_RANDOM y y y y
CONFIG_SLUB_DEBUG y y y y
CONFIG_STACKPROTECTOR y y y y
CONFIG_STACKPROTECTOR_STRONG y y y y
CONFIG_STATIC_USERMODEHELPER n n n n
CONFIG_STRICT_DEVMEM n n n n
CONFIG_STRICT_KERNEL_RWX y y y y
CONFIG_STRICT_MODULE_RWX y y y y
CONFIG_SYN_COOKIES y y y y
CONFIG_VMAP_STACK y y y y
CONFIG_WERROR n n n n
CONFIG_ZERO_CALL_USED_REGS n n n n

允許在執行時間插入/取代 ACPI 方法 (CONFIG_ACPI_CUSTOM_METHOD)

Amazon Linux 會停用此選項,因為它允許根使用者寫入任意核心記憶體。

此選項是核心自我保護專案建議設定之一。

其他二進位格式 (binfmt_misc)

雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。在 AL2023 中,此功能為選擇性,並建構作為核心模組。

BUG() 支援

此選項是核心自我保護專案建議設定之一。

BUG() 如果核心在檢查核心記憶體結構的有效性時發生資料損毀

Linux 核心的某些部分將檢查資料結構的內部一致性,並可在偵測到資料損毀時 BUG()

此選項是核心自我保護專案建議設定之一。

COMPAT_BRK

停用此選項 (這是 Amazon Linux 設定核心的方式) 時,randomize_va_space sysctl 設定預設為 2,這也會以 mmap 基礎、堆疊和 VDSO 頁面隨機化為基礎啟用堆積隨機化。

此選項存在於核心中,以提供與 1996 及更舊版本的久遠 libc.so.5 二進位檔案的相容性。

此選項是核心自我保護專案建議設定之一。

COMPAT_VDSO

此組態選項與 x86-64 相關,但與 aarch64 無關。將此項設定為 n 時,Amazon Linux 核心不會讓 32 位元虛擬動態共用物件 (VDSO) 顯示在可預測的位址。已知可透過將此選項設為 n 來破壞的最新 glibc 自 2004 年開始設為 glibc 2.3.3。

此選項是核心自我保護專案建議設定之一。

CONFIG_DEBUG 控制強化

CONFIG_DEBUG 控制的 Linux 核心組態選項通常是設計用來在核心建置中進行問題除錯,因此效能等項目不是優先事項。AL2023 會啟用CONFIG_DEBUG_LIST強化選項。

設定 IOMMU 前,在 EFI 虛設常式中停用 PCI 裝置的 DMA

雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。

在核心和使用者空間之間複製記憶體的強化

當核心需要將記憶體複製到使用者空間或從使用者空間複製記憶體時,此選項會啟用一些檢查,以防止某些類別的堆積溢位問題。

核心 4.16 到 5.15 中存在 CONFIG_HARDENED_USERCOPY_FALLBACK 選項,可協助核心開發人員透過 WARN() 找出任何遺失的 allowlist 項目。由於 AL2023 隨附 6.1 核心,此選項不再與 AL2023 相關。

核心中存在CONFIG_HARDENED_USERCOPY_PAGESPAN的選項主要做為開發人員的偵錯選項,不再適用於 AL2023 中的 6.1 核心。

此選項是核心自我保護專案建議設定之一。

休眠支援

雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。必須啟用此選項,才能支援隨需執行個體休眠的能力,並支援休眠中斷 Spot 執行個體的功能

隨機數生成

AL2023 核心設定為確保 EC2 內有足夠的熵可用。

CONFIG_INET_DIAG

雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。在 AL2023 中,此功能為選擇性,並建構作為核心模組。

將分配和解除分配的所有核心頁面和 Slab 分配器記憶體歸零

雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。這些選項在 AL2023 中會停用,因為預設啟用此功能可能會對效能造成影響。CONFIG_INIT_ON_ALLOC_DEFAULT_ON 行為可透過將 init_on_alloc=1 加入核心命令行來啟用,並可透過加入 init_on_free=1 來啟用 CONFIG_INIT_ON_FREE_DEFAULT_ON 行為。

將所有堆疊變數初始化為零 (CONFIG_INIT_STACK_ALL_ZERO)

雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。此選項需要 GCC 12 或更新版本,而 AL2023 則隨附 GCC 11。

核心模組簽署

AL2023 會簽署並驗證核心模組的簽章。為了保持與建置第三方模組之使用者的相容性,CONFIG_MODULE_SIG_FORCE 選項未啟用,因為這會要求模組具有有效的簽名。對於想要確保所有核心模組都已簽署的使用者, 鎖定 Linux 安全模組 (LSM) 可設為強制執行此操作。

kexec

雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。此選項已啟用,以便使用 kdump 功能。

IOMMU 支援

AL2023 啟用 IOMMU 支援。預設情況下,不會啟用 CONFIG_IOMMU_DEFAULT_DMA_STRICT 選項,但可以透過將 iommu.passthrough=0 iommu.strict=1 加入核心命令行來設定此功能。

kfence

雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。

舊版 pty 支援

AL2023 使用現代PTY界面 (devpts)。

此選項是核心自我保護專案建議設定之一。

鎖定 Linux 安全模組 (LSM)

AL2023 會建置 lockdown LSM,在使用安全開機時會自動鎖定核心。

CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY 選項未啟用。雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。未使用安全開機時,可以啟用鎖定 LSM 並視需要進行設定。

頁面中毒

雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。與 類似 將分配和解除分配的所有核心頁面和 Slab 分配器記憶體歸零 ,這會在 AL2023 核心中停用,因為可能會影響效能。

堆疊保護器

AL2023 核心是使用 -fstack-protector-strong選項GCC啟用的堆疊保護程式功能建置而成。

此選項是核心自我保護專案建議設定之一。

seccomp BPF API

seccomp 強化功能會由 systemd 和容器執行期等的軟體使用,以加強使用者空間應用程式。

此選項是核心自我保護專案建議設定之一。

panic() 逾時

AL2023 核心已將此值設定為 0,這表示核心不會在發生驚慌後重新啟動。雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。這可透過 sysctl/proc/sys/kernel/panic 和在核心命令行上進行設定。

安全模型

根據預設,AL2023 會在允許模式下啟用 SELinux。如需詳細資訊,請參閱設定 AL2023 的 SELinux 模式

鎖定 Linux 安全模組 (LSM) yama 模組也會啟用。

/proc/kcore

雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。

syscall 項目的核心堆疊位移隨機化

雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。這可透過在核心命令行上設定 randomize_kstack_offset=on 來啟用。

參考計數檢查 (CONFIG_REFCOUNT_FULL)

雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。由於此選項可能會對效能造成影響,因此無法正確啟用。

SMT 核心的排程器感知 (CONFIG_SCHED_CORE)

AL2023 核心是使用 建置的CONFIG_SCHED_CORE,可讓使用者空間應用程式使用 prctl(PR_SCHED_CORE)。此選項是核心自我保護專案建議設定之一。

檢查呼叫 schedule() (CONFIG_SCHED_STACK_END_CHECK) 時的堆疊損毀

AL2023 核心的建置已啟用CONFIG_SCHED_STACK_END_CHECK。此選項是核心自我保護專案建議設定之一。

記憶體分配器強化

AL2023 核心可使用 CONFIG_SHUFFLE_PAGE_ALLOCATORCONFIG_SLAB_FREELIST_HARDENEDCONFIG_SLAB_FREELIST_RANDOM選項來強化核心記憶體分配器。此選項是核心自我保護專案建議設定之一。

SLUB 除錯支援

AL2023 核心會啟用 ,CONFIG_SLUB_DEBUG因為此選項會為可在核心命令列上啟用的分配器啟用選用偵錯功能。此選項是核心自我保護專案建議設定之一。

CONFIG_STATIC_USERMODEHELPER

雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。這是因為 CONFIG_STATIC_USERMODEHELPER 需要發行版的特殊支援,且目前不存在 Amazon Linux 中。

唯讀核心文字和 rodata (CONFIG_STRICT_KERNEL_RWXCONFIG_STRICT_MODULE_RWX)

AL2023 核心設定為將核心和核心模組文字和rodata記憶體標記為唯讀,並將非文字記憶體標記為無法執行。此選項是核心自我保護專案建議設定之一。

TCP syncookie 支援 (CONFIG_SYN_COOKIES)

AL2023 核心建置時支援 TCP syncookies。此選項是核心自我保護專案建議設定之一。

有保護頁面的虛擬映射堆疊 (CONFIG_VMAP_STACK)

AL2023 核心是使用 建置CONFIG_VMAP_STACK,啟用具有保護頁面的虛擬映射核心堆疊。此選項是核心自我保護專案建議設定之一。

使用編譯器警告作為錯誤建置 (CONFIG_WERROR)

雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。

在函數退出登錄歸零 (CONFIG_ZERO_CALL_USED_REGS)

雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。

使用者空間分配的最小地址

此強化選項有助於減輕核心 NULL 指標錯誤的影響。此選項是核心自我保護專案建議設定之一。

clang 特定的強化選項

AL2023 核心是使用 GCC 而非 建置clang,因此無法啟用CONFIG_CFI_CLANG強化選項,這也使 CONFIG_CFI_PERMISSIVE 不適用。雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。

x86-64 特定核心強化選項

CONFIG 選項 AL2023/6.1/aarch64 AL2023/6.1/x86_64 AL2023/6.12/aarch64 AL2023/6.12/x86_64
CONFIG_AMD_IOMMU N/A y N/A y
CONFIG_AMD_IOMMU_V2 N/A y N/A N/A
CONFIG_IA32_EMULATION N/A y N/A y
CONFIG_INTEL_IOMMU N/A y N/A y
CONFIG_INTEL_IOMMU_DEFAULT_ON N/A n N/A n
CONFIG_INTEL_IOMMU_SVM N/A n N/A n
CONFIG_LEGACY_VSYSCALL_NONE N/A n N/A n
CONFIG_MODIFY_LDT_SYSCALL N/A n N/A n
CONFIG_PAGE_TABLE_ISOLATION N/A y N/A N/A
CONFIG_RANDOMIZE_MEMORY N/A y N/A y
CONFIG_X86_64 N/A y N/A y
CONFIG_X86_MSR N/A y N/A y
CONFIG_X86_VSYSCALL_EMULATION N/A y N/A y
CONFIG_X86_X32 N/A N/A N/A N/A
CONFIG_X86_X32_ABI N/A n N/A n

x86-64 支援

基本 x86-64 支援包括實體位址延伸 (PAE) 和無執行 (NX) 位元支援。此選項是核心自我保護專案建議設定之一。

AMD 和 Intel IOMMU 支援

AL2023 核心建置支援 AMD 和 Intel IOMMUs。此選項是核心自我保護專案建議設定之一。

未設定 CONFIG_INTEL_IOMMU_DEFAULT_ON 選項,但可透過將 intel_iommu=on 傳遞至核心命令行來啟用。雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。

目前在 AL2023 中未啟用 CONFIG_INTEL_IOMMU_SVM選項。雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。

32 位元使用者空間的支援

重要

對 32 位元 x86 使用者空間的支援已棄用,在未來的 Amazon Linux 主要版本中,可能會移除對執行 32 位元使用者空間二進位檔案的支援。

注意

雖然 AL2023 不再包含任何 32 位元套件,但核心仍會支援執行 32 位元使用者空間。如需詳細資訊,請參閱32 位元 x86 (i686) 套件

為了支援執行 32 位元使用者空間應用程式,AL2023 不會啟用 CONFIG_X86_VSYSCALL_EMULATION選項,並啟用 CONFIG_IA32_EMULATIONCONFIG_COMPATCONFIG_X86_VSYSCALL_EMULATION選項。雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。

未啟用 64 位元處理器的 x32 原生 32 位元 ABI (CONFIG_X86_X32CONFIG_X86_X32_ABI)。此選項是核心自我保護專案建議設定之一。

x86 模型特定暫存器 (MSR) 支援

CONFIG_X86_MSR 選項已啟用以支援 turbostat。雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。

modify_ldt syscall

AL2023 不允許使用者程式使用 modify_ldt syscall 修改 x86 Local Descriptor Table (LDT)。執行 16 位元或分段程式碼需要此呼叫,缺少此呼叫可能會破壞 dosemu 等的軟體、在 WINE 下執行某些程式,以及非常舊的執行緒庫。此選項是核心自我保護專案建議設定之一。

在使用者模式下移除核心對應

AL2023 會設定核心,讓大部分的核心地址不會映射到使用者空間。此選項是核心自我保護專案建議設定之一。

隨機化核心記憶體區段

AL2023 會設定核心,以隨機化核心記憶體區段的基本虛擬地址。此選項是核心自我保護專案建議設定之一。

aarch64 特定核心強化選項

CONFIG 選項 AL2023/6.1/aarch64 AL2023/6.1/x86_64 AL2023/6.12/aarch64 AL2023/6.12/x86_64
CONFIG_ARM64_BTI y N/A y N/A
CONFIG_ARM64_BTI_KERNEL N/A N/A N/A N/A
CONFIG_ARM64_PTR_AUTH y N/A y N/A
CONFIG_ARM64_PTR_AUTH_KERNEL y N/A y N/A
CONFIG_ARM64_SW_TTBR0_PAN y N/A y N/A
CONFIG_UNMAP_KERNEL_AT_EL0 y N/A y N/A

分支目標識別

AL2023 核心支援分支目標識別 (CONFIG_ARM64_BTI)。此選項是核心自我保護專案建議設定之一。

CONFIG_ARM64_BTI_KERNEL 選項在 AL2023 中未啟用,因為它是使用 GCC 建置,並且由於 gcc 錯誤上游核心目前已停用對使用此選項建置核心的支援。雖然此選項是核心自我保護專案 (KSPP) 建議設定之一,但 AL2023 並未將此組態選項設為 KSPP 建議的選項。

指標驗證 (CONFIG_ARM64_PTR_AUTH)

AL2023 核心建置時支援指標身分驗證延伸 (ARMv8.3 延伸的一部分),可用於協助緩解傳回導向程式設計 (ROP) 技術。Graviton 3 已推出對 Graviton 進行指標驗證所需的硬體支援。

CONFIG_ARM64_PTR_AUTH 選項已啟用,並為使用者空間提供指標驗證的支援。由於 CONFIG_ARM64_PTR_AUTH_KERNEL選項也已啟用,AL2023 核心能夠自行使用傳回地址保護。

此選項是核心自我保護專案建議設定之一。

模擬特權存取永不使用 TTBR0_EL1 切換

此選項可防止核心直接存取使用者空間記憶體,只會由使用者存取常式將 TTBR0_EL1 暫時設定為有效值。

此選項是核心自我保護專案建議設定之一。

在使用者空間中執行時取消對應核心

AL2023 核心設定為在使用者空間 () 中執行時取消核心映射CONFIG_UNMAP_KERNEL_AT_EL0。此選項是核心自我保護專案建議設定之一。

隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。