Fedora 40 แนะนำให้เปิดใช้งานการตั้งค่าการแยกสำหรับบริการระบบ systemd ที่เปิดใช้งานตามค่าเริ่มต้น เช่นเดียวกับบริการที่มีแอปพลิเคชันที่สำคัญเช่น PostgreSQL, Apache httpd, Nginx และ MariaDB คาดว่าการเปลี่ยนแปลงจะเพิ่มความปลอดภัยของการแจกจ่ายในการกำหนดค่าเริ่มต้นอย่างมาก และจะทำให้สามารถบล็อกช่องโหว่ที่ไม่รู้จักในบริการของระบบได้ ข้อเสนอดังกล่าวยังไม่ได้รับการพิจารณาโดย FESCo (คณะกรรมการกำกับดูแลด้านวิศวกรรมของ Fedora) ซึ่งมีหน้าที่รับผิดชอบในส่วนทางเทคนิคของการพัฒนาการจัดจำหน่าย Fedora ข้อเสนออาจถูกปฏิเสธในระหว่างกระบวนการตรวจสอบของชุมชน
การตั้งค่าที่แนะนำเพื่อเปิดใช้งาน:
- PrivateTmp=yes - จัดเตรียมไดเร็กทอรีแยกต่างหากพร้อมไฟล์ชั่วคราว
- ProtectSystem=yes/full/strict — ติดตั้งระบบไฟล์ในโหมดอ่านอย่างเดียว (ในโหมด “เต็ม” - /etc/ ในโหมดเข้มงวด - ระบบไฟล์ทั้งหมดยกเว้น /dev/, /proc/ และ /sys/)
- ProtectHome=yes—ปฏิเสธการเข้าถึงโฮมไดเร็กทอรีของผู้ใช้
- PrivateDevices=yes - ปล่อยให้เข้าถึงได้เฉพาะ /dev/null, /dev/zero และ /dev/random
- ProtectKernelTunables=yes - เข้าถึง /proc/sys/, /sys/, /proc/acpi, /proc/fs, /proc/irq ฯลฯ แบบอ่านอย่างเดียว
- ProtectKernelModules=yes - ห้ามไม่ให้โหลดโมดูลเคอร์เนล
- ProtectKernelLogs=yes - ห้ามการเข้าถึงบัฟเฟอร์ด้วยบันทึกของเคอร์เนล
- ProtectControlGroups=yes - เข้าถึง /sys/fs/cgroup/ แบบอ่านอย่างเดียว
- NoNewPrivileges=yes - ห้ามการยกระดับสิทธิ์ผ่านการตั้งค่าสถานะ setuid, setgid และความสามารถ
- PrivateNetwork=yes - การวางตำแหน่งในเนมสเปซที่แยกต่างหากของสแต็กเครือข่าย
- ProtectClock=yes—ห้ามเปลี่ยนเวลา
- ProtectHostname=yes - ห้ามไม่ให้เปลี่ยนชื่อโฮสต์
- ProtectProc=invisible - ซ่อนกระบวนการของผู้อื่นใน /proc
- ผู้ใช้= - เปลี่ยนผู้ใช้
นอกจากนี้ คุณอาจพิจารณาเปิดใช้งานการตั้งค่าต่อไปนี้:
- CapabilityBoundingSet=
- DevicePolicy=ปิด
- KeyringMode=ส่วนตัว
- ล็อคบุคลิกภาพ=ใช่
- MemoryDenyWriteExecute=ใช่
- ผู้ใช้ส่วนตัว=ใช่
- RemoveIPC=ใช่
- RestrictAddressFamilies=
- จำกัดเนมสเปซ=ใช่
- จำกัดเรียลไทม์=ใช่
- จำกัดSUIDSGID=ใช่
- SystemCallFilter=
- SystemCallArchitectures=เนทีฟ
ที่มา: opennet.ru