linux命令:sudo浅谈

 

sudo命令简介:

使得某一个用户作为另一个用户执行命令

1.配置文件为:/etc/sudoers

     配置文件格式:

格式:      who    which_hosts=(runas) command

who:表示哪一个用户        which_hosts:哪一个主机

runas:以什么用户身份执行    command:执行什么命令

对于多个用户,登陆多台服务器,以多个身份执行,多个命令,需定义别名:

who:User_Alias   用户别名

which_hosts:Host_Alias   主机别名

runas:Runas_Alias  以什么用户身别名

command:Cmnd_Alias  命令别名

别名必须全部并且只能使用大写英文字母的组合:

用户别名定义格式:

User_Alias USERADMIN = 系统用户名,%组名,还可以包含其它已经定义的用户别名

用户别名:可以包含:系统用户名,组名(格式:%组名),其它已定义的用户别名 中间以,隔开

主机别名定义格式:

Host_Alias HOSTADMIN = 主机名,ip地址,网络地址段,其它已定义的主机别名

Runas_Alias别名格式:

Runas_Alias RUNASNAME = 用户名,%组名,其它的已定义的Runas别名

Cmnd_Alias命令别名格式:

Cmnd_Alias COMMANDNAME = 命令路径,目录(此目录内的所有命令),其它事先定义过的命令别名

Usage:使得hadoop用户可以执行所有主机的useradd usermod命令

vim /etc/sudoers  编辑sudo配置文档,在最后一行添加以下内容:

hadoop ALL=(root) /usr/sbin/useradd,/usr/sbin/usermod

2.命令功能:

使得某一个用户作为另一个用户执行某台主机上的命令

3.命令参数:

-l:列出当前用户可以使用的所有sudo类命令

-k:让认证信息失效 (默认sudo会记住密码5分钟)

添加标签: NOPASSWD:   PASSWD:

4.命令实例:

1、使得hadoop用户可以执行所有主机的useradd usermod命令

vim /etc/sudoers  编辑sudo配置文档,在最后一行添加以下内容:

hadoop ALL=(root) NOPASSWD: /usr/sbin/useradd,/usr/sbin/usermod

NOPASSWD: 表示标签后的所有命令都不需要用密码

hadoop ALL=(root) NOPASSWD: /usr/sbin/useradd, PASSWD: /usr/sbin/usermod

PASSWD:表示需要用密码,

2、使用别名方式启用sudoers配置文件

vim /etc/sudoers

User_Alias USERADMIN = hadoop,%hadoop,%useradmin #表示hadoop用户,hadoop组,useradmin组

Cmnd_Alias USERADMINCMND = /usr/sbin/useradd,/usr/sbin/usermod,/user/bin/passwd [A-Za-z]*,! /usr/bin/passwd root #命令别名,表示可以通过sudo执行useradd usermod /user/bin/passwd [A-Za-z]* 表示执行passwd命令后面必须带至少一个字母  !/usr/bin/passwd root 表示不能执行passwd root 命令(!为取反)修改root用户密码

USERADMIN    ALL=(root) NOPASSWD: USERADMINCMND

[[email protected] root]$ sudo /usr/sbin/passwd root

口令:

john is not in the sudoers file.  This incident will be reported.

[[email protected] ~]$ sudo /usr/bin/passwd

Sorry, user john is not allowed to execute ‘/usr/bin/passwd‘ as root on localhost.localdomain.

[[email protected] ~]$ sudo /usr/bin/passwd donggen

Changing password for user donggen.

New UNIX password:

BAD PASSWORD: it is WAY too short

Retype new UNIX password:

passwd: all authentication tokens updated successfully.

时间: 2024-08-06 18:48:12

linux命令:sudo浅谈的相关文章

linux命令:浅谈shell中如何进行算术运算

1.let 算术运算表达式 let C=$A+$B eg: A=3  B=5  let C=$A+$B    echo $C  [[email protected] test]# A=3 [[email protected] test]# B=3 [[email protected] test]# let C=$A+$B [[email protected] test]# echo $C 6 2.$[算术运算表达式]        C=$[$A+$B] eg: A=2  B=6  C=$[$A+

Linux特殊符号浅谈

Linux特殊字符浅谈 我们经常跟键盘上面那些特殊符号比如(?.!.~...)打交道,其实在Linux有其独特的含义,大致可以分为三类:Linux特殊符号.通配符.正则表达式. Linux特殊符号又可以分以下几类 1.管道符号 字符 名称 功能描述 | 管道 传递的普通的字符串,来自于前一个命令 |xargs 管道流转换 与xargs 传递的是把字符串变成了文件名 2.目录结构 字符 名称 功能描述 . 当前目录 .. 当前目录上一级目录 3.重定向符号 字符 名称 功能描述 > 输出重定向 会

Sudo浅谈

在Linux系统中, Sudo是最重要的命令之一,关系到整个系统的操作安全. sudo命令是用来以其它的身份来执行命令,预设的身份是root.配置文件是/etc/sudoers,权限为440,下面来了解下其基本设置: [[email protected] sbin]# visudo ## Allow root to run any commands anywhere root    ALL=(ALL)       ALL zwj     ALL=(ALL)      NOPASSWD:ALL,!

Linux文件目录权限浅谈

1.基本权限三种(1)r (read) 读 针对目录,有读(r)权限就代表能对此目录有列表功能,就是可以执行ls命令进行查看,另外还有cp的功能.针对文件,有读(r)权限就代表能对此文件有阅读功能,可以通过cat等命令查看文件内容. (2)w (write) 写 针对目录,有写(w)权限就代表着在此目录下创建文件和目录,可以通过touch,mkdir等命令创建文件和目录,另外还可以删除此目录下的文件.针对文件,有写(w)权限就代表着对此文件可以写入新的内容和修改文件内容. (3)x (execu

Linux 命令 sudo

sudo 这个命令. 是为了 让 普通用户 ,也能够以root的身份来运行 操作, 而这些普通用户 又不须要知道root的password. 在 sudo 运行命令的时候. 仅仅须要 输入自己的password ,让sudo知道 .你是这个普通本人,那么就能够以root运行操作了. 当然,这个须要配置一下 sudo ,将 这个普通用户 增加sudo 同意的范围. 用户能够通过sudo -v来查看自己是否是在sudoers 之中. 配置sudo 用 visudo 增加 fupeng ALL=(AL

Linux命令-sudo

sudo命令用于给普通用户提供额外权利来完成原本只有超级用户才有权限完成的任务, 格式:sudo [参数] 命令名称 sudo命令与su命令的区别是,su命令允许普通用户完全变更为超级管理员的身份,但 如此一来便增加了安全隐患,而使用sudo命令可以仅将特定的命令/程序执行权限赋予 指定的用户. sudo命令的特色: 1:限制用户执行指定的命令 2:记录用户执行的每一条命令 3:验证过密码后5分钟(默认值)内无需再让用户验证密码,更加方便. sudo程序的配置文件为/etc/sudoers,只有

Linux命令sudo实现集权(提权)管理,防止超级权限泛滥

sudo小结1.别名要用大写2.使用"\"换行3.使用白名单策略,尽量不要赋予ALL权限(建议先关后开)4.禁止的权限放在最后,允许的权限放在前面,sudoers配置文件的权限匹配时从后到前的5.成员必须是存在的(用户必须存在)6."!"表示禁止权限7.命令.组员.组等,用","分隔开(英文逗号)8.组前面一定要带"%" su命令缺点1.普通用户需要知道root密码,并且切换到root用户下,才能使用root权限(超级权限)2

linux服务器开发浅谈

[开发前准备] 在进行linux服务器开发之前,必须很清楚地了解所开发的对象需要考虑的相关问题比如:功能架构:提供服务的模块体系结构稳定性:服务器的出core率,内存泄露情况性能:请求与返回的速度与正确性负载能力:能同时访问的最大数量和频度 根据不同服务器对象的环境和应用,服务器开发的对应手段相差甚远.比如就客户端连接时间较短却又比较频繁的服务器(例如HTTP服务器)而言,在可选的服务器结构中,预先派生进/线程的结构就要比并发式结构高效 总之,在开发服务器之前,必须进行完整的服务器开发需求分析,

Linux网络编程——浅谈 TCP 三次握手和四次挥手

一.tcp协议格式 二.三次握手 在 TCP/IP 协议中.TCP 协议提供可靠的连接服务,採用三次握手建立一个连接. 第一次握手:建立连接时,client发送 syn 包(tcp协议中syn位置1.序号为J)到server,并进入 SYN_SEND 状态.等待server确认: 第二次握手:server收到 syn 包,必须确认客户的 SYN,同一时候自己也发送一个 SYN 包,即 SYN+ACK包(tcp协议中syn位置1,ack位置1.序号K,确定序号为J+1),此时server进入 SY