在Linux系统中,管理用户权限主要涉及到以下几个方面:
useradd
命令创建新用户。sudo useradd username
passwd
命令为新用户设置密码。sudo passwd username
userdel
命令删除用户。sudo userdel username
groupadd
命令创建新用户组。sudo groupadd groupname
usermod
命令将用户添加到指定组。sudo usermod -aG groupname username
groupdel
命令删除用户组。sudo groupdel groupname
查看权限:使用ls -l
命令查看文件或目录的权限。
ls -l /path/to/file_or_directory
修改权限:使用chmod
命令修改文件或目录的权限。
sudo chmod 755 /path/to/file_or_directory
权限模式755
表示:
7
(所有者):读、写、执行5
(组用户):读、执行5
(其他用户):读、执行修改所有权:使用chown
命令修改文件或目录的所有者和组。
sudo chown username:groupname /path/to/file_or_directory
SUID
(Set User ID):使文件在执行时以文件所有者的权限运行。sudo chmod u+s /path/to/executable
SGID
(Set Group ID):使文件在执行时以文件所属组的权限运行,或使目录中的新文件继承目录的组。sudo chmod g+s /path/to/directory
sudo tune2fs -o acl /dev/sdXn
sudo mount -o remount /mount_point
setfacl
命令设置文件或目录的ACL。sudo setfacl -m u:username:rwx /path/to/file_or_directory
sudo setfacl -m g:groupname:rwx /path/to/file_or_directory
SELinux:一种强制访问控制(MAC)系统,提供更细粒度的安全控制。
sestatus
sudo setenforce 0 # 临时设置为permissive模式
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config # 永久禁用
AppArmor:另一种MAC系统,通过配置文件定义程序的访问权限。
sudo aa-status
sudo systemctl enable apparmor
sudo systemctl start apparmor
通过以上方法,可以有效地管理Linux系统中的用户权限,确保系统的安全性和稳定性。