Implement and Verify Access Control Lists (ACLs)
in Linux
1. Problem / Question
To implement and verify Access Control Lists (ACLs) in Linux to enhance file security by assigning specific
read and write permissions to individual users and groups beyond the traditional owner-group-others
model.
2. Objective
• To understand the concept of Access Control Lists (ACLs) in Linux.
• To assign custom read/write permissions to specific users and groups.
• To verify and analyze the effectiveness of ACLs in controlling file access.
3. Tools Required
• Linux Operating System (Ubuntu / CentOS / Kali / Fedora)
• Terminal / Command Line Interface
• ACL utilities:
• setfacl
• getfacl
• User accounts for testing (e.g., user1, user2)
4. Procedure
1. Check if ACL is enabled:
mount | grep acl
2. Install ACL package (if not installed):
sudo apt install acl # For Debian/Ubuntu
sudo yum install acl # For CentOS/RHEL
3. Create users and group:
1
sudo adduser user1
sudo adduser user2
sudo groupadd devgroup
sudo usermod -aG devgroup user2
4. Create a file for testing:
touch [Link]
echo "Confidential Data" > [Link]
5. Set ACL permissions:
6. Give read & write permission to user1:
setfacl -m u:user1:rw [Link]
7. Give read-only permission to group devgroup:
setfacl -m g:devgroup:r [Link]
8. Verify ACL permissions:
getfacl [Link]
5. Program (Commands Used)
# Create file
touch [Link]
# Assign ACL to user1
setfacl -m u:user1:rw [Link]
# Assign ACL to group devgroup
setfacl -m g:devgroup:r [Link]
2
# View ACL entries
getfacl [Link]
6. Data Analysis
• user1 can read and modify the file due to rw permission.
• Members of devgroup can only read the file and cannot modify it.
• Other users not specified in ACL follow default Linux permissions.
• ACL provides fine-grained control compared to traditional chmod permissions.
7. Output
Sample output of getfacl [Link]:
# file: [Link]
# owner: root
# group: root
user::rw-
user:user1:rw-
group::r--
group:devgroup:r--
mask::rw-
other::r--
8. Inference
Access Control Lists (ACLs) allow precise permission management by granting customized access rights to
specific users and groups. This enhances file security by ensuring that only authorized users can perform
specific operations. ACLs are highly useful in multi-user Linux environments where detailed permission
control is required beyond standard file permissions.
✅ Hence, ACL implementation in Linux was successfully verified and demonstrated enhanced file security.