visudo精确用户赋权(sudo)

原文BLOG:http://iminmin.blog.51cto.com/689308/455992
sudo” 是Unix/Linux平台上的一个非常有用的工具,允许为非根用户赋予一些合理的“权利”,让他们执行一些只有根用户或特许用户才能完成的任务,从而减少根用户的登陆次数和管理时间同时也提高了系统安全性。

  • sudo的目的:为非根用户授予根用户的权限;
  • 配置文件:/etc/sudoers
  • visudo命令编辑修改/etc/sudoers配置文件

1、一般用户赋权设置:

[[email protected] ~]# 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命令。
用户执行命令效果:

[[email protected] ~]# su - redhat
[[email protected] ~]$ sudo /usr/sbin/useradd test
//命令需要输入完整的路径
口令:                                     //这里输入用户redhat自己的密码
[[email protected] ~]$ 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……             定义用户别名;

[[email protected] ~]# 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  ////命令行书写格式,用户列用别名
……后面省略

对于多个命令的设置:

[[email protected] ~]# 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)多个用户的设置(同一群组用户):

[[email protected] ~]# visudo
……前面省略
81
82## Allows people in group wheel to run all commands
83# %wheel        ALL=(ALL)       ALL        //用户列%+群组名
……后面省略

END,希望大家能够合理为个用户账号授权。

时间: 2024-12-23 07:48:56

visudo精确用户赋权(sudo)的相关文章

SQL创建Oracle表空间、用户以及给用户赋权的方法

//创建表空间 Create tablespace examination//创建表空间examination datafile 'c:\Oracle\zhangwei\examination.dbf'//与表空间关联的文件存放位置(要预先手动建好文件夹) size 100m//文件初始大小,千万不要写成mb(这里以下可略) autoextend on//文件大小可自动拓展 next 30m//每次拓展30m maxsize unlimited//不限制文件大小的上限 logging//生成对于

Hbase无法给用户赋权

Hbase无法给用户赋权,并报错. 问题背景描述: 测试环境,hdfs被format过.很多基于hdfs的环境都受到了影响.hbase也受到了影响.但是hbase在master启动的过程中,只要hdfs上有/hbase目录 建表之后,在赋权的时候,发现有错误 hbase(main):001:0>  user_permission User Namespace,Table,Family,Qualifier:Permission ERROR: DISABLED: Security features 

mysql 里对root及普通用户赋权及更改密码的一些命令

让root用户可以通用 Navicat for MySQL客户端登录: mysql> grant all privileges on *.* to [email protected]'%' identified by 'root'; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) 对user1用户更改密码,权限有点大,但不执行下面的第一条命令,密

linux安全--用户账号--文件系统--用户切换与sudo提权

系统加固(服务器的本地安全) 1 用户账户安全 2 文件系统安全(系统配置文件的安全 服务的配置) 重要的数据文件 挂载的文件系统  mount 文件权限的种类  rwx     suid    sgid   T位     facl ++++++++++++++++++++++++++++++++++++++++++ 阻止普通用户关机: 建一个700文件夹 mkdir -m 700 文件夹名 cd /etc/security/console.spps mv  poweroff reboot ha

oracle 快速建表空间,用户,赋权

本文章并不是给初学者详细详解oracle下如何建立表空间,用户,赋权等命令参数及含义,本文章可能只是对有一定的oracle基础的朋友有所帮助. 最近项目中又开始需要oracle数据库,在搭建环境时,发现自己的oracle命令已经忘了差不多,所以我从网上找来一些语句:可以快速的建表空间,用户并且赋权,由于我现在的项目并不是很严谨,所以像临时表空间,oracle的权限分配等细节,在这里会被忽略. 由于10g开始,oracle的控制台改成网页形式,不但界面改变而且相对的速度也慢了许多,所以我喜欢用命令

12C 用户管理与赋权

1.1  Common user公共用户/通用用户 可以管理CDB,如果有权限也可以操作PDB. 公共用户可以在PDB数据库之间进行赋权操作,可以开关PDB(有权限),可以对整个CDB进行恢复操作. 公共用户可以在不同的PDB数据库中有不同的权限. 注意:如果先插入一个PDB大CDB中,如果有用户名相同的公共用户,会进行合并,密码是新插入的用户的密码,但是这个用户锁住的. 1.2  Local user本地用户 和公共用户不同之处: 1.本地用户不能创建公共用户,但是可以创建和修改本地用户权限或

oracle创建用户、表空间,并赋权

--创建表空间 create tablespace test_tps datafile 'D:\app\Administrator\oradata\orcl\test_tps.dbf' size 1500M autoextend on next 5M; --创建用户并制定表空间 create user test_tps identified by test_tps default tablespace test_tps; --赋权限 grant connect,resource to test_

oracle创建,查看用户和角色,用户角色赋权

一.创建用户并赋予权限 1.创建用户 create user wangxiangyu identified by wangxiangyu; 2.赋权 grant dba to wangxiangyu; grant create session to wangxiangyu; --会话权限(没有该权限无法登录) 3.查看已经赋予用户的系统权限 select * from user_sys_privs; 二.创建角色 角色,即权限的集合,可以把一个角色授予给用户 1.创建角色 create role

Windows Server2008建立组织单位、组、用户以及文件赋权部门

Windows Server2008建立组织单位.组.用户以及文件赋权部门1.建立组织单位2.建立组3.新建用户 4.用户加组5.建立共享文件方便用户共享资源.并且赋权IT---share完全控制的权限注意:由于文件权限是继承一级文件,二级是否有权限需要在控制是否给予赋权!!!!!!!!!!!!!!!!!!!!!!!!!!!! 6.测试下两图片!用IT组用户登录 完全拥有权限 C1为财务的没有权限访问 附件1:怎么共享一个文件;不过多描述! 原文地址:https://blog.51cto.com