linux Ubuntu 用户权限设置

Ubuntu 用户权限设置指南

目录

  1. 用户和用户组管理
  2. 文件和目录权限
  3. sudo权限配置
  4. 常见示例
  5. 注意事项

用户和用户组管理

用户操作

操作 命令
创建用户 sudo adduser <用户名>
删除用户 sudo deluser <用户名>
修改用户密码 sudo passwd <用户名>
查看用户信息 id <用户名>

用户组操作

操作 命令
创建用户组 sudo groupadd <组名>
删除用户组 sudo groupdel <组名>
将用户加入附加组 sudo usermod -aG <组名> <用户名>
查看用户所属组 groups <用户名>

文件和目录权限

权限类型

  • r (读):文件可读,目录可列出内容
  • w (写):文件可修改,目录可创建/删除文件
  • x (执行):文件可执行,目录可进入

修改权限 (chmod)

bash 复制代码
# 数字模式(推荐)
chmod 755 filename  # 所有者:rwx,其他用户:r-x

# 符号模式
chmod u+rwx,g+rx,o-rwx filename  # 所有者加rwx,组加rx,其他用户移除所有权限

# 修改所有者 (chown)

```bash
sudo chown <用户名>:<组名> filename  # 同时修改所有者和组
sudo chown <用户名> filename        # 仅修改所有者

修改所属组 (chgrp)

bash 复制代码
sudo chgrp <组名> filename

特殊权限

setuid (4xxx): 文件执行时以所有者身份运行

setgid (2xxx): 目录中新文件继承组身份

sticky bit (1xxx): 仅文件所有者可删除目录内文件

sudo权限配置

编辑sudoers文件

sudo visudo # 安全编辑方式(避免语法错误)

配置示例

bash 复制代码
# 允许用户执行所有命令
<用户名> ALL=(ALL:ALL) ALL

# 允许组执行特定命令
%<组名> ALL=(ALL) /usr/bin/apt,/usr/bin/systemctl

常见示例

  1. 共享文件夹权限
bash 复制代码
sudo mkdir /shared
sudo chown root:shared_group /shared
sudo chmod 2775 /shared  # setgid + rwxrwxr-x
  1. 允许用户管理服务

在sudoers中添加:

bash 复制代码
%admins ALL=(ALL) /usr/bin/systemctl restart nginx

注意事项 谨慎使用chmod 777:过度开放权限可能导致安全风险。

最小权限原则:仅授予必要权限,避免用户越权操作。

定期审查权限:使用ls -l或find / -perm -4000检查特殊权限文件。

备份配置:修改/etc/sudoers前建议备份。

避免直接编辑系统文件:使用visudo而非直接编辑/etc/sudoers。

相关推荐
H_老邪5 分钟前
虚拟机-docker版本-1.0
运维·docker·容器
辞旧 lekkk8 小时前
【Qt】信号和槽
linux·开发语言·数据库·qt·学习·mysql·萌新
腾讯蓝鲸智云8 小时前
【运维自动化-节点管理】节点管理的插件策略如何使用
运维·自动化·云计算·sass·paas
疯狂成瘾者10 小时前
服务器的单体和集群
运维·服务器
liuhuizuikeai11 小时前
可视化门禁---Linux/Qt+SqLite篇
linux·运维·qt
初願致夕霞11 小时前
基于系统调用的Linux网络编程——UDP与TCP
linux·网络·c++·tcp/ip·udp
charlie11451419114 小时前
嵌入式Linux驱动开发——新 API 字符设备驱动完整教程 - 从设备结构体到应用测试
linux·运维·驱动开发
飞Link14 小时前
2000 亿砸向算力:字节跳动 AI 基建跨越,后端与运维的“万亿 Token”生死战
运维·人工智能
消失的旧时光-194314 小时前
C语言对象模型系列(四)《Linux 内核里的 container_of 到底是什么黑魔法?》—— 一篇讲透 Linux 内核的“对象模型”核心技巧
linux·c语言·算法
SWAGGY..15 小时前
Linux系统编程:(二)基础指令详解
linux·运维·服务器