Linux虚拟机权限设置指南
权限管理是Linux虚拟机安全运维的核心,合理的权限配置能有效防止误操作、保障系统稳定。以下从基础命令、用户组管理、sudo配置等方面详细说明:
chmod用于调整文件或目录的读(r)、写(w)、执行(x)权限,支持符号表示法(如u+x给所有者加执行权限)和数字表示法(如755对应rwxr-xr-x)。
chmod 744 filenamechmod u+x script.shchmod g-w data.txtchown用于变更文件/目录的所有者或所属组,格式为chown [所有者]:[所属组] 文件名。
alice:sudo chown alice filenamedevelopers组):sudo chown alice:developers filenamesudo,避免权限不足。用户组是权限批量管理的核心工具,通过将用户加入同一组,可统一分配权限。
使用groupadd命令创建新组(如project组):
sudo groupadd project。
使用usermod命令将用户加入组(-aG表示追加,避免移除原有组):
sudo usermod -aG project alice
注意:用户需重新登录才能使组权限生效。
用groups命令查看当前用户的组信息:
groups alice(输出示例:alice : alice project)。
sudo允许普通用户临时获得root权限,通过/etc/sudoers文件控制权限范围。
必须使用visudo命令(自动检查语法,避免配置错误):
sudo visudo
bob执行所有命令:bob ALL=(ALL) ALLcharlie仅执行重启命令:charlie ALL=(ALL) /sbin/rebootdevelopers组用户执行所有命令(无需密码):%developers ALL=(ALL) NOPASSWD: ALL。用sudo -l -U 用户名查看用户sudo权限(如sudo -l -U alice),或直接执行测试命令(如sudo ls /root)。
当基础权限无法满足细粒度需求时,可使用ACL为特定用户/组分配权限。
多数Linux发行版默认启用ACL,若未启用,可通过tune2fs命令开启(针对ext文件系统):
sudo tune2fs -o acl /dev/sdX(/dev/sdX为虚拟机磁盘分区)。
eve添加对data.txt的读写权限:setfacl -m u:eve:rw data.txtproject添加对project_dir的执行权限:setfacl -m g:project:x project_dirgetfacl data.txt。sudo,减少误操作风险。ls -l查看文件权限,last查看登录记录,auditd监控用户活动。sudo cp /etc/sudoers /etc/sudoers.bak),防止语法错误导致系统无法登录。w)。