简述sudo安全切换工具及详细讲解visudo

1、简介

sudo命令Linux系统管理指令,是允许系统管理员让普通用户执行一些或全部的root命令的一个工具。sudo命令提供了丰富的日志,详细记录了每个用户干了什么,并且使用时间戳来对用户通过了sudo执行认证的有效期进行限制。sudo命令相关信息存放在/etc/sudoers文件中,执行sudo命令的用户需提前将自己用户名及可执行命令等相关信息添加到该文件当中。sudo命令的执行无需知道超级管理员密码,因此部分系统甚至利用sudo来使得一般用户取代root作为管理账号使用。

2、sudo命令

命令语法:

sudo [options] COMMAND

常见options:

-l COMMAND :列出用户可执行或不可执行的命令信息;
-k:清楚此前缓存的用户成功认证的时间戳,默认缓存时间戳为5分钟;

3、visudo

sudo命令的配置文件为/etc/sudoers文件,里面记录了sudo用户的权限信息即分组信息。/etc/sudoers文件只能通过visudo命令进行编辑修改,为的是防止有多个用户同时修改此文件,并且进行相应的语法检查。默认情况下,visudoers是不会保存有语法错误的配置文件,但它会提示相应的错误,并询问如何处理。

执行visudo会自动打开/etc/sudoers文件,sudo用户授权语句的格式如下:

USERS LOCATION=(USERNAME|GROUP|Runas_alias) [NOPASSWD|PASSWD] COMMAND

USERS的字段可为:

username:授权用户名;
%groupname:授权用户组;
User_alias:授权的用户或组别名;

LOCATION可包括以下字段:

ip:规则匹配的IP地址;
hostname:规则匹配的主机名;
NetAddr:规则匹配的网段;
Host_alias:主机别名;

COMMAND则包括以下字段:

command:命令的绝对路径;
Cmnd_alias:命令的别名组;

[NOPASSWD|PASSWD]是指是否需要提供密码才能sudo运行命令。

另外visudo也可以定义相关的别名规则,其格式如下:

ALIAS_TYPE _Alias_NAME=item1,item2,item3...

ALIAS_TYPE的类型包括:

User_Alias:授权用户别名类型
Host_Alias:主机别名类型
Runas_Alias:作为哪些用户执行的别名类型
Cmnd_Alias:命令别名类型

而NAME定义的名称需为大写。

4、应用示列

使用visudo编辑/etc/visudoers文件:

[root@test ~]# visudo
#定义命令别名组1
Cmnd_Alias ADMINCOMMANDS1=/usr/sbin/useradd,/usr/sbin/usermod,/usr/bin/passwd,!/usr/bin/passwd root
#定义命令别名组2
Cmnd_Alias ADMINCOMMANDS2=/usr/sbin/shutdown,/usr/sbin/reboot
#定义用户别名组
User_Alias ADMINUSERS=charlie,gentoo,magedu
#定义sudo命令授权规则
ADMINUSERS ALL=(root) NOPASSWD:ADMINCOMMANDS1,PASSWD:ADMINCOMMANDS2

:wq
#若文件无语法错误,则正常保存退出

测试sudo的授权:

[root@test ~]# su - charlie
[charlie@test ~]$ sudo -l
匹配此主机上 charlie 的默认条目:
    requiretty, !visiblepw, always_set_home, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS", env_keep+="MAIL PS1 PS2
    QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME
    LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY", secure_path=/sbin\:/bin\:/usr/sbin\:/usr/bin

用户 charlie 可以在该主机上运行以下命令:
    (root) NOPASSWD: /usr/sbin/useradd, /usr/sbin/usermod, /usr/bin/passwd, !/usr/bin/passwd root, (root) PASSWD: /usr/sbin/shutdown, /usr/sbin/reboot
[charlie@test ~]$ sudo passwd root
对不起,用户 charlie 无权以 root 的身份在 test 上执行 /bin/passwd root。
[charlie@test ~]$ sudo passwd charlie
更改用户 charlie 的密码 。
[charlie@test ~]$ sudo shutdown -r now

We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

    #1) Respect the privacy of others.
    #2) Think before you type.
    #3) With great power comes great responsibility.

[sudo] password for charlie: 
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,884评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,755评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,369评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,799评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,910评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,096评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,159评论 3 411
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,917评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,360评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,673评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,814评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,509评论 4 334
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,156评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,882评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,123评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,641评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,728评论 2 351