Linux 系统帐户管理:深入指南270
在 Linux 操作系统中,帐户管理是至关重要的系统管理任务之一。它涉及创建、修改和删除用户和组帐户,以及管理这些帐户的权限和特权。对 Linux 帐户管理的深入理解对于保护系统安全和维护其稳定运行至关重要。
用户帐户
用户帐户代表个人或进程在系统中的身份。每个用户帐户都有一个唯一的用户名、密码和 UID(用户 ID)。创建用户帐户时,通常会指定一个主组,该组定义了该用户默认拥有的权限。用户还可能属于其他附加组,这些组授予对特定资源或功能的访问权限。
创建用户帐户
要创建用户帐户,请使用 `useradd` 命令。该命令需要提供用户名、密码、主组和其他可选参数,例如注释和 shell。```
sudo useradd -m -d /home/username -G groupname username
```
修改用户帐户
要修改现有用户帐户,请使用 `usermod` 命令。该命令允许更改用户名、密码、主组、附加组和其他属性。```
sudo usermod -G newgroupname -d /new/home/directory username
```
删除用户帐户
要删除用户帐户,请使用 `userdel` 命令。该命令将删除用户帐户及其主目录,但不会删除该用户拥有的文件或目录。```
sudo userdel username
```
组帐户
组帐户是用户帐户的集合。它们用于简化权限管理,允许管理员一次为多个用户分配权限。每个组都有一个唯一的组名和 GID(组 ID)。
创建组帐户
要创建组帐户,请使用 `groupadd` 命令。该命令需要提供组名和可选参数,例如组 ID 和注释。```
sudo groupadd groupname
```
修改组帐户
要修改现有组帐户,请使用 `groupmod` 命令。该命令允许更改组名、组 ID 和注释。```
sudo groupmod -n newgroupname groupname
```
删除组帐户
要删除组帐户,请使用 `groupdel` 命令。该命令将删除组帐户及其成员资格,但不会删除属于该组的用户帐户。```
sudo groupdel groupname
```
权限管理
在 Linux 中,权限通过文件或目录的属性进行管理。这些属性包括所有者、组和其他人对文件或目录的读、写和执行权限。
更改文件或目录权限
要更改文件或目录的权限,请使用 `chmod` 命令。该命令允许通过八进制或符号模式指定权限。```
sudo chmod 755 filename
sudo chmod o+w filename
```
更改文件或目录所有者
要更改文件或目录的所有者,请使用 `chown` 命令。该命令需要指定新所有者的用户名或 UID。```
sudo chown username filename
sudo chown 1000 filename
```
更改文件或目录组
要更改文件或目录的组,请使用 `chgrp` 命令。该命令需要指定新组的组名或 GID。```
sudo chgrp groupname filename
sudo chgrp 100 filename
```
其他帐户相关命令* passwd:更改用户密码。
* chage:管理用户帐户密码到期和最小年龄。
* su:以另一个用户身份运行命令。
* sudo:授予用户临时超级用户权限。
* users:显示当前登录用户列表。
* whoami:显示当前登录用户的用户名。
最佳实践* 使用强密码并定期更改密码。
* 谨慎授予 sudo 权限。
* 启用两因素认证(2FA)。
* 定期审核用户帐户和组帐户。
* 实施访问控制列表 (ACL) 以实现细粒度的权限管理。
* 使用入侵检测系统 (IDS) 和入侵防御系统 (IPS) 来检测和阻止未经授权的访问。
2025-01-03