在RHCE(Red Hat Certified Engineer)技术培训中,用户管理是一项关键技能,它涉及到Linux操作系统中用户和组的创建、管理、权限控制以及安全性。在"用户管理介绍"这一单元中,我们将深入探讨以下几个核心概念:
1. **添加新用户账户**:使用`useradd`命令来创建新用户,这会更新`/etc/passwd`、`/etc/shadow`、`/etc/group`和`/etc/gshadow`等文件,并为用户创建主目录,设置权限和拥有者。使用`passwd`命令为新用户设置密码,而`newusers`可以批量添加用户账户。
2. **用户专用组**:当创建用户时,会同步创建一个与用户名相同的专用组。用户被分配到这个组,新创建的文件默认属于这个专用组,这样可以避免文件归公共组所有,提高安全性,但可能引发过度开放的共享问题。
3. **修改/删除用户账户**:通过`usermod`命令可以修改用户账户的属性,如修改用户信息或更改用户组。使用`userdel`命令删除用户,可选`-r`选项会一并删除用户的主目录。
4. **组管理**:`groupadd`、`groupmod`和`groupdel`分别用于添加、修改和删除组。通过修改`/etc/group`和`/etc/gshadow`文件可以管理组信息。
5. **密码时效策略**:默认情况下,Linux系统中的密码不会自动过期。通过修改`/etc/login.defs`文件可以设置密码有效期,使用`chage`命令可以更改单个用户的密码过期策略。
6. **账户切换**:`su`命令允许用户切换到其他用户,特别是root用户。`sudo`命令则允许非root用户以超级用户权限执行特定命令,其配置在`/etc/sudoers`文件中。
7. **网络用户验证**:包括NIS(Network Information Service)和LDAP(Lightweight Directory Access Protocol)等网络服务,可以在多台机器间集中管理用户信息。`system-config-authentication`和`authconfig-tui`工具可以帮助配置这些服务。
8. **示例配置**:NIS配置涉及安装`ypbind`和`portmap`,然后使用`system-config-authentication`配置NIS服务器和域名。LDAP配置需要`nss-ldap`和`openldap`,同样通过`system-config-authentication`配置服务器、搜索基DN和TLS。
9. **SUID、SGID和Sticky Bit**:这些是Linux中的特殊权限,SUID(Set User ID)允许非所有者以所有者的权限运行文件,SGID(Set Group ID)类似但作用于组,Sticky Bit常用于目录,防止用户删除不属于自己的文件。
10. **访问控制列表(ACL)**:超越传统文件权限系统,ACL允许更细粒度的权限控制,可以指定多个用户或组对文件或目录的访问权限。
11. **SELinux**:Security-Enhanced Linux提供强制访问控制,增强系统的安全性。它的目标策略定义了系统中每个对象的安全上下文,`semanage`等工具用于管理和配置SELinux策略。
通过学习和实践这些概念,RHCE候选人将能够更好地理解和管理Linux环境中的用户账户,提升系统的安全性与效率。