使用sudo分配管理权限

su命令

su -  [账户名称]     :切换到用户,不加用户名默认切换到root

su -  [账户名称]  -c  '命令'   :以xx用户身份执行命令,注意命令需用引号引起来

[jacob@proxy ~]# su -                       //切换账户,默认切换为root账户

密码:

[root@proxy ~]#

[root@proxy ~]# su - tom  -c "mkdir /home/tom/test"        //管理员切换普通用户

[tom@proxy ~]# su - -c "systemctl restart sshd"            //以管理员重启服务

分配部分命令root权限给普通用户:

which 命令  :查看命令的原始路径

[root@proxy ~]# vim /etc/sudoers         //修改配置(vim或visudo),修改文件后,需要使用wq!强制保存

.. ..

softadm    ALL=(ALL)   /usr/bin/systemctl    //授权softadm以root身份执行systemctl命令

用户名  哪些位置登陆(主机名)=什么身份   执行什么命令   //不同的命令,分开;例外程序以!符号取反。在执行相关程序时可以利用通配符*

[root@proxy ~]# su - softadm

[softadm@proxy ~]$ sudo -l                        //查询有哪些sodu命令权限,普通用户第一次sudo需要输入自己帐号的密码

… …

[sudo] password for softadm:                                 //输入softadm的口令

.. ..

用户 softadm 可以在该主机上运行以下命令:

(ALL) /usr/bin/systemctl

[softadm@proxy ~]$ systemctl start httpd                    //不用sudo时启动服务失败

Authentication is required

.. ..

[softadm@proxy ~]$ sudo systemctl restart httpd          //通过sudo启动服务成功

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

.. ..

useradm ALL=(ALL)  /usr/bin/passwd,!/usr/bin/passwd root,/usr/sbin/user*,!/usr/sbin/user* * root

//给予各种用户类命令、修改密码权限,但不能操作root用户的

[useradm@proxy ~]$ sudo useradd newuser01                  //可以添加用户

[useradm@proxy ~]$ sudo passwd newuser01                  //可以修改普通用户的口令

分配部分命令root权限给组成员(%代表组,生产环境下慎用)

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

.. ..

%wheel ALL=(ALL)  /bin/*

[root@proxy ~]# usermod -a -G wheel zengye

[zengye@proxy ~]$ sudo -l

.. ..

用户 zengye 可以在该主机上运行以下命令:

(root) /bin/*

sudo启用日志记录(默认没有日志)

[root@proxy ~]# visudo              //修改/etc/sudoers配置,添加日志设置,以便跟踪sudo执行操作

Defaults  logfile="/var/log/sudo"

.. ..

[root@proxy ~]# sudo -l                                  //查看授权的sudo操作

[softadm@proxy ~]# sudo systemctl status httpd              //查看授权的sudo操作

[root@proxy ~]# tail /var/log/sudo    //确认日志记录已生效

.. ..

May 16 22:14:49 : root : TTY=pts/1 ; PWD=/root ; USER=root ; COMMAND=list

Feb 22 22:35:43 : softadm : TTY=pts/11 ; PWD=/home/softadm ; USER=root ;

COMMAND=/bin/systemctl status httpd

三、使用sudo分配管理权限的更多相关文章

  1. Security基础(一):Linux基本防护措施、使用sudo分配管理权限、提高SSH服务安全

    一.Linux基本防护措施 目标: 本案例要求练习Linux系统的基本防护措施,完成以下任务: 修改用户zhangsan的账号属性,设置为2015-12-31日失效(禁止登录) 锁定用户lisi的账户 ...

  2. Linux系统管理第三次作业 账号管理 权限及归属管理

    1.创建/guanli 目录,在/guanli下创建zonghe 和 jishu 两个目录(一条命令) [root@localhost ~]# mkdir /guanli [root@localhos ...

  3. 禁用root登录以及使用sudo分配权限

    前言 最近一段时间服务器有受到一些挖比特币的人的攻击,这里就简要说明一下提升服务器安全度的做法 禁用root登录 root权限可以说是linux服务器的最高权限,如果我们平常都是直接使用root用户来 ...

  4. Linux ACL对某一些文件有管理权限

    某些系统账号希望对某一些文件有管理权限,有三种方法: 1 加入属主所在的同一个组中,这等于扩大了访问其他文件的权限了. 2 加入other中,这样权限放开的更大了. 3 给文件的sudo权限. 4 采 ...

  5. Ecshop:后台添加新功能栏目以及管理权限设置

    一.添加菜单项 打开 /admin/includes/inc_menu.php文件(后台框架左边菜单),在最后添加一行如下: $modules['17_other_menu']['sns_list'] ...

  6. MySQL用户账户管理/权限管理/资源限制

    MySQL 的权限表在数据库启动的时候就载入内存,当用户通过身份认证后,就在内存中进行相应权限的存取,这样,此用户就可以在数据库中做权限范围内的各种操作了. mysql 的权限体系大致分为5个层级: ...

  7. 使用sudo进行Linux权限升级技巧

    0x00 前言 在我们之前的文章中,我们讨论了如何使用SUID二进制文件和/etc/passwd 文件的Linux权限提升技巧,今天我们发布了另一种“使用Sudoers文件进行Linux权限提示技巧” ...

  8. linux管理权限

    1.linux命令查询 root id 2.切换用户 su - xiaobai 一定要加"  -  "这个会将你的所有环境变量都带过来 3.root用户切换普通用户不需要输入密码反 ...

  9. Ubuntu 用户管理/权限管理

    Ubuntu 用户管理/权限管理 小小记录一下 Ubuntu 下用户/权限管理常用的一些命令 用户管理 组管理 文件权限 给用户添加 sudo 权限 给用户添加 sudo 权限 首先先给出几个文件 / ...

随机推荐

  1. 重新封装了一下NODE-MONGO 使其成为一个独立的服务.可以直接通过get/post来操作

    # 重新封装了一下NODE-MONGO 使其成为一个独立的服务.可以直接通过get/post来操作 # consts.js 配置用的数据,用于全局参数配置 # log.js 自己写的一个简单的存储本地 ...

  2. Win64 驱动内核编程-24.64位驱动里内嵌汇编

    64位驱动里内嵌汇编 讲道理64位驱动是不能直接内链汇编的,遇到这种问题,可以考虑直接把机器码拷贝到内存里,然后直接执行. 获得机器码的方式,可以写好代码之后,直接通过vs看反汇编,然后根据地址在看内 ...

  3. Java中实现某方法和重写某方法的区别

    实现(implements) 实现一个方法,在实现某个接口,或者是继承某个抽象类,在接口和在抽象类中定义的方法,本身是没有实现的,也就是没有方法体,你在当前类中就需要去实现这个方法. 重写(overl ...

  4. JavaScript 中正则匹配时结果不一致的问题

    创建示例项目 考察如下场景,我们有个输入框组件,输入时同时进行校验. interface IInputProps { label: string; } function Input({ label } ...

  5. Etcd中Raft日志复制的实现

    Raft state of log commitIndex : A log entry is committed once the leader that created the entry has ...

  6. 2020.12.20vj补题

    A - Insomnia cure 题意:一共s只龙,每隔k,l,m,n只龙就会受伤,问这s只龙有多少龙是受伤的 思路:看起来题目范围并不是很多,直接进行循环判断 代码: 1 #include< ...

  7. ROS之初见Hello World

    前言 最近在玩ROS,笔记中断了一段时间. ROS即Robot Operating System,机器人操作系统,是一个开源框架,主力语言是C++和python,提供了硬件抽象.设备驱动.库函数.可视 ...

  8. 无连接运输:UDP

    多路复用和解复用与校验和是UDP唯一能做的事,运输层的协议必须做点什么,什么都没有就不需要这一层了. 为什么要使用UDP 既然有了可靠传输的TCP,为什么还要在udp之上来构件应用呢? 有效载荷大,T ...

  9. Docker网络,手把手教你如何实现容器网络相关知识

    Docker网络 理解Docker0 清空所有环境 测试 三个网络 #问题:docker 是如何处理容器网络访问的? [root@hsStudy /]# docker run -d -P --name ...

  10. traefik ingress Controller使用

    Kubernetes Ingress Kubernetes Ingress是路由规则的集合,这些规则控制外部用户如何访问Kubernetes集群中运行的服务. 在Kubernetes中,有三种方式可以 ...