SELinux is a Linux security module that provides mandatory access controls. It labels important system objects like processes, files, and network packets. These labels contain security context information used by SELinux policies to enforce access rules between subjects and objects. The SELinux policy is compiled and loaded into the kernel, where Linux Security Modules hooks mediate critical operations according to the policy.