`
xwsoft
  • 浏览: 14330 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

visudo精确用户赋权(sudo)

 
阅读更多

sudo” Unix/Linux平台上的一个非常有用的工具,允许为非根用户赋予一些合理的权利,让他们执行一些只有根用户或特许用户才能完成的任务,从而减少根用户的登陆次数和管理时间同时也提高了系统安全性。

  • sudo的目的:为非根用户授予根用户的权限;
  • 配置文件:/etc/sudoers
  • visudo命令编辑修改/etc/sudoers配置文件

1、一般用户赋权设置:

[root@localhost ~]# visudo
……前面省略
69 ## Syntax:
70 ##
71 ##      user    MACHINE=COMMANDS
72 ##
73 ## The COMMANDS section may have other options added to it.
74 ## 
75 ## Allow root to run any commands anywhere
76 root    ALL=(ALL)       ALL

77 test   ALL=(root) /usr/sbin/useradd         //新增加用户行
……后面省略
 

 

        说明:
        第一个字段:root为能使用sudo命令的用户;
        第二个字段:第一个ALL为允许使用sudo的主机,第二个括号里的ALL为使用sudo后以什么身份(目的用户身份)来执行命令;
        第三个字:ALL为以sudo命令允许执行的命令;
  上列解释: test   ALL=(root) /usr/sbin/useradd 
表示允许test用户从任何主机登录,以root的身份执行/usr/sbin/useradd命令。

        用户执行命令效果:

[root@server ~]# su - redhat
[redhat@server ~]$ sudo /usr/sbin/useradd test
//
命令需要输入完整的路径
口令:                                     //这里输入用户redhat自己的密码
[redhat@server ~]$ cat /etc/passwd |tail -5
xfs:x:43:43:X Font Server:/etc/X11/fs:/sbin/nologin
gdm:x:42:42::/var/gdm:/sbin/nologin
sabayon:x:86:86:Sabayon user:/home/sabayon:/sbin/nologin
redhat:x:500:500::/home/redhat:/bin/bash
test:x:501:501::/home/test:/bin/bash            //新增加的用户
 
2、sudo配置深入:
         1)多个用户的设置(非同一群组用户):
        对于不同需求的用户:可以按照上面的方法依次增加多行,每行对应一个用户。
        对于相同需求的多个用户
        User_Alias UUU=user1,user2……             定义用户别名;
[root@localhost ~]# visudo
……前面省略
16 ## User Aliases
17 ## These aren't often necessary, as you can use regular groups
18 ## (ie, from files, LDAP, NIS, etc) in this file - just use %groupname
19 ## rather than USERALIAS
20 # User_Alias ADMINS = jsmith, mikem      //这个就是一个实例行,按照这个写自己的
21 User_Alisa sudouser=user1,user2,user3,user4 //第一一个别名suduouser
……后面省略
69 ## Syntax: 
70 ## 
71 ##      user    MACHINE=COMMANDS
72 ##
73 ## The COMMANDS section may have other options added to it.
74 ## 
75 ## Allow root to run any commands anywhere
76 root    ALL=(ALL)       ALL77 sudouser   ALL=(root)    /usr/sbin/useradd  ////命令行书写格式,用户列用别名
……后面省略
 
        对于多个命令的设置:
        Cmnd_Alias CCC=command1,command2……          定义命令别名;
[root@localhost ~]# visudo
……前面省略
23 ## Command Aliases
24 ## These are groups of related commands...
25
26 ## Networking
27 Cmnd_Alias NETWORKING = /sbin/route, /sbin/ifconfig, /bin/ping, /sbin/dh        client, /usr/bin/net, /sbin/iptables, /usr/bin/rfcomm, /usr/bin/wvdial,         /sbin/iwconfig, /sbin/mii-tool                                                     //多个命令定义一个命令别名;
……后面省略
69 ## Syntax:
70 ## 
71 ##      user    MACHINE=COMMANDS
72 ##
73 ## The COMMANDS section may have other options added to it.
74 ## 
75 ## Allow root to run any commands anywhere
76 root    ALL=(ALL)       ALL77 sudouser   ALL=(root)    NETWORKING  //命令行书写格式,命令列用别名
……后面省略

 

        对于多主机的设置和多登陆角色的设置:
        •修改 Host_Alias HHH=host1,host2……   定义主机别名;
        修改后对应的命令行主机列位置也是用别名
        •Runas_Alias   RRR=role1,role2……                定义runas别名,指定的是“目的用户”,即sudo 允许转换至的用户;
        建立相关别明后,相关命令行相应的列也是用我们定义的别名。
         2)多个用户的设置(同一群组用户): 

[root@localhost ~]# visudo
……前面省略
81
82## Allows people in group wheel to run all commands
83%wheel        ALL=(ALL)       ALL        //用户列%+群组名
……后面省略
 

        
 

分享到:
评论

相关推荐

    Linux用户配置sudo权限(visudo)的方法

    本文将详细介绍如何使用`visudo`命令为Linux用户配置`sudo`权限。 首先,了解`sudo`的工作流程: 1. 当用户执行`sudo`命令时,系统会查找`/etc/sudoers`文件,检查该用户是否被授权使用`sudo`。 2. 如果用户有权限...

    mac用户及赋予sudo权限.docx

    本文将详细讲解如何创建新用户以及如何赋予这些用户sudo(超级用户)权限。sudo权限允许用户以管理员身份执行命令,这对于进行系统配置、安装软件或其他需要特权的操作是必要的。 首先,我们来看如何创建一个新的...

    sudo用法详解

    【sudo和visudo详解】 sudo命令是Linux系统中用于以其他用户(通常是root)权限运行命令的工具。它提供了一种安全的机制,允许非特权用户执行特定的管理任务,而无需知道root密码。这对于多用户环境中的权限管理和...

    如何在Linux环境为用户添加sudo权限

    在Linux环境中,为用户添加sudo权限是管理员进行系统管理的重要任务之一。sudo命令允许普通用户以root权限执行特定命令,而无需直接切换到root账户。这样可以提高系统的安全性,因为不是所有的用户都能直接拥有全部...

    权限管理-sudo权限

    当一个普通用户通过`sudo`命令执行某个操作时,该命令会检查用户的sudo权限配置文件(通常是`/etc/sudoers`),以确定该用户是否被授权以root或其他特定用户的身份执行该命令。如果用户被授权,则sudo会临时提升用户...

    sudo应用的详细阐述

    sudo 应用是一种在Linux和Unix系统中广泛使用的命令,它允许普通用户以超级用户(root)或其他特定用户的权限执行命令,但同时提供了细粒度的权限控制和审计功能。相较于传统的su命令,sudo更加安全,因为它不要求...

    CentOS 7中sudo权限配置

    在Linux系统中,sudo是一种权限管理系统,它允许普通用户以超级用户的身份运行命令,从而提升系统安全性和可管理性。在CentOS 7系统中,sudo的配置通常通过编辑/etc/sudoers文件来实现,但编辑这个文件时需要非常...

    Linux系统Sudo命令的使用说明

    1. **权限限制**:Sudo可以精确控制哪个用户可以在哪台主机上执行哪些命令,避免了过度授权可能导致的安全隐患。 2. **日志记录**:sudo会记录所有用户的使用情况,这些日志可以被发送到中央日志主机或服务器,便于...

    sudo软件的安装与配置

    sudo软件是一种 Unix 操作系统下的权限管理工具,允许系统管理员授予非root用户执行特定命令的权限。下面是sudo软件的安装和配置方法: 一、安装sudo 1. 下载sudo软件包,上传到服务器上。 2. 解压缩sudo软件包, ...

    Linux 添加普通用户到 sudo 列表的方法

    在Linux系统中,sudo命令允许普通用户以超级用户(root)权限执行特定的命令,而无需实际切换到root用户。这对于系统管理和维护来说非常方便,同时也增加了安全性,因为不是所有用户都有完全的root权限。本篇文章将...

    sudo-1.8.28p1.tar.gz

    - `sudo visudo`是安全编辑sudoers文件的方式,能防止因语法错误导致的锁死情况。 了解并熟练掌握这些知识点,对于在Linux环境下进行有效管理和维护是非常必要的。正确使用sudo可以提升效率,同时确保系统的安全性...

    linux sudo

    **Sudo**(Superuser DO)是一种广泛应用于Unix和Linux系统的工具,它允许系统管理员为普通用户分配特定权限,使他们能够在不需要登录为超级用户的情况下执行特定任务。这既提升了系统安全性,又简化了日常维护工作...

    Ubuntu中sudo命令的使用

    - **权限提升**:`sudo`使得普通用户能够以root或其他用户的身份执行命令。 - **细粒度控制**:管理员可以通过配置文件来控制哪些用户或组可以使用`sudo`,以及他们可以执行哪些命令。 - **日志记录**:所有`sudo`...

    Debian如何限制sudo权限

    使用`sudo -l`命令查看用户的最终权限: ```bash sudo -l ``` #### 五、验证权限 以`teacherfu`用户为例,尝试执行被禁止的命令`/sbin/poweroff`以及被允许的命令`/sbin/useradd`,验证其权限是否正确设置。 ###...

    Linux中利用sudo进行赋权的方法详解

    在使用`sudo`进行权限赋权时,首先需要了解 `/etc/sudoers` 文件,这是sudo的核心配置文件。通过编辑这个文件,系统管理员可以精确地控制哪些用户或用户组能够执行哪些命令。`sudoers`文件的编辑应谨慎进行,通常...

    linux编写bash shell脚本文件.sh 自动输入密码.在脚本中使用sudo命令,将密码保存在脚本中,不需要手动输入密码

    一个更好的方法是使用`sudo visudo`编辑`sudoers`文件,为特定的脚本或命令分配权限,这样就不需要在每次执行时输入密码。例如,可以在`sudoers`文件中添加以下行: ```sudoers username ALL=(ALL) NOPASSWD: /path...

    su的sudo以及isudo的权限

    su(substitute user的缩写)和sudo(substitute user do的缩写)是两种常用的用户身份切换和执行命令的方式,它们在权限设置和使用上有着本质的区别。接下来,我们将详细讲解su和sudo的使用方法以及它们在权限管理...

    4-8su命令与sudo服务.pdf

    1. 当用户执行sudo时,系统会主动寻找/etc/sudoers文件,判断该用户是否有执行sudo的权限。 2. 确认用户具有可执行sudo的权限后,让用户输入用户自己的密码确认。 3. 若密码输入成功,则开始执行sudo后续的命令。 4....

Global site tag (gtag.js) - Google Analytics