首页主机资讯centos stream8用户权限如何设置

centos stream8用户权限如何设置

时间2025-10-11 12:37:03发布访客分类主机资讯浏览813
导读:CentOS Stream 8 用户权限设置指南 在CentOS Stream 8中,用户权限管理需遵循最小权限原则,通过用户/组管理、文件权限控制、sudo权限配置及SELinux等机制,确保系统安全。以下是具体操作步骤: 一、用户与用户...

CentOS Stream 8 用户权限设置指南

在CentOS Stream 8中,用户权限管理需遵循最小权限原则,通过用户/组管理、文件权限控制、sudo权限配置及SELinux等机制,确保系统安全。以下是具体操作步骤:

一、用户与用户组管理

用户权限的基础是合理划分用户和组。常用命令如下:

  • 创建用户:使用useradd命令创建新用户(-m选项自动创建家目录)。
    sudo useradd -m newuser  # 创建用户newuser并生成家目录
    
  • 设置用户密码:通过passwd命令为用户设置初始密码。
    sudo passwd newuser  # 交互式设置密码
    
  • 修改用户所属组:使用usermod命令将用户添加到指定组(-aG表示追加到附加组,避免移除原有组)。
    sudo usermod -aG developers newuser  # 将newuser添加到developers组
    
  • 创建用户组:使用groupadd命令创建新组。
    sudo groupadd developers  # 创建developers组
    
  • 删除用户/组userdel删除用户(-r选项同时删除家目录),groupdel删除组。
    sudo userdel -r olduser  # 删除olduser及家目录
    sudo groupdel oldgroup   # 删除oldgroup
    

二、文件与目录权限管理

文件权限控制需明确所有者、所属组、其他用户的三类权限(读r、写w、执行x),常用命令如下:

  • 查看权限:使用ls -l命令查看文件/目录的权限详情(如-rw-r--r--表示所有者有读写权限,组和其他用户有读权限)。
    ls -l /path/to/file  # 查看文件权限
    
  • 修改权限(数字表示法):用三位八进制数表示权限(4=读、2=写、1=执行),例如:
    sudo chmod 755 /path/to/directory  # 所有者:rwx(7),组和其他用户:r-x(5)
    sudo chmod 644 /path/to/file       # 所有者:rw-(6),组和其他用户:r--(4)
    
  • 修改权限(符号表示法):针对用户(u)、组(g)、其他用户(o)或所有用户(a)增减权限,例如:
    sudo chmod u+x script.sh  # 给所有者添加执行权限
    sudo chmod g-w config.ini # 移除组的写权限
    
  • 修改属主/属组:使用chown修改文件所有者,chgrp修改所属组(可同时修改两者)。
    sudo chown newuser:newgroup /path/to/file  # 同时修改属主和属组
    sudo chown newuser /path/to/file         # 仅修改属主
    sudo chgrp newgroup /path/to/file        # 仅修改属组
    
  • 特殊权限
    • SUID:使文件执行时拥有所有者权限(如/usr/bin/passwd),命令:chmod u+s file
    • SGID:使目录下新文件继承目录的组(如/var/www),命令:chmod g+s directory
    • 粘滞位:防止目录内文件被非所有者删除(如/tmp),命令:chmod +t directory

三、sudo权限配置

sudo允许普通用户以root身份执行特定命令,需通过visudo命令安全编辑/etc/sudoers文件:

  • 赋予用户全部sudo权限:在/etc/sudoers中添加以下行(无需密码):
    username ALL=(ALL) NOPASSWD: ALL  # username可执行所有命令
    
  • 限制用户执行特定命令:仅允许用户执行/usr/bin/apt/usr/bin/systemctl
    username ALL=(ALL) NOPASSWD: /usr/bin/apt, /usr/bin/systemctl  # 限制命令范围
    
  • 将用户加入sudo组:默认情况下,sudo组成员拥有sudo权限,可通过usermod添加:
    sudo usermod -aG sudo newuser  # 将newuser加入sudo组
    

四、SELinux配置(可选但推荐)

SELinux提供强制访问控制(MAC),进一步增强权限安全性:

  • 检查SELinux状态:使用sestatus命令查看是否启用(Enforcing为启用状态)。
    sestatus  # 输出SELinux状态
    
  • 临时关闭SELinux:使用setenforce命令(重启后恢复)。
    sudo setenforce 0  # 临时设置为Permissive模式(仅记录不阻止)
    
  • 永久关闭SELinux:编辑/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=disabled(需重启系统)。
    sudo vi /etc/selinux/config  # 修改SELINUX配置
    
  • 调整SELinux策略:若需允许httpd访问特定目录,可使用semanagerestorecon
    sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html(/.*)?"  # 添加SELinux上下文
    sudo restorecon -Rv /var/www/html  # 恢复目录的SELinux上下文
    

五、密码策略强化

强密码是权限安全的第一道防线,需遵循以下规则:

  • 设置复杂密码:要求包含大写字母、小写字母、数字和特殊字符,长度≥10位。
  • 检查空口令账号:使用awk命令查找/etc/shadow中的空口令账户(第二字段为空),并强制设置密码:
    awk -F: '($2 == "") {
    print $1}
        ' /etc/shadow  # 查找空口令用户
    sudo passwd emptyuser  # 为emptyuser设置密码
    
  • 保护口令文件:使用chattr命令将/etc/shadow设为不可修改(防止非授权删除或修改)。
    sudo chattr +i /etc/shadow  # 锁定文件
    sudo chattr -i /etc/shadow  # 解锁文件(需修改时)
    

通过以上步骤,可实现CentOS Stream 8用户权限的精细化管理。操作前需确认备份重要数据,避免误操作导致系统故障。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: centos stream8用户权限如何设置
本文地址: https://pptw.com/jishu/723489.html
phpstorm支持centos的哪些数据库 phpstorm能否在centos上远程连接

游客 回复需填写必要信息