• Linux学习笔记之如何让普通用户获得ROOT权限


    在学习sodu的时候,我发现一些命令只能由root用户使用,普通用户使用会提示此用户没有使用sudo的权限。我想到的解方法是把正在使用的普通用户获得root权限,于是我通过百度和询问老师知道了如何去实现。

    举例:

    1.创建一个新用户boy,密码:123456(自定义)

    2.尝试一个非超级用户不能执行的命令

    sudo -l :查看当前用户可使用的命令,仅限root用户可用。

    3.修改sudo配置文件/etc/sudoers

    sudo为系统管理员提供配置文件,允许系统管理员集中地管理用户的使用权限和使用的主机,它默认的存放位置是/etc/sudoers。

    (1)查看并修改sudoers的文件权限

    我发现sudoers是一个只读文件,若要修改,必须修改权限。

    (2)利用visudo编辑sudoers配置

    #配置sudo必须通过编辑/etc/sudoers文件,而且只有超级用户才可以修改它,还必须使用visudo编辑。 
    #之所以使用visudo有两个原因,一是它能够防止两个用户同时修改它;二是它也能进行有限的语法检查。所以,即使只有你一个超级用户,你也最好用visudo来检查一下语法。 
    #visudo默认的是在vi里打开配置文件,用vi来修改文件。我们可以在编译时修改这个默认项。#visudo不会擅自保存带有语法错误的配置文件,它会提示你出现的问题,并询问该如何处理,就像:

    # 此时有三种选择:键入“e”是重新编辑,键入“x”是不保存退出,键入“Q”是退出并保存。如果真选择Q,那么sudo将不会再运行,直到错误被纠正。

    在sudoers找到下面的类似语句: 

     

    显然,这就是我要修改的地方了,有root为例子,我照着在下面添加要增添ROOT权限的用户:

     

    保存退出,这样就完成了对boy添加root权限。

    (4)可以注意到,这里有三个ALL,它们的意思分别是:


    第一个ALL是指网络中的主机,我们后面把它改成了主机名,它指明boy可以在此主机上执行后面的命令。
    第二个括号里的ALL是指目标用户,也就是以谁的身份去执行命令。
    最后一个ALL是指命令名


    例如,我们想让boy用户在linux主机上以root的身份执行kill命令,这样编写配置文件:

    boy=root/bin/kill

    3.将sudoers访问权限恢复440

    chmod 440 sudoers

    4.登陆普通用户,测试权限

  • 相关阅读:
    ThingsBoard 二次开发之源码分析 5如何接收 MQTT 连接
    物联网平台 ThingsKit
    ThingsBoard 3.3.4 发布
    ThingsBoard 二次开发之源码分析 4启动分析 3
    ThingsBoard 二次开发之源码分析 2启动分析 1
    ThingsBoard 3.2.2 发布
    ThingsBoard 3.2 发布
    11亿条数据压缩到12GB,TDengine在陕煤矿山项目的落地实践
    15倍提升 & 40倍存储优化,TDengine在领益智造的实践
    经验分享 | TDengine在智能船舶领域的实践手册
  • 原文地址:https://www.cnblogs.com/JetpropelledSnake/p/9890932.html
Copyright © 2020-2023  润新知