作为Linux系统管理员,有效管理用户权限和访问控制是核心职责之一。以下是Linux权限管理的全面指南:
sudo useradd -m username
(创建用户并建立家目录)sudo passwd username
sudo userdel -r username
(-r选项删除家目录)sudo usermod [options] username
sudo usermod -l newname oldname
sudo usermod -g groupname username
sudo groupadd groupname
sudo usermod -aG groupname username
sudo groupdel groupname
groups username
Linux文件有三种权限: - r (read):读取权限 - w (write):写入权限 - x (execute):执行权限
权限分为三组: - 所有者(user) - 所属组(group) - 其他用户(other)
查看权限:ls -l
显示如 -rwxr-xr--
chmod命令:
chmod 755 filename
(7=rwx, 5=r-x, 5=r-x)chmod u+x,g-w,o=r filename
chown命令(修改所有者):
sudo chown user:group filename
sudo chown -R user:group directory/
(递归修改)允许更细粒度的权限控制:
- 查看ACL:getfacl filename
- 设置ACL:
- setfacl -m u:username:rwx filename
(为用户设置权限)
- setfacl -m g:groupname:r-x filename
(为组设置权限)
- setfacl -R -m u:username:rwx directory/
(递归设置)
- 删除ACL条目:setfacl -x u:username filename
chmod u+s file
(执行时以所有者身份运行)chmod g+s file
(执行时以所属组身份运行)chmod +t directory
(只有文件所有者能删除)使用visudo
命令编辑/etc/sudoers
:
username ALL=(ALL) ALL # 授予所有权限
%groupname ALL=(ALL) ALL # 授予组所有权限
username ALL=(ALL) NOPASSWD: ALL # 无需密码
username ALL=(ALL) /usr/bin/apt
username ALL=(ALL) /usr/bin/apt install *
auditd
监控系统活动/etc/login.defs
和PAM模块PermitRootLogin no
cat /etc/passwd
sudo -l
find / -perm -4000 -type f
last
who
w
stat filename
find / -perm -2 -type f
通过合理组合这些工具和技术,您可以构建一个既安全又高效的Linux权限管理系统。