visudo精确用户赋权(sudo)
原文BLOG:http://iminmin.blog.51cto.com/689308/455992
sudo” 是Unix/Linux平台上的一个非常有用的工具,允许为非根用户赋予一些合理的“权利”,让他们执行一些只有根用户或特许用户才能完成的任务,从而减少根用户的登陆次数和管理时间同时也提高了系统安全性。
- sudo的目的:为非根用户授予根用户的权限;
- 配置文件:/etc/sudoers
- visudo命令编辑修改/etc/sudoers配置文件
1、一般用户赋权设置:
[root@localhost ~]# visudo
……前面省略
69 ## Syntax:
70 ##
71 ## user MACHINE=COMMANDS
72 ##
73 ## The COMMANDS section may have other options added to it.
74 ##
75 ## Allow root to run any commands anywhere
76 root ALL=(ALL) ALL
77 test ALL=(root) /usr/sbin/useradd //新增加用户行
……后面省略
说明:
第一个字段:root为能使用sudo命令的用户;
第二个字段:第一个ALL为允许使用sudo的主机,第二个括号里的ALL为使用sudo后以什么身份(目的用户身份)来执行命令;
第三个字:ALL为以sudo命令允许执行的命令;
上列解释: test ALL=(root) /usr/sbin/useradd
表示允许test用户从任何主机登录,以root的身份执行/usr/sbin/useradd命令。
用户执行命令效果:
[root@server ~]# su - redhat
[redhat@server ~]$ sudo /usr/sbin/useradd test
//命令需要输入完整的路径
口令: //这里输入用户redhat自己的密码
[redhat@server ~]$ cat /etc/passwd |tail -5
xfs:x:43:43:X Font Server:/etc/X11/fs:/sbin/nologin
gdm:x:42:42::/var/gdm:/sbin/nologin
sabayon:x:86:86:Sabayon user:/home/sabayon:/sbin/nologin
redhat:x:500:500::/home/redhat:/bin/bash
test:x:501:501::/home/test:/bin/bash //新增加的用户
2、sudo配置深入:
1)多个用户的设置(非同一群组用户):
u 对于不同需求的用户:可以按照上面的方法依次增加多行,每行对应一个用户。
u 对于相同需求的多个用户
User_Alias UUU=user1,user2…… 定义用户别名;
[root@localhost ~]# visudo
……前面省略
16 ## User Aliases
17 ## These aren't often necessary, as you can use regular groups
18 ## (ie, from files, LDAP, NIS, etc) in this file - just use %groupname
19 ## rather than USERALIAS
20 # User_Alias ADMINS = jsmith, mikem //这个就是一个实例行,按照这个写自己的
21 User_Alisa sudouser=user1,user2,user3,user4 //第一一个别名suduouser
……后面省略
69 ## Syntax:
70 ##
71 ## user MACHINE=COMMANDS
72 ##
73 ## The COMMANDS section may have other options added to it.
74 ##
75 ## Allow root to run any commands anywhere
76 root ALL=(ALL) ALL
77 sudouser ALL=(root) /usr/sbin/useradd ////命令行书写格式,用户列用别名
……后面省略
对于多个命令的设置:
[root@localhost ~]# visudo
……前面省略
23 ## Command Aliases
24 ## These are groups of related commands...
25
26 ## Networking
27 Cmnd_Alias NETWORKING = /sbin/route, /sbin/ifconfig, /bin/ping, /sbin/dh client, /usr/bin/net, /sbin/iptables, /usr/bin/rfcomm, /usr/bin/wvdial, /sbin/iwconfig, /sbin/mii-tool //多个命令定义一个命令别名;
……后面省略
69 ## Syntax:
70 ##
71 ## user MACHINE=COMMANDS
72 ##
73 ## The COMMANDS section may have other options added to it.
74 ##
75 ## Allow root to run any commands anywhere
76 root ALL=(ALL) ALL
77 sudouser ALL=(root) NETWORKING //命令行书写格式,命令列用别名
……后面省略
Cmnd_Alias CCC=command1,command2…… 定义命令别名;
对于多主机的设置和多登陆角色的设置:
•修改 Host_Alias HHH=host1,host2……
定义主机别名;
修改后对应的命令行主机列位置也是用别名
•Runas_Alias RRR=role1,role2…… 定义runas别名,指定的是“目的用户”,即sudo 允许转换至的用户;
建立相关别明后,相关命令行相应的列也是用我们定义的别名。
2)多个用户的设置(同一群组用户):
[root@localhost ~]# visudo
……前面省略
81
82## Allows people in group wheel to run all commands
83# %wheel ALL=(ALL) ALL //用户列%+群组名
……后面省略
END,希望大家能够合理为个用户账号授权。
visudo精确用户赋权(sudo)的更多相关文章
- NO29 用户提权sudo配置文件详解实践--志行为审计
用户提权sudo配置文件详解实践: 放到visudo里: 验证权限:
- Mysql 创建普通用户、数据库、表、插入记录,用户赋权
C:\phpStudy\MySQL\bin>mysql -uroot -proot -h127.0.0.1 //创建用户 mysql> insert into mysql.user (ho ...
- Oracle创建表空间、用户以及给用户赋权
--创建表空间 create tablespace waterboss datafile 'd:\waterboss.dbf' size 100m autoextend on next 10m --创 ...
- MySQL 数据库赋权
1.进入数据库,查看数据库账户 # 进入数据库 mysql –u root –p ---> 输入密码... # 使用 mysql 库 use mysql; # 展示 mysql 库中所有表 sh ...
- Linux sudo用户提权与日志审计
一.格式说明及常用配置选项 格式: 用户或组 主机=授权可以使用哪个用户的权限 可以执行的命令 User_Alias 用户定义别名(别名可以是用户,用户组(用户组前面要加%))例:User_Alias ...
- oracle创建用户并赋权
Oracle建立表空间和用户 [sql] view plain copy 建立表空间和用户的步骤: 用户 建立:create user 用户名 identified by "密码" ...
- oracle数据库如何创建用户和角色,并给其赋权?
一.创建用户并赋予权限 1.创建用户 create user wangxiangyu identified by wangxiangyu; 2.赋权 grant dba to wangxiangyu; ...
- mysql (8.0 或以下)数据 卸载, 安装, 创建用户, 赋权
卸载 安装 创建用户wmxl create user 'wmxl'@'202.115.253.71' identified by '你的密码' 如果是mysql8.0,再输入以下 ALTER USER ...
- mysql数据库创建用户、赋权、修改用户密码
创建新用户 create user lisi identified by '123456'; 查看创建结果: 授权 命令格式:grant privilegesCode on dbName.tableN ...
随机推荐
- Java Log Viewer日志查看器
工欲善其事必先利其器 在投奔怒海--一个Domino老程序猿眼里的Java开发我提到眼下所做的Java开发中遇到的大量日志之问题. server控制台刷屏似地滚动,日志文件飞快地增长,debug的时候 ...
- patch补丁命令 P1 P0 P2
http://fancyxinyu.blog.163.com/blog/static/1823213662013719115245699/ http://blog.chinaunix.net/uid- ...
- 原生js实现图片预览并上传
最近主导的PC客户端网站重构工程告一段落,下一阶段开始给公司APP开发H5页面,技术栈是react.最近碰到一个需求:需要在H5页面上添加身份证照片,预览并上传.因为要兼容安卓4.4以下版本的手机,所 ...
- 对话框上动态控件的创建、在Picture Control控件上显示图片
1 MFC对话框之上的动态控件的创建 对话框上的控件是MFC类的一个具体对象. 当在对话框之上使用静态控件时,可以根据类向导来为每个控件添加消息.响应函数以及变量. 当需要在对话框中动态的创建某个控 ...
- firedac二进制序列和JSON序列的对比
firedac二进制序列和JSON序列的对比 以同样大小的一个数据集的数据,作为测试的数据. 以JSON序列后的数据体积是4958字节. 以二进制序列后的数据体积是3044字节. 4958/3044= ...
- 【微信小程序】在微信开发工具上七牛云的图片可以看到,但是在真机上看不到的原因解决
在开发微信小程序过程中,在微信开发者工具上,七牛云的图片都可以展示出来,但是在真机上,七牛云的图片却展示不出来,也没有报404找不到或者不能加载图片的问题, 必须保证: 1.图片是用image加载的: ...
- iOS7以下设备获取mac地址
注意,是iOS7以下的设备,直接上源码,获取mac地址都是为了唯一标识一个设备的,但iOS7设备的mac地址为 020000000000 MacAddress.h #include <sys/s ...
- 字符测试篇isalnum isalpha isascii iscntrl isdigit isgraphis islower isprint isspace ispunct isupper isxdigit
isalnum(测试字符是否为英文或数字) 相关函数 isalpha,isdigit,islower,isupper 表头文件 #include<ctype.h> 定义函数 int isa ...
- nginx: [emerg] "proxy_cache_path" directive is not allowed here in /usr/local/nginx/conf/nginx.conf:43
1.它只能使用于http{ }部分,把proxy_cache_path放置于http部分即可解决此问题.注意图示的上下文
- Java IO 体系结构
参考文章地址: http://blog.csdn.net/oracle_microsoft/article/details/2634231 Java IO体系结构看似庞大复杂,其实有规律可循,要弄清楚 ...