• 【Linux】赋予root权限


    前言

    • 日常服务器开发中经常需要赋予普通用户root权限,即超级管理员权限
    • 在此记录一下Linux中如何设置管理员权限给普通用户

    ps:赋予管理员权限的方法有三种,这里只记录比较常用的两种

    ps2:两种方法大致都是将用户次要组群添加到管理组中,不同的是第一种的wheel组群是默认存在的,第二种则需要我们自己添加,用哪种都一样,第一种方便快捷点



    方法一

    1. 创建普通用户并将wheel群添加进次要组群
    [root@centos83 mysql]# visudo
    // 如果%wheel前面有“#”则删除,然后保存后退出
    ## Allows people in group wheel to run all commands
    %wheel  ALL=(ALL)       ALL
    
    [root@centos83 mysql]# useradd -G wheel suhai	//添加新用户并设置次要组群为管理群wheel
    [root@centos83 mysql]# passwd suhai
    //此时用户suhai便拥有了管理员权限,使用sudo+命令即可
    
    
    1. 查看群组下有那些管理员
    [root@centos83 mysql]# cat /etc/group |grep wheel
    wheel:x:10:suhai
    
    
    1. 删除某用户的管理员权限
    [root@centos83 mysql]# gpasswd -d suhai wheel
    正在将用户“suhai”从“wheel”组中删除
    [root@centos83 mysql]# cat /etc/group |grep wheel
    wheel:x:10:
    //删除权限后,如果又想添加回来,使用  gpasswd -a suhai wheel 命令即可
    
    

    方法二

    1. 创建普通用户suhai并赋予密码
    [root@centos83 ~]# useradd suhai
    [root@centos83 ~]# passwd suhai
    更改用户 test 的密码 。
    新的 密码:***
    无效的密码: 密码少于 8 个字符
    重新输入新的 密码:***
    passwd:所有的身份验证令牌已经成功更新。
    
    
    1. 切换到suhai用户,分别使用和不使用sudo命令访问/etc/shadow(密码映射文件)【测试权限步骤,可跳过】
    [root@centos83 ~]# su - suhai	//切换到suhai账户环境
    
    [suhai@centos83 ~]$ ll /etc/shadow
    //此时可以看到shadow文件权限为000,只有root账户才可以访问
    ----------. 1 root root 940 1月   5 21:59 /etc/shadow
    
    //没有赋予root权限时普通账户无法访问
    [suhai@centos83 ~]$ cat /etc/shadow
    cat: /etc/shadow: 权限不够
    [suhai@centos83 ~]$ sudo cat /etc/shadow
    [sudo] suhai 的密码:
    suhai 不在 sudoers 文件中。此事将被报告。
    
    
    1. 切换到root账户下使用 visudo命令修改/etc/sudoers配置文件,赋予管理员权限
    [suhai@centos83 ~]$ su -	//切换到root账户环境
    [root@centos83 ~]# visudo
    //找到如下内容位置,在root那行下添加相同内容,并修改用户名为suhai,修改后保存并退出
    ## Allow root to run any commands anywhere
    root    ALL=(ALL)       ALL
    suhai   ALL=(ALL)       ALL
    
    
    1. 修改后切换到suhai用户下,查看/etc/shadow文件
    [root@centos83 ~]# su - suhai
    上一次登录:二 1月  5 22:03:56 CST 2021pts/1 上
    [suhai@centos83 ~]$ cat /etc/shadow
    cat: /etc/shadow: 权限不够
    [suhai@centos83 ~]$ sudo cat /etc/shadow	//使用管理员权限务必在命令前加上sudo
    [sudo] suhai 的密码:
    root:$6$bOvtr3SEDmKnR1sP$eL98pSpNMPakWsk9QsjqnU/XSZZMeU5YwDr4U9l4eoC9u/Ard6N..UtT5pdcO5xroLKvOpe6OcUKWp2WdUDug/::0:99999:7:::
    bin:*:18397:0:99999:7:::
    。。。。。。。。。。。。省略。。。。。。。。
    suhai:$6$Vh9/o5kehkhaw8MT$q/5XSOa5zt45kP5e2zZcQGDgDa4uQgxwjcaG5blkJkOFy/64AF0MsKhpr415ck6VOhJRlXf5tcTH25wLjuGB61:18632:0:99999:7:::
    
    1. 虽然是管理员权限,但每次都需要输入用户密码,此时可以修改sudoers配置文件,免除密码验证
    // 此时直接在suhai账户下使用sudo管理员权限修改即可,不需要切换root
    [suhai@centos83 ~]$ sudo visudo	
    
    // 找到如下内容,在%where行下方添加相同内容,修改为suhai用户名,修改后保存并退出
    ## Same thing without a password
    # %wheel        ALL=(ALL)       NOPASSWD: ALL
    suhai   ALL=(ALL)       NOPASSWD: ALL
    
    // 此时再在suhai账户下使用命令sudo cat /etc/shadow时即可免密直接查看内容
    
    1. 这种方法设置的,查看有哪些管理员只需要去visudo文件查看即可,删除的话就把原先添加的地方删除就行
  • 相关阅读:
    Java解析XML(一)、SAX
    Java注解
    NTKO OFFICE文档控件为何不能自动装载?
    Java解析XML(二)、DOM
    JAVA反射机制
    如何手工卸载和安装NTKO OFFICE文档控件
    使用内省的方式操作JavaBean
    JDK自带的native2ascii转码工具使用详解
    HTTP协议详解
    跳过编译器,获取泛型参数的实际类型
  • 原文地址:https://www.cnblogs.com/suhai/p/14238391.html
Copyright © 2020-2023  润新知