A Comparative Overview of SELinux, AppArmor, Yama, TOMOYO Linux, and Smack
In the world of Linux security, several Linux Security Modules (LSMs) have been developed to enhance access control and provide mandatory…
A Comparative Overview of SELinux, AppArmor, Yama, TOMOYO Linux, and Smack
In the world of Linux security, several Linux Security Modules (LSMs) have been developed to enhance access control and provide mandatory access control (MAC) mechanisms. Let’s explore five popular LSMs: SELinux, AppArmor, Yama, TOMOYO Linux, and Smack. Each of these modules offers unique features and approaches to bolstering the security posture of Linux-based systems.
SELinux:
- Developed by the National Security Agency (NSA), SELinux is widely adopted in mainstream RHEL-based distributions.
- Implements MAC with fine-grained access controls, allowing administrators to define extensive security policies.
- Enforces access controls based on security labels, providing powerful isolation and protection against privilege escalation.
- Requires a specific kernel build with SELinux support, and policies can be complex to configure and manage.
- Documentation: SELinux Project
AppArmor:
- AppArmor is integrated into mainstream Ubuntu-based distributions and provides profile-based access control.
- Offers pre-configured profiles for commonly used applications, simplifying the setup and management of security policies.
- Uses path-based access control to restrict access to files and resources, enhancing application-level security.
- Provides a balance between security and usability, making it more approachable for many users.
- Documentation: AppArmor Wiki
Yama:
- Yama focuses on process-related security features, allowing fine-grained restrictions on process operations.
- It enables administrators to limit process tracing, prevent process attachment, and restrict process capabilities.
- Available in some mainstream distributions such as Fedora, Yama provides additional process-level security controls.
- Documentation: Yama Documentation
TOMOYO Linux:
- TOMOYO Linux employs a lightweight and pathname-based access control mechanism.
- Administrators define policies based on paths, executables, and attributes, reducing complexity.
- Offers a white-listing approach to security, allowing only explicitly permitted operations and enhancing security through simplicity.
- Limited usage compared to SELinux and AppArmor, typically found in specific distributions and niche use cases.
- Documentation: TOMOYO Linux Documentation
Smack:
- Smack, a lightweight labeling-based access control LSM, focuses on simplicity and flexibility.
- Uses security labels assigned to processes and files to enforce access control policies.
- Smack’s labeling approach enables fine-grained access control, enhancing security in a lightweight manner.
- Not included by default in mainstream distributions but can be enabled with a specific kernel build.
- Documentation: Smack Documentation
Comparison Table

When selecting an LSM, it is crucial to consider the specific requirements, complexity, and community support to ensure an optimal security solution for your Linux environment. Consult the provided documentation for each LSM to gain a deeper understanding of their features and configuration options.
메타데이터
- post_id
- bf7f0a1789cf
- slug
- a-comparative-overview-of-selinux-apparmor-yama-tomoyo-linux-and-smack-bf7f0a1789cf
- url
- https://medium.com/@santosomar/a-comparative-overview-of-selinux-apparmor-yama-tomoyo-linux-and-smack-bf7f0a1789cf
- canonical_url
- https://medium.com/@santosomar/a-comparative-overview-of-selinux-apparmor-yama-tomoyo-linux-and-smack-bf7f0a1789cf
- author_url
- https://medium.com/@santosomar
- status
- ok
- fetched_at
- 2026-08-06 14:48:08