Linux服务器用户权限分配实操

为什么要管好Linux用户权限

多用户共用的服务器上,权限混乱会导致数据泄露、误删文件、配置冲突。
合理分配用户权限,既能保证各自工作区隔离,又能让需要管理员权限的人通过 sudo 临时提权,而不用直接使用 root。
下面从最基础的创建用户开始,一步步带你完成权限分配。

---

准备工作:一个可 SSH 登录的 Linux 服务器

你只需要一台跑 CentOS 7/8、Ubuntu 20.04/22.04 或 Debian 11/12 的服务器,并且已经能用 root 或拥有 sudo 权限的账号通过 SSH 远程连接。
如果没有现成用户,请先以 root 登录。

如果还没有 SSH 连接工具,推荐使用 Terminal(macOS/Linux)或 Xshell/PuTTY(Windows)。

---

第一步:创建新用户并设置密码

登录服务器后,执行以下命令创建一个名为 devuser 的普通用户:

useradd -m -s /bin/bash devuser

参数说明:-m 创建同名家目录 /home/devuser-s 指定默认 Shell 为 bash。
接着设置密码:

passwd devuser

系统会提示输入两次密码(输入时不显示字符),设置成功后会显示 passwd: all authentication tokens updated successfully

---

第二步:将用户添加到特定用户组

用户组方便批量管理权限。
例如,如果想给 devuser 分配 docker 组(如果已安装 Docker),执行:

usermod -aG docker devuser

常见组:sudo(Ubuntu/Debian)或 wheel(CentOS/RHEL)代表管理员组。添加组后需要重新登录才能生效

---

第三步:赋予普通用户 sudo 权限

为了安全,不应直接让用户使用 root。
正确做法是通过 /etc/sudoers 文件配置 sudo 权限。
建议用 visudo 命令打开编辑(它会检查语法错误):

visudo

找到类似 root ALL=(ALL:ALL) ALL 的行,在其下方添加:

devuser ALL=(ALL:ALL) ALL

保存退出。
如果希望执行 sudo 时不重复输密码,可以改为:

devuser ALL=(ALL:ALL) NOPASSWD:ALL

注意:NOPASSWD 会降低安全性,仅适合调试环境或特定自动化场景。

---

第四步:调整文件和目录的归属与权限

新用户创建的文件归属自己,但有时需要让 devuser 访问某个已有的项目目录 /var/www/project
变更归属:

chown -R devuser:devuser /var/www/project

若只想改变所属组,但保留用户归属,用 chgrp
调整目录权限:

chmod -R 755 /var/www/project

755 表示所有者可读写执行,同组和其他用户只能读和执行。
更细粒度控制可以用 setfacl(本文暂不展开)。

---

避坑指南:新手最易犯的五个错误

  • 直接修改系统用户(如 www-data、nobody)的密码:不要这样做,这些是服务专用账户,应该专注于创建专用普通用户。
  • sudoers 语法错误导致所有用户无法 sudo:修改前请 cp /etc/sudoers /etc/sudoers.bak,并始终坚持 visudo
  • 使用 chmod 777 解决问题:这会开放全部权限,应当只给最小必要权限。
  • 用户组生效问题:添加组后用户必须退出重新登录,或者用 newgrp 临时切换组。
  • 忘记设置 sudo 用户时出现 user is not in the sudoers file:需要回到 root 用户重新配置。

---

效果验证:三步确认权限生效

  1. 切换用户测试:用 su - devuser 登录新用户,执行 whoami 应显示 devuser
  2. 测试 sudo:在 devuser 下运行 sudo whoami,如果返回 root 则说明 sudo 配置成功。若配置了 NOPASSWD 则不会提示密码。
  3. 验证文件权限:尝试在之前 chown 过的目录下创建文件 touch /var/www/project/test.txt,应成功;然后以另一个普通用户身份访问该目录,应提示 Permission denied

---

结语

Linux服务器用户权限分配并不复杂,核心就是“创建用户→配置组→设定sudo→调整文件归属”。
按照本文的命令顺序操作,你就能快速搭建一个安全、隔离的多用户环境。
遇到异常时先检查用户是否在正确的组里,再检查 sudoers 文件有无拼写错误,多数问题都能解决。

分享到:
上一篇
零基础学会WP网站缓存过期设置,提升加载速度
下一篇
Docker部署rust教程指南
1
系统公告

泽御云五一特惠活动🔥

泽御云持证合规运营,资质齐全可查,长久稳定! 五一限时多重福利同步开启: ✅ 香港 2 核 2G 云服务器超值拼团,低价入手团长免费 ✅ 4 核 4G 多机房年付拼团,性价比拉满 ✅ 内蒙古新区限时 7 折(zeyuyunnmg)特惠,专属优惠码锁价续费 ✅ 全站通用 75 折优惠,老用户充值享专属赠金 官方站点:zeyuyun.com 合规资质齐全|售后有保障|活动限时错过不再有
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意