CentOS FetchLinux用户权限管理指南
用户账户是权限管理的基础,需通过命令行工具完成创建、修改、删除等操作,确保只有授权用户能访问系统资源。
useradd
命令创建用户(如sudo useradd newuser
);若需设置密码,通过passwd
命令完成(sudo passwd newuser
)。sudo usermod -l newname oldname
(如将olduser
改为newuser
);sudo usermod -aG groupname username
(将用户添加到指定组,-aG
表示追加组,避免移除原有组);sudo usermod -d /new/home/directory username
(如将用户主目录改为/home/newhome
)。userdel
命令删除用户(sudo userdel username
);若需同时删除用户主目录及内容,添加-r
选项(sudo userdel -r username
)。id username
:查看用户的UID(用户ID)、GID(组ID)及所属组;getent passwd username
:查询系统中的用户详细信息(如用户名、密码占位符、UID、GID、主目录、默认shell)。用户组用于批量管理用户权限,简化权限分配流程。
groupadd
命令(如sudo groupadd devgroup
,创建名为devgroup
的开发组)。sudo gpasswd -a username groupname
(如sudo gpasswd -a newuser devgroup
);sudo gpasswd -d username groupname
(如sudo gpasswd -d newuser devgroup
);sudo groupdel groupname
(如sudo groupdel devgroup
,需确保组内无用户)。文件与目录的权限设置直接影响用户对资源的访问能力,需结合chmod
、chown
、chgrp
命令调整。
chmod
命令,通过数字或符号模式设置权限:
sudo chmod 755 filename
(所有者具读、写、执行权限7
,组用户与其他用户具读、执行权限5
);sudo chmod u+x,g-w,o=r filename
(所有者添加执行权限+x
,组用户移除写权限-w
,其他用户设置读权限=r
)。chown
命令:sudo chown owner:group filename
(如sudo chown newuser:devgroup config.conf
,将文件所有者设为newuser
,所属组设为devgroup
);chgrp
命令:sudo chgrp groupname filename
(仅修改所属组,如sudo chgrp devgroup data/
)。若FetchLinux作为服务运行,需确保服务进程具备正确的用户权限,避免权限过高导致安全风险。
/etc/sysconfig/fetchlinux
或/etc/default/fetchlinux
),调整USER
和GROUP
参数(如USER=fetchlinux
,GROUP=fetchlinux
)。systemctl
命令重启服务(sudo systemctl restart fetchlinux
)。为提升系统安全性,需结合特殊权限、SELinux及日志审计强化权限管理。
setfacl
命令实现精细化权限控制(如sudo setfacl -m u:username:rwx /path/to/dir
,给指定用户添加目录的读、写、执行权限);umask
命令设置(如umask 022
,新文件的默认权限为644
,目录为755
)。semanage
或setsebool
命令调整策略(如sudo setsebool -P fetchlinux_port_t 1
,允许FetchLinux服务使用特定端口)。journalctl
命令查看服务日志(sudo journalctl -u fetchlinux
),跟踪用户操作与权限变更,及时发现异常行为。