萌萌妈妈 发表于 2015-1-14 20:41:28

带来一篇CentOS下sudo下令实例解说

如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!1、sudo简介:

1、观点:
sudo是linux下经常使用的同意一般用户利用超等用户权限的工具,同意体系***让一般用户实行一些大概全体的root下令,如halt,reboot,su等等。如许不但削减了root用户的上岸和办理工夫,一样也进步了宁静性。Sudo不是对shell的一个取代,它是面向每一个下令的。
它的特征次要有如许几点:
1、sudo可以限定用户只在某台主机上运转某些下令。
2、sudo供应了丰厚的日记,具体地纪录了每一个用户干了甚么。它可以将日记传到中央主机大概日记办事器。
3、sudo利用工夫戳文件--日记来实行相似的“检票”体系。当用户挪用sudo而且输出它的暗码时,用户取得了一张存活期为5分钟的票(这个值能够在编译的时分改动)。
4、sudo的设置文件是/etc/sudoers,属性必需为0440,它同意体系***会合的办理用户的利用权限和利用的主机。

2、编纂设置文件下令:visudo
注重:编纂sudo的设置文件/etc/sudoers是一样平常不要间接利用vi(vi/etc/sudoers)往编纂,由于sudoers设置有必定的语法,间接用vi编纂保留体系不会反省语法,若有错也保留了大概招致没法利用sudo工具,最好利用visudo下令往设置。固然visudo也是挪用vi往编纂,可是保留时会举行语法反省,有错会有提醒。

3、语法,参数
1
sudo[-VhlLvkKsHPSb]│[-pprompt][-cclass│-][-aauth_type][-uusername│#uid]command




参数:




1
2
3
4
5
6
7
8
9
10
11
-V显现版本编号
-h会显现版本编号及指令的利用体例申明
-l显现出本人(实行sudo的利用者)的权限
-v由于sudo在第一次实行时或是在N分钟内没有实行(N预设为五)会问暗码,这个参数是从头做一次确认,假如凌驾N分钟,也会问暗码
-k将会强制利用者鄙人一次实行sudo时问暗码(不管有无凌驾N分钟)
-b将要实行的指令放在背景实行
-pprompt能够变动问暗码的提醒语,个中%u会代换为利用者的帐号称号,%h会显现主机称号
-uusername/#uid不加此参数,代表要以root的身份实行指令,而加了此参数,能够以username的身份实行指令(#uid为该username的利用者号码)
-s实行情况变数中的SHELL所指定的shell,或是/etc/passwd里所指定的shell
-H将情况变数中的HOME(家目次)指定为要变动身份的利用者家目次(如不加-u参数就是体系办理者root)
command要以体系办理者身份(或以-u变动为其别人)实行的指令







2、实战练习训练
1、界说一个用户(tom)使其具有增加用户的特别权限,并举行创立用户操纵。
①、创立tom并为其创立暗码


1
2
3
4
#useraddtom
#echo"tom"|passwd--stdintom
Changingpasswordforusertom.
passwd:allauthenticationtokensupdatedsuccessfully.




②、修正设置文件,为tom增加特别权限useradd
1
2
3
4
##Allowroottorunanycommandsanywhere
rootALL=(ALL)ALL
tomALL=(root)/usr/sbin/useradd##增加权限,这里的/usr/sbin/useradd暗示一般用户实行时必需利用全路径,可使用which下令检察哦!
##Allowsmembersofthesysgrouptorunnetworking,software,





③、切换到用户tom,考证特别权限
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#su-tom##切换用户
$sudo-l##检察此用户具有的特别权限
WetrustyouhavereceivedtheusuallecturefromthelocalSystem
Administrator.Itusuallyboilsdowntothesethreethings:
#1)Respecttheprivacyofothers.
#2)Thinkbeforeyoutype.
#3)Withgreatpowercomesgreatresponsibility.
passwordfortom:##这里必要考证暗码,以包管是用户自己实行操纵
MatchingDefaultsentriesfortomonthishost:
requiretty,!visiblepw,always_set_home,env_reset,env_keep="COLORSDISPLAYHOSTNAMEHISTSIZE
INPUTRCKDEDIRLS_COLORS",env_keep+="MAILPS1PS2QTDIRUSERNAMELANGLC_ADDRESSLC_CTYPE",
env_keep+="LC_COLLATELC_IDENTIFICATIONLC_MEASUREMENTLC_MESSAGES",env_keep+="LC_MONETARY
LC_NAMELC_NUMERICLC_PAPERLC_TELEPHONE",env_keep+="LC_TIMELC_ALLLANGUAGELINGUAS
_XKB_CHARSETXAUTHORITY",secure_path=/sbin:/bin:/usr/sbin:/usr/bin
Usertommayrunthefollowingcommandsonthishost:
(root)/usr/sbin/useradd##能够以root身份,利用useradd下令



tom实行useradd:

1
2
3
$sudo/usr/sbin/useraddtest1##增加用户test1
$tail-1/etc/passwd
test1:x:501:501::/home/test1:/bin/bash##增加乐成




④、检察日记/vat/log/secure
注重:要切换回root才有权限检察日记

1
2
3
4
5
6
7
8
9
10
11
12
13
#tail/var/log/secure
Apr513:55:58localhostsu:pam_unix(su-l:session):sessionopenedforusertombyroot(uid=0)
Apr513:56:11localhostsu:pam_unix(su-l:session):sessionclosedforusertom
Apr513:56:17localhostpasswd:pam_unix(passwd:chauthtok):passwordchangedfortom
Apr513:56:17localhostpasswd:gkr-pam:couldntupdatetheloginkeyringpassword:nooldpasswordwasentered
Apr513:56:23localhostsu:pam_unix(su-l:session):sessionopenedforusertombyroot(uid=0)
Apr513:56:43localhostsudo:tom:TTY=pts/0;PWD=/home/tom;USER=root;COMMAND=list
##tom以***身份实行了list下令
Apr514:00:50localhostsudo:tom:TTY=pts/0;PWD=/home/tom;USER=root;COMMAND=/usr/sbin/useraddtest1
##tom以***身份实行了useradd下令,增加用户test1
Apr514:00:50localhostuseradd:newgroup:name=test1,GID=501
Apr514:00:50localhostuseradd:newuser:name=test1,UID=501,GID=501,home=/home/test1,shell=/bin/bash
Apr514:07:15localhostsu:pam_unix(su-l:session):sessionclosedforusertom



今后可使用此下令日记检察主机是不是遭到进侵打击,大概检察某用户登录出去并利用特别权限实行毛病指令等等。以是我们要及时监控此文件的意向。

⑤、-k参数示例


1
2
3
4
5
6
#su-tom
$sudo-k##停止暗码无效期
$sudo/usr/sbin/useraddtest2
passwordfortom:##无效期停止后,实行特别下令,需从头考证暗码
$tail-1/etc/passwd
test2:x:502:502::/home/test2:/bin/bash#增加test2乐成




2、别号使用,alias:
1
2
3
4
5
sudoers文件撑持利用别号对同类工具举行分组:组名必需利用全年夜写字母,利用逗号将同类工具下令离隔。
Host_Alias:主机别号
User_Alias:用户别号
Runas_Alias:在哪些主机以谁的身份运转的别号
Cmnd_Alias:下令别号




①、在设置文件中界说别号
1
2
3
4
5
6
#visudo
Host_AliasUSERHOSTS=172.16.0.0/16,127.0.0.0/8,192.168.0.0/24##界说主机别号,能够在哪些呆板实行特别下令
Cmnd_AliasUSERADMIN=/usr/sbin/useradd,/usr/sbin/usermod,/usr/sbin/userdel##界说下令别号
rootALL=(ALL)ALL
tomALL=(root)USERADMIN##此处界说tom能够实行别号USERADMIN中的一切下令
tomUSERHOSTS=(ROOT)USERADMIN##能够在别号USERHOSTS中呆板上实行别号USERADMIN中的下令










考证:
1
2
3
4
5
#su-tom
$sudo/usr/sbin/userdel-rtest2##删除用户test2
passwordfortom:
$tail-1/etc/passwd##删除乐成
test1:x:501:501::/home/test1:/bin/bash




②、设克制某用户实行某操纵


1
2
tomALL=(root)/usr/bin/passwd*,!/usr/bin/passwdroot
##tom能够以root的身份变动暗码,但克制变动root的暗码。




③、设置执特权命了时,无需输出暗码


1
2
tomALL=(root)/usr/sbin/useradd,NOPASSWD:/usr/sbin/userdel,/usr/sbin/groupdel,PASSWD:/usr/sbin/usermod,/usr/sbin/groupmod
##这里的/usr/sbin/useradd操纵时必需利用暗码;/usr/sbin/userdel,/usr/sbin/groupdel操纵时能够不利用暗码(跟在厥后的一切操纵一概不利用暗码);/usr/sbin/usermod,/usr/sbin/groupmod操纵时仍是要输出暗码;另有PASSWD和NOPASSWD不成界说于别号中哦!




考证:
1
2
3
4
5
6
7
8
9
10
11
12
#su-tom
$sudo/usr/sbin/useraddtest3
passwordfortom:
$sudo-k
$sudo/usr/sbin/useraddtest4
passwordfortom:##useradd每次都必要输出暗码
$sudo-k
$sudo/usr/sbin/userdeltest3##实行userdel没有请求输出暗码,NOPASSWD设置失效
$tail-3/etc/passwd
tom:x:500:500::/home/tom:/bin/bash
test1:x:501:501::/home/test1:/bin/bash
test4:x:503:503::/home/test4:/bin/bash




以上就是本次sudo下令的解说。
本文出自“斜视天花板”博客,请务必保存此出处http://lemidi.blog.51cto.com/8601832/1390912
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们!

因胸联盟 发表于 2015-1-16 21:18:36

带来一篇CentOS下sudo下令实例解说

选择一些适于初学者的Linux社区。

山那边是海 发表于 2015-1-25 23:13:15

Linux最大的特点就是其开源性,这一点是十分难得的,这也是它能够存在到现在的原因之一。

小妖女 发表于 2015-2-4 17:45:00

放手去搞。尽量不要提问,运用搜索找答案,或者看wiki,从原理上理解操作系统的本质,而不是满足于使用几个技巧。尽量看英文资料。

海妖 发表于 2015-2-10 05:36:08

然我们对Linux的学习首先是通过对它的产生,发展,到今天仍然在不断完善开始的。

兰色精灵 发表于 2015-2-28 23:45:53

老实说,第一个程序是在C中编译好的,调试好了才在Linux下运行,感觉用vi比较麻烦,因为有错了不能调试,只是提示错误。

蒙在股里 发表于 2015-3-10 12:53:19

Linux操作系统这个名词记得在很早以前就听过,但当时并不知道具体是什么样的操作系统,只知道是一个与嵌入式密切相关的操作系统。

谁可相欹 发表于 2015-3-17 09:08:18

选择交流平台,如QQ群,网站论坛等。

只想知道 发表于 2015-3-24 05:36:39

随着Linux应用的扩展,出现了不少Linux社区。有一些非常优秀的社区往往是Linux高手的舞台,如果在探讨高级技巧的论坛张贴非常初级的问题经常会没有结果。
页: [1]
查看完整版本: 带来一篇CentOS下sudo下令实例解说