三、使用sudo分配管理权限
使用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分配管理权限的更多相关文章
- Security基础(一):Linux基本防护措施、使用sudo分配管理权限、提高SSH服务安全
一.Linux基本防护措施 目标: 本案例要求练习Linux系统的基本防护措施,完成以下任务: 修改用户zhangsan的账号属性,设置为2015-12-31日失效(禁止登录) 锁定用户lisi的账户 ...
- Linux系统管理第三次作业 账号管理 权限及归属管理
1.创建/guanli 目录,在/guanli下创建zonghe 和 jishu 两个目录(一条命令) [root@localhost ~]# mkdir /guanli [root@localhos ...
- 禁用root登录以及使用sudo分配权限
前言 最近一段时间服务器有受到一些挖比特币的人的攻击,这里就简要说明一下提升服务器安全度的做法 禁用root登录 root权限可以说是linux服务器的最高权限,如果我们平常都是直接使用root用户来 ...
- Linux ACL对某一些文件有管理权限
某些系统账号希望对某一些文件有管理权限,有三种方法: 1 加入属主所在的同一个组中,这等于扩大了访问其他文件的权限了. 2 加入other中,这样权限放开的更大了. 3 给文件的sudo权限. 4 采 ...
- Ecshop:后台添加新功能栏目以及管理权限设置
一.添加菜单项 打开 /admin/includes/inc_menu.php文件(后台框架左边菜单),在最后添加一行如下: $modules['17_other_menu']['sns_list'] ...
- MySQL用户账户管理/权限管理/资源限制
MySQL 的权限表在数据库启动的时候就载入内存,当用户通过身份认证后,就在内存中进行相应权限的存取,这样,此用户就可以在数据库中做权限范围内的各种操作了. mysql 的权限体系大致分为5个层级: ...
- 使用sudo进行Linux权限升级技巧
0x00 前言 在我们之前的文章中,我们讨论了如何使用SUID二进制文件和/etc/passwd 文件的Linux权限提升技巧,今天我们发布了另一种“使用Sudoers文件进行Linux权限提示技巧” ...
- linux管理权限
1.linux命令查询 root id 2.切换用户 su - xiaobai 一定要加" - "这个会将你的所有环境变量都带过来 3.root用户切换普通用户不需要输入密码反 ...
- Ubuntu 用户管理/权限管理
Ubuntu 用户管理/权限管理 小小记录一下 Ubuntu 下用户/权限管理常用的一些命令 用户管理 组管理 文件权限 给用户添加 sudo 权限 给用户添加 sudo 权限 首先先给出几个文件 / ...
随机推荐
- Insert Pictures In Hexo Blog
After build my blog following the online course step by step , I began to try to write my own blog️ ...
- PHP 下载apk文件
方式一.public function downApkFile(){ $path = Env::get('root_path')."apk/"; //路径 $file_name = ...
- vscode 超好用的前端插件
一 vscode 前端调试接口的插件 作为前端工程师,接口的调试是我们必不可少的工作.以前用过postman,但是作为一个vscode重度使用者,我希望看看vscode能否进行对接口的调试.省的跟后台 ...
- 一行代码解决JS数字大于2^53精度错误的问题
服务端使用长整型(Int64)的数字,在浏览器端使用JS的number类型接收时,当这个实际值超过 (2^53-1)时,JS变量的值和实际值就会出现不相等的问题.常见场景比如使用雪花算法生成Id. 在 ...
- Elasticsearch入门,看这一篇就够了
目录 前言 可视化工具 kibana kibana 的安装 kibana 配置 kibana 的启动 Elasticsearch 入门操作 操作 index 创建 index 索引别名有什么用 删除索 ...
- Java线程池的工作流程
线程池刚被创建的时候,只是向系统里申请一个用于执行流程队列和管理线程池的线程资源.在调用execute()添加一个任务时,线程池会按照以下流程执行: 1.如果正在运行的线程数少于corePoolSiz ...
- Apache Hudi集成Spark SQL抢先体验
Apache Hudi集成Spark SQL抢先体验 1. 摘要 社区小伙伴一直期待的Hudi整合Spark SQL的PR正在积极Review中并已经快接近尾声,Hudi集成Spark SQL预计会在 ...
- 4.启动虚拟机 设置CentOS7
启动虚拟机 CentOS设置 1.点击箭头方向即可启动我们的VMware 2.设置语言 在第一步设置完成后,我们一直等待,即可来到语言设置界面 此处我们设置[中文] 3.设置安装信息 将下面带有[感叹 ...
- [Java] 开课吧--JVM
双亲委派 向上委托,向下加载 收到加载任务后,先交给父类加载器,只有当父类加载器无法完成,才会执行加载 保证只有一个类加载器加载,避免重复加载 破坏:JDK 1.2后才使用,JDK 1.1的核心类没 ...
- [Python] 可变/不可变类型 & 参数传递
与c/c++不同,Python/Java中的变量都是引用类型,没有值类型 Python赋值语句由三部分构成,例如: int a = 1 类型 标识 值 标识(identity):用于唯一标识 ...