Cenetos 下sudo的使用
sudo的使用(Centos)
sudo的用处不多说;
我在centos的配置,想想sudo很简单,之前改了很多都没test成功,权限,语法都试了好几回,现记录下
一:直接用visudo命令修改,之前是vim /etc/sudoers 这样不行。用visudo既能检测语法错误,又能避免多个用户同时编辑修改
二:语法设置,
1. 最简单的配置,让普通用户student具有root的所有权限
执行visudo之后,可以看见缺省只有一条配置:
root ALL=(ALL) ALL
那么你就在下边再加一条配置:
student ALL=(ALL) ALL
第一个ALL指代网络中的主机;第二个指代用户,也就是按哪个用户权限去行使命令;第三个指代执行命令
如 student ALL=(ALL) NOPASSWD: /bin/sh 代表只能执行sh
#Defaults requiretty 解决sudo: sorry, you must have a tty to run sudo
这样,普通用户student就能够执行root权限的所有命令
以student用户登录之后,执行:
sudo su -
然后输入student用户自己的密码,就可以切换成root用户了
2. 让普通用户student只能在某几台服务器上,执行root能执行的某些命令
首先需要配置一些Alias,这样在下面配置权限时,会方便一些,不用写大段大段的配置。Alias主要分成4种
Host_Alias
Cmnd_Alias
User_Alias
Runas_Alias
1) 配置Host_Alias:就是主机的列表
Host_Alias HOST_FLAG = hostname1, hostname2, hostname3
2) 配置Cmnd_Alias:就是允许执行的命令的列表
Cmnd_Alias COMMAND_FLAG = command1, command2, command3
3) 配置User_Alias:就是具有sudo权限的用户的列表
User_Alias USER_FLAG = user1, user2, user3
4) 配置Runas_Alias:就是用户以什么身份执行(例如root,或者oracle)的列表
Runas_Alias RUNAS_FLAG = operator1, operator2, operator3
5) 配置权限
配置权限的格式如下:
USER_FLAG HOST_FLAG=(RUNAS_FLAG) COMMAND_FLAG
如果不需要密码验证的话,则按照这样的格式来配置
USER_FLAG HOST_FLAG=(RUNAS_FLAG) NOPASSWD: COMMAND_FLAG
如:Host_Alias HOST=test3
Cmnd_Alias COMM=/usr/bin/crontab,/sbin/ifconfig
User_Alias USER=cacti,sxf
USER HOST=(ALL) NOPASSWD: COMM
[root@test3 ~]# su - cacti
[cacti@test3 ~]$ ifconfig
-bash: ifconfig: command not found
[cacti@test3 ~]$ sudo ifconfig
Password:
sudo: ifconfig: command not found
[cacti@test3 ~]$ sudo /sbin/ifconfig
eth0 Link encap:Ethernet HWaddr 00:16:3E:01:B1:40
passwd为该用户默认密码
三:日志记录
touch /var/log/sudo
vim /etc/syslog.conf
添加 local2.debug /var/log/sudo
重启日志守护进程 ps aux |grep syslogd
kill -HUP pid
转载于:https://blog.51cto.com/benetliu/1068188
Cenetos 下sudo的使用相关推荐
- linux下sudo权限管理
linux下sudo权限管理 1.修改/etc/sudoers下文件 2.文件格式为 user_flag host_flag=(runlevel_flag) command_flag 分别代表用户名 ...
- unbuntu下 sudo apt-get update 更新软件源列表
unbuntu下 sudo apt-get update 更新软件源列表 unbuntu下安装软件有两种方式:一种是在线安装.一种是离线安装 在线安装就是在软件源列表里下载 apt 就是一个管理应用软 ...
- linux下sudo命令[转]
一.sudo简介: 1.概念: sudo是linux下常用的允许普通用户使用超级用户权限的工具,允许系统管理员让普通用户执行一些或者全部的root命令,如halt,reboot,su等等.这样不 ...
- 《linux下sudo服务的使用》RHEL6
/bin/ 下放的二进制文件命令都是普通用户可以使用的 Sbin 下放的二进制文件命令都是超级用户root可以使用的 普通用户也想使用Sbin下的文件可以通过sudo来实现: 默认普通用户是不可以 ...
- cve-2021-3156 linux下sudo堆缓冲区溢出漏洞的修复尝试
一.漏洞情况 sudo堆溢出漏洞(CVE-2021-3156),漏洞隐藏十年之久,在sudo解析命令行参数的方式中发现了基于堆的缓冲区溢出.任何本地用户(普通用户和系统用户,sudoer和非sudoe ...
- kde下sudo出现cannot connect to xserver解决方法
用visudo 或者直接编辑/etc/sudoers(不推荐) 把Defaults env_keep有关的几行注释取消掉就可以了. 其实不用全部取消,里面具体有说明 这个也可以解决sudo 使用文件配 ...
- ubuntu下sudo命令不能使用问题
不知道从什么时候开始,ctrl+alt+F1进入命令行之后,登录成功.使用sudo命令,不能使用....被坑了很久. 解决方法: 出现 [sudo ] username !!! 之后,在输入一遍 密码 ...
- Linux操作系统下Sudo命令的使用方法说明
"Sudo" 是Unix/Linux平台上的一个非常有用的工具,它允许系统管理员分配给普通用户一些合理的"权利",让他们执行一些只有超级用户或其他特许用户才能完 ...
- centos7 下 sudo yum install 报错镜像找不到
系统环境:centos7 问题复现:sudo yum 安装任何包 都是同一个错 操作之前:安装过docker的镜像 报错乱码: base | 3.6 kB 00:00:00 https://downl ...
最新文章
- IDEA工具基本设置
- dw网页设计作品_10个富有特色的网页设计精选作品
- The Power of Android Action Bars(转载)
- c++求n的几次方_14.八年级数学:若a+b+c=1,怎么求 a+b+c的值?分式培优拓展
- C++中建立对象间消息连接的系统方法
- 怎样追求一个你喜欢的人?
- PHP年龄计算 取得两个时间戳相差的年龄年月日显示
- Java IO(输入输出)
- 自然语言处理——词性标注实战
- python shell 方向键不可用
- InfoGAN学习笔记
- 滑动验证码最简单案例:破解qq空间(豆瓣网)滑块验证码(python+selenium实现)
- css怎么设置鼠标手势?
- anaconda 完全卸载——重装
- 101个最佳配色方案,设计师值得收藏!
- Cannot negotiate authentication mechanism svn: Unable to connect to a repository at URL 'svn://gite
- python 华泰股票交易接口_TradeApi 自带资金管理的A股程序化交易接口
- MySQL复制表-CREATE SELECT
- 手持SLAM年终杂谈
- 找规律万能公式_万能公式:找规律什么的都弱爆了 | 死理性派小组 | 果壳网 科技有意思...
热门文章
- 3D模型在网页上显示
- java实现鼠标宏编程_我應該如何編程高級java遊戲中的鼠標/鍵輸入?
- python 字符串拼接_面试官让用 3 种 python 方法实现字符串拼接 ?对不起我有8种……...
- 设计模式 — Overview
- NetDevOps — OpenConf 协议
- Linux Kernel TCP/IP Stack — Socket Layer
- 5GS 协议栈 — GTP 协议族
- [洛谷P2057][SHOI2007]善意的投票
- extern “C”的作用详解
- 解密蚂蚁金服MISA:37℃的自助语音交互是怎么做到的?