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。

相关推荐
李的阿洁1 小时前
k8s中的容器服务
linux·容器·kubernetes
谢景行^顾1 小时前
数据结构知识掌握
linux·数据结构·算法
linmengmeng_13142 小时前
【Jenkins】Jenkins配置从节点 - Launch Agent
运维·servlet·jenkins
人工智能训练3 小时前
如何在 Ubuntu 22.04 中安装 Docker 引擎和 Linux 版 Docker Desktop 桌面软件
linux·运维·服务器·数据库·ubuntu·docker·ai编程
Maple_land3 小时前
Linux复习:系统调用与fork
linux·运维·服务器·c++·centos
996终结者3 小时前
Docker核心用途实战:彻底解决环境一致性问题
运维·docker·容器
无聊的小坏坏3 小时前
Poll 服务器实战教学:从 Select 迁移到更高效的多路复用
linux·服务器·poll·io多路复用
小晶晶京京4 小时前
day61-devops
运维·devops
阿桂有点桂4 小时前
Docker搭建Ngnix、php5.6、php8、postgresql、redis
运维·服务器·docker·容器
WAsbry4 小时前
InputConnection机制与跨进程文本操作的工程实践
android·linux