centos7.x 将普通用户加入sudoers中,获取sudo执行权限

0 问题由来

  你在提起兴致学习的时候,兴冲冲地往黑洞洞的文本窗口输入下一行:

[pan@localhost ~]$ sudo ls

  按照系统验证需求,你输入用户密码,结果返回的是冰冷的一串错误信息:

pan is not in the sudoers file. This incident will be reported.

1 定位sudoers文件

  按照错误信息的提示,我们获知由于用户“pan”不在sudoers文件中,导致了该命令行执行失败。

  很自然地,我们要定位一下这个文件在哪里,使用这个命令可以达到这个目的:

[pan@localhost ~]$ whereis sudoers

  系统返回我们想要的结果:/etc/sudoers

sudoers:  /etc/sudoers.d  /etc/sudoers  /usr/share/man/man5/ sudoers.5.gz

2 将普通用户添加进sudoers文件

  既然找到了目标文件,我们的目的——往sudoers文件中添加用户“pan”,就完成了一半。那剩下的一半怎么做,我们不禁会问。我需要看看sudoers文档里的内容,也许文档注释里就告诉了如何按照要求添加一个用户。

  尝试查看 /etc/sudoers 里的内容:

[pan@localhost ~]$ ls -l /etc/sudoers && cat /etc/sudoers

  返回的是一串错误信息:

-r--r-----. 1 root root 3938 4月 11 2018 /etc/sudoers

cat:  /etc/sudoers:  Permission denied

  从返回信息中可以获知,该文件属主root拥有读权限,属组root拥有读权限,只有上述用户才可以查看文件 /etc/sudoers 的内容。

  切换到root用户完成查看文件 /etc/sudoers 的内容并添加用户“pan”进sudoers文件:

[pan@localhost ~]$ su - root

  查看 /etc/sudoers 里的内容:

[root@localhost ~]# vim /etc/sudoers

  我们重点查看这一段内容:

## Allow root to run any commands anywhere

root  ALL=(ALL)  ALL

  既然用户root是这样写入sudoers文件,很自然我们想到把用户root替换成用户“pan”:

[root@localhost ~]# echo "pan    ALL=(ALL)       ALL" >> /etc/sudoers

3 验证

  切换回用户“pan”并验证sudo的执行权限:

[pan@localhost ~]$ sudo ls

4 结语

  这是一个很小的问题,本来是不值得一记的,但我生性太懒惰了,学东西时兴冲冲的,学了一段时间后就弃置迤逦、不管不顾了。写下来,就是为了磨性子。

centos7.x 将普通用户加入sudoers中,获取sudo执行权限的更多相关文章

  1. Active Directory中获取域管理员权限的攻击方法

    Active Directory中获取域管理员权限的攻击方法         译:by  backlion 0x00 前言 攻击者可以通过多种方式在Active Directory中获得域管理员权限, ...

  2. linux普通帐号可以临时切换到root(添加用户到sudoers中)

    一般,进入terminal之后,默认是普通账户能操作的功能,能访问的目录有限,需要临时切换到root账户 那么此时就需要配置sudoers文件,可以让普通用户通过sudo命令临时切换到root账户 首 ...

  3. deepin中Tomcat添加执行权限

    terwer@terwer-PC:~$ cd /opt/*tomcat*/bin terwer@terwer-PC:/opt/apache-tomcat-9.0.13/bin$ sudo chmod ...

  4. java中获取当前执行线程的名称

    Thread.currentThread().getName()

  5. PowerShell_零基础自学课程_6_PS中获取帮助信息详解、管道、格式化输

    前些文章陆续的说了一些关于这些主题,但是讨论的都不够深入,今天我们深入的了解一下获取帮助信息.管道以及格式化输出的内容. 一.获取帮助信息 在PS中获取帮助信息,最常用的有: -? .get-comm ...

  6. 【转】Linux中文件的可读,可写,可执行权限的解读以及chmod,chown,chgrp命令的用法

    chmod是更改文件的权限 chown是改改文件的属主与属组 chgrp只是更改文件的属组. 一.文件权限解读 如上图所示,开头的-rwxrw-r--这一字符串标识文件权限. 这个字符串有10位,可以 ...

  7. 添加用户到sudoers

    ** is not in the sudoersfile.  This incident will bereported.” (用户不在sudoers文件中……) 处理这个问题很简单,但应该先理解其原 ...

  8. Centos7下关于系统用户密码规则-运维笔记

    针对Centos7下的系统用户的密码规则复杂度的设置,处于安全考虑,说明如下: 一.设置密码规则 1)密码长度.有效期 /etc/login.defs文件是当创建用户时的一些规划,比如创建用户时,是否 ...

  9. CentOS7安装CDH 第八章:CDH中对服务和机器的添加与删除操作

    相关文章链接 CentOS7安装CDH 第一章:CentOS7系统安装 CentOS7安装CDH 第二章:CentOS7各个软件安装和启动 CentOS7安装CDH 第三章:CDH中的问题和解决方法 ...

随机推荐

  1. 第11讲-Java泛型和文件操作

    1.知识点 1.1.课程回顾 1.2.本章重点 1.2.1.泛型 1.2.2.文件操作 2.具体内容 2.1.Java泛型 2.1.1.为什么需要泛型 我们发现在List中,底层是Object[ ]数 ...

  2. Spring MVC 配置类 WebMvcConfigurerAdapter

    WebMvcConfigurerAdapter配置类是spring提供的一种配置方式,采用JavaBean的方式替代传统的基于xml的配置来对spring框架进行自定义的配置.因此,在spring b ...

  3. spring组件注册

    基于注解和类的组件注册 @Conditional 作用:按照一定的条件进行判断,如果满足条件的话就给spring容器中注册bean ​ 该注解既可以标注到方法上面,也可以标注到类上面(只有满足条件时, ...

  4. 使用 jupyter-notebook + python + matplotlib 进行数据可视化

    上次用 python 脚本中定期查询数据库,监视订单变化,将时间与处理完成订单的数量进行输入写入日志,虽然省掉了人为定时查看数据库并记录的操作,但是数据不进行分析只是数据,要让数据活起来! 为了方便看 ...

  5. Linux_Day001-002章常用命令

    Linux操作系统的组成 以下符号的意义. 输出重定向和输入重定向的知识点 echo 把后面的文字显示出来 xargs 分组, -n 分为n组  xargs -n 1.txt (完整命令:xargs ...

  6. Java连载29-方法执行内存分析、方法重载

    一.JVM包含三个内存区:栈内存.堆内存.方法区内存 二.注意点 (1)在MyEclipse中字体是红色的是一个类的名字,并且这个类除了我们自定义的类是JavaSE类库中自带的 (2)其实JavaSE ...

  7. c语言文件的基本操作

    c语言对文件的操作主要分为:按字符操作,按行操作,按内存块操作 主要的函数: fopen(): FILE * fopen(_In_z_ const char * _Filename, _In_z_ c ...

  8. Jmeter 逻辑控制器 之 事务控制器

    前面我在做性能测试的时候,由于我们的系统是需要登录的,登录成功后,系统默认加载其订单数据,因此在用户看来这是一个操作.所以为了模拟这个操作,我需要访问两个接口,并且把这两个接口的响应时间算在一起,那么 ...

  9. JWT与Session的比较

    如今,越来越多的项目开始采用JWT作为认证授权机制,那么它和之前的Session究竟有什么区别呢?今天就让我们来了解一下. JWT是什么 定义 JSON Web Token(JWT)是一个开放标准(R ...

  10. 浅谈DanmakuView

      今天简单介绍一下开源的弹幕引擎---danmakuView   使用之前在build.gradle里面添加下面这一条(目前我使用的工具是AndroidStudio 3.1.2)   impleme ...