




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、在linux操作系统中,root的权限是最高的,也被称为超级权限的拥有者。普通用户无法执行 的操作,root用户都能完成,所以也被称z为超级管理用户。在系统中,每个文件、目录和进程,都归属于某一个川户,没有川八许可其它普通用八是无法操 作的,但对root除外。root用户的特权性还表现在root可以超越任何用户和用户组來对文件 或目录进行读収、修改或删除(在系统正常的许可范围内);对可执行程序的执行、终止;对硬 件设备的添加、创建和移除等;也可以对文件和目录进行属主和权限迹行修改,以适合系统管理 的需要(因为root是系统屮权限最高的特权用户);一、对超级用户和普通用户的理解;1什么是超级用户
2、;在所有linux系统屮,系统都是通过uid來区分用户权限级别的,而uid为0的用户被系统 约定为是具冇超级权限。超级用户具冇在系统约定的最窩权限满园内操作,所以说超级用户可以 完成系统管理的所有工具;我们对以通过/etc/passwd來杳得uid为0的用八是root,而且 只有root对应的uid为0,从这一点来看,root用户在系统中是无可替代的至高地位和无限 制权限。root用户在系统中就是超级用户;2、理解uid和用户的对应关系当系统默认安装时,系统用户和uid是一对-的对关系,也就是说一个uid对应一个用户。 我们知道用户身份是通过uid来确认的,我们在用八(user)和用八纟ii.
3、 (group)配置文 件详解中的uid的解说中有谈到“uid是确认用户权限的标识,用户登录系统所处的角色是 通过uid来实现的,而非用户名;把儿个用户共用一个uid是危险的,比如我们把普通用户 的uid改为0,和root共用一个uid ,这事实上就造成了系统管理权限的混乱。如果我们想 用root权限,可以通过su或sudo来实现;切不可随意让一个用户和root分享同一个uid ; ”在系统中,能不能让uid和用户是一对多的关系?是可以的,比如我们可以把一个uid为0 这个值分配给儿个用户共同使用,这就是uid和用户的一对多的关系。但这样做的确有点危险; 相同uid的用八具有和同的身份和权限。
4、比如我们在系统屮把beinan这个普通用户的uid改 为0后,事实上这个普通用八就具有了超级权限,他的能力和权限和root用八一样;用户beinan 所有的操作都将被标识为root的操作,因为beinan的uid为0,而uid为0的用户是root , 是不是有点扰口?也可以理解为uid为0的用户就是root , root用户的uid就是0;uid和用户的一对一的对应关系,只是要求管理员进行系统管理时,所要坚守的准则,因为系 统安全还是第一位的。所以我们还是把超级权限保留给root这唯一的川户是最好的选择;如果我们不把uid的0值的分享给其它用户使用,只有root用户是唯一拥有uid= 0的话,
5、root 川户就是唯一的超级权限川户;3、普通用户和伪装用户与超级川户相对的就是普通川户和虚拟(也被称为伪装川户),普通和伪装川户都是受限川户; 但为了完成特定的任务,普通用户和伪装用户也是必须的;linux是一个多用户、多任务的操作 系统,多用八主要体现在用八的角色的多样性,不同的川八所分配的权限也不同;这也是linux 系统比windows系统更为安全的木质所在,即使是现在最新版本的windows 2003 ,也无 法抹去其单用户系统的烙印;二.超级用户(权限)在系统管理中的作用超级权限用户(ul d为0的用户)到底在系统管理中起什么作用呢?主要表现在以下两点;1、对任何文件、目录或进程进
6、行操作;但值得注意的是这种操作是在系统战高许可范围内的操作;有些操作就是具有超级权限的root 也无法完成;比如/proc目录,/proc是用來反应系统运行的实时状态信息的,因此即便是root也无能为力;它的权限如下root© ocal host # pwd/rootroot© ocal host # cd /root© ocal host / # i s -1 d /proc/dr - xr-xr - x 134 r oot r oot 0 2005- 1 0- 27 /pr oc/就是这个目录,只能是读和执行权限,但绝对没有写权限的;就是我们把/proc忖录的
7、写权限 打开给root, root川户也是不能进行写操作;root© ocalhost#ch mod 755 / proc修改proc文件权限root© ocalhost/#i s -1 d /proc/查看权限dr wxr xr x134r ootroot 0 2005-10-27/pr oc/root© ocalhost/#cd /pr oc/r oot ocalhostproc # mkdi r t est di rmkdi r:无法创建目录'test dir':没有那个文件或目录2、对于涉及系统全局的系统管理;碾件管理、文件系统理解、用户管
8、理以及涉及到的系统全局配置等等如果您执行某个命令或工具时,提示您无权限,人多是需要超级权限來完成;比如用adduser来添加用户,这个只能用通过超级权限的用户来完成;3、超级权限的不可替代性;由于超级权限在系统管理屮的不可缺少的重要作用,为了完成系统管理任务,我们必须用到超级 权限;在一般情况下,为了系统安全,对于一般常规级别的应川,不需要root川户來操作完成, root用户只是被用來管理和维护系统z用;比如系统口志的查看、清理,用户的添加和删除在不涉及系统管理的工作的环境下,普通用户足可以完成,比如编写一个文件,听听音乐;用 gimp处理一个图片等 基于普通应用程序的调用,大多普通用户就可
9、以完成;当我们以普通权限的用户登录系统时,有些系统配置及系统管理必须通过超级权限用户完成,比 如对系统口志的管理,添加和删除用户。而如何才能不直接以root登录,却能从普通用户切换 到root用户下才能进行操作系统管理需要的工作,这就涉及到超级权限管理的问题;获取超级权限的过程,就是切换普通川户身份到超级川八身份的过程;这个过程主要是通过su 和sudo来解决;三、使用su命令临时切换用户身份;1、su的适用条件和威力su命令就是切换用户的工具,怎么理解呢?比如我们以普通用户beinan登录的,但要添加用 户任务,执行useradd , beinan用户没冇这个权限,而这个权限恰恰rh roo
10、t所拥冇。解决办 法无法有两个,一是退出beinan用户,重新以root用户登录,但这种办法并不是最好的;二 是我们没有必要退出beinan用户,可以用su来切换到root下进行添加用户的工作,等任务 完成后再退hi rooto我们可以看到当然通过su切换是一种比较好的办法;通过su可以在用户z间切换,如果超级权限用户root向普通或虚拟用户切换不需要密码,什 么是权力?这就是!而普通川八切换到其它任何川户都需耍密码验证;2、su的用法:su opti on选项参数用户-i , -i ogi n登录并改变到所切换的用户环境;-c, - - commmand = command执行一个命令,然后
11、退出所切换到的用户环境;至于更详细的,请参看man su ;3、su的范例:su在不加任何参数,默认为切换到root用户,但没有转到root用户家目录下,也就是说这时 虽然是切换为root用户了,但并没有改变root登录环境;用户默认的登录环境,可以在 /etc/passwd中査得到,包括家目录,shell定义等;bei nan ocal host $ supasswor d:root© ocal host bei nan # pwd/home/ bei nansu加参数,表示默认切换到root用户,并且改变到root用户的环境;bei nan ocal host - $ pwd/h
12、ome/ bei nanbei nan ocal host $ su -passwor d:root© ocal host - # pwdi r ootsu参数用户名bei nan ocal host $ s ur oot 注:这个和su是一样的功能;passwor d:root© ocal host - # pwdi r ootbei nan ocal host $ su - i i nuxsi r 注:这是切换到 i i nuxsi r 用户passwor d:注:在这里输入密码;i i nuxsi r ocal host $ pwd 注:查看用户当前所处的位置;/ h
13、ome/1 i nuxsi ri i nuxsi r ocal host $ i d 注:査看用户的ul d和gl d信息,主要是看是否切换过来了;ui d = 505(i i nuxsi r) gi d = 502 (i i nuxsi r)gr oups = 0( root), 500(bei nan),502( i i nuxsi r)i i nuxsi r ocal host - $bei nan ocal host $ su - - c i s 注:这是su的参数组合,表示切换到r oot用户,并且改变到coot环境,然后列出root家目录的文件,然后退出root用户;passwor
14、 d: 注:在这里输入root的密码;anaconda ks.cfg des kt op install.log install.log .syslog t est groupt est gr oupbei nan t est gr oupr ootbei nan ocal host $ pwd 注:查看当前用八所处的位置;/home/beinanbei nan ocal host $ i d 注:查看当前用户信息;ui d = 50 0 (bei nan) gi d = 500(bei nan) gr oups = 500 (bei nan)4、su的优缺点;su的确为管理带來方便,通过切换
15、到root f,能完成所有系统管理工具,只要把root的密码 交给任何一个普通用户,他都能切换到root來完成所有的系统管理工作;但通过su切换到root后,也有不安全因素;比如系统有10个用户,而且都参与管理。如果这 10个用户都涉及到超级权限的运用,做为管理员如果想计其它用户通过su来切换到超级权限 的root,必须把root权限密码都告诉这1 0个用户;如果这1 0个用户都有root权限,通过 root权限可以做任何事,这在一定程度上就对系统的安全造成了威协;想想windows吧,简 直就是恶梦;“没有不安全的系统,只有不安全的人”,我们绝对不能保证这10个用户都能按正常操作流程來 管理
16、系统,其中任何一人対系统操作的重大失误,都可能导致系统崩溃或数据损失;所以su工具在多人参与的系统管理中,并不是最好的选择,su只适川于一两个人参与管理的 系统,毕竟su并不能让泮通用户受限的使用;超级用户root密码应该掌握在少数用户手中,这绝对是真理!所以集权而治的存在还是有一定 道理的;四、sudo授权许可使用的su,也是受限制的su1. sudo的适用条件;由于su对切换到超级权限用户root后,权限的无限制性,所以su并不能担任多个管理员所管埋的系统。如果用su來切换到超级用户来管埋系统,也不能明确哪些工作是由哪个管理员进 行的操作。特别是対于服务器的管理有多人参与管理时,最好是针对
17、每个管理员的技术特长和管 理范围,并且有针对性的下放给权限,并且约定其使用哪些工具来完成与其相关的工作,这时我 们就有必要用到sudoo通过sudo,我们能把某些超级权限冇针对性的下放,并且不需耍普通川八知道root密码,所 以sudo相对于权限无限制性的su来说,还是比较安全的,所以sudo也能被称为受限制的 su ;另外sudo是需要授权许可的,所以也被称为授权许可的su;sudo执行命令的流程是当前用户切换到root (或其它指定切换到的用户),然后以root (或 英它指述的切换到的川户)身份执行命令,执行完成后,直接退回到当而川户;而这些的前提是 要通过sudo的配置文件/etc/s
18、udoers來进行授权;2、从编写sudo配置文件/ etc/sudoers开始;sudo的配置文件是/etc/sudoers ,我们可以用他的专用编辑工具visodu ,此工具的好处是 在添加规则不太准确时,保存退出时会提示给我们错误信息;配逍好后,可以川切换到您授权的 用户下,通过sudol來查看哪些命令是可以执行或禁止的;/etc/sudoers文件中每行算一个规则,前面带有#号可以当作是说明的内容,并不执行;如果 规则很长,一行列不下时,可以用号来续行,这样看來一个规则也可以拥有多个行;/etc/sudoers的规则可分为两类;一类是别名定义,另一类是授权规则;别名定义并不是必须 的,
19、但授权规则是必须的;3、/ etc/ sudoers配置文件中别名规则别名规则定义格式如下:al i as_typename = i t em1, i t em2, 或al i as_typename = i t em1, i t em2? i t em3 : name = i t em4, i t em5别名类型(alias_type):别名类型包括如下四种host_alias定义主机别名;user_alias用户别名,别名成员可以是用户,用户组(询面要加号)runas_alias用来定义runas别名,这个别名指定的是“目的用户”,b|j sudo允许切换至的 用户;cm nd_alias
20、定义命令别名;name就是别名了,nmae的命名是包含人写字母、下划线以及数字,但必须以一个人写字母 开头,比女口 synadms syn_adm或synad0是合法的,synamda或1 synad是不合法 的;item按中文翻译是项目,在这里我们可以译成成员,如果一个别名下有多个成员,成员与成员 z间,通过半角,号分隔;成员在必须是有效并事实存在的。什么是有效的呢?比如主机名,可 以通过w查看用户的主机名(或ip地址),如果您只是本地机操作,只通过hostname命令 就能查看;用户名当然是在系统屮存在的,在/etc/paswd屮必须存在;対于定义命令别名,成 员也必须在系统中事实存在的文
21、件名(需要绝对路径);item 成员受别名类型 host_alias> user_alias> runas_alias> cmnd_alias 制约,定义什 么类型的别名,就要冇什么类型的成员相配。我们用host_alias定义主机别名时,成员必须是 与主机相关相关联,比如是主机名(包插远程登录的主机名)、ip地址(单个或整段)、掩码 等;当用户登录时,可以通过w命令来查看登录用户主机信息;用user_alias和runas_alias 定义时,必须要用系统用户做为成员;用cmnd_alias定义执行命令的别名时,必须是系统存 在的文件,文件名可以用通配符表示,配置cmnd.
22、alias时命令需要绝对路径;其中runas_alias和user_alias有点相似,但与user_alias绝对不是同一个概念, runas_alias定义的是某个系统用户可以sudo切换身份到runas_alias下的成员;我们在 授权规则中以实例进行解说;别名规则是每行算一个规则,如果一个别名规则一行容不下时,可以通过来续行;同一类型别 名的定义,一次也可以定义儿个别名,他们中间用:号分隔,host _ai i as ht01 =l ocal host,st05,st04, 10,0,0, 4, 255. 255. 255.0,1 92. 1 68.1. 0/24 注:定义主机别名ht
23、01 ,通过二号列出成员host al i as ht02 = st 09, st 10 注:主机别名ht02 ,有两个成员;host _ai i as ht01=1 ocal host,st 05,st 04,1 0,0,0,4,255.255.255.0,1 92.1 68. 1.0/24:ht02 = st09,st10 注:上面的两条对主机的定义,可以通过一条來实现,别名z 间用:号分割;注:我们通过host_alias眾义主机别名时,项目可以是主机名、可以是单个ip (整段ip地址 也可以),也町以是网络掩码;如果是主机名,必须是多台机器的网络屮,而且这些机器得能通 过主机名相互通信
24、访问才有效。那什么才算是通过主机名相互通信或访问呢?比如ping主机 名,或通过远程访问主机名来访问。在我们局域网屮,如果让计算机通过主机名访问通信,必须 设e/etc/hosts, /etc/resolv.conf ,还要有dns做解析,否则相互之间无法通过主机名访 问;在设置主机别名时,如果项目是中某个项目是主机名的话,可以通过hostname命令来查 看本地主机的主机名,通过w命令查來看登录主机是來源,通过來源來确认其它客户机的主机 名或ip地址;对于主机别名的定义,看上去有点复杂,其实是很简单。如果您不明门host_alias是怎么冋事,也可以不用设置主机别名,在定义授权规则时通过al
25、l 来匹配所有可能出现的主机情况。如果您把主机方而的知识弄的更明门,的确需要多多学习。user al i as sysad=bei nan, i i nuxsi r, bnnnb, i anhai t un 注:定义用户别名,下 有四个成员;要在系统中确实在存在的;user _ai i as netad=bei nan, bnnb 注:定义用户别名netad ,我想让这个别名下 的用户來管理网络,所以取了 netad的别名;user_ai i as webmaster=i i nuxsi r 注:定义用户别名 webmaster,我想用这个 别名下的用户来管理网站;user _ai i as
26、sysad=bei nan,i i nuxsi r, bnnnb, i anhai tun: netad=bei nan,bnnb :vvebmaster=i i nuxsi r 注:上面三行的别名定义,可以通过这一行来实现,请看前面的说 明,是不是符合?cmnd_ai i as usermag=/ usr / sbi n/ adduser, / usr / sbi n/us er del,/usr/bi n/pas s wd a- za z*,/bi n/ chown, / bi n / c h mo d注意:命令别名下的成员必须是文件或目录的绝对路径;cmnd_ai i ascmnd_ai
27、 i ascmnd_ai i ascmnd_ai i ascmnd al i asdi skmag=/ sbi n/ f di sk, / sbi n/ part ednetmag=/ sbi n/ i f conf i g, / et c/ i ni t . d/ net wor kki ll = /usr/bi n/ ki i ipwmag = / usr/sbi n/reboot,/usr/sbin/haltshells = / usr / bi n/ sh, /usr/bi n/ csh, /usr/bi n/ ksh, / usr /1 ocal / bi n/1 csh, / us
28、 r / bi n/ r sh, / usr /1 ocal / bi n/ zsh注:这行定义命令别名冇点长,町以通过号断行;cmnd_ai i as su = / usr/bi n/su,/bi n,/sbi n,/usr/sbi n,/usr/bi n在上面的例子中,冇kill和pwmag的命令别名定义,我们可以合并为一行来写,也就是等价行;cmnd_ai i as ki ll = / usr/bi n/ ki i i : pwmag =/ usr / sbi n/ reboot , / usr / sbi n/ hal t 注:这一行就代表了 ki ll 和 pwmag 命令别名, 把
29、ki ll和pwmag的别名定义合并在-行写也是可以的;runasai i as op = root, operatorrunas_ai i as dbadm=my sql : op = root, operator 注:这行是上面两行的等价行; 至于怎么理解runas al i as ,我们必须得通过授权规则的实例來理解;4、/ etc/ sudoers中的授权规则:授权规则是分配权限的执行规则,我们前而所讲到的定义别名主要是为了更方便的授权引用别 名;如果系统中只有儿个用户,其实下放权限比较有限的话,可以不用定义别名,而是针对系统 用户直接直接授权,所以在授权规则中别名并不是必须的;授权规
30、则并不是无章可寻,我们只说基础一点的,比较简单的写法,如果您想详细了解授权规则 写法的,请参看man sudoers授权用户主机二命令动作 这三个要素缺一不可,但在动作z前也可以指定切换到特定用户下,在这里指定切换的用户要用()号括起来,如果不需要密码直接运行命令的,应该加nopasswd:参数,但这些可以省略; 举例说明;实例一:bei nan all = /bi n/chown,/bi n/chmod如果我们在/etc/sudoers中添加这一行,表示beinan可以在任何可能出现的主机名的系统 中,可以切换到root用户下执行/bin/chown和/bin/chmod命令,通i±
31、; sudo -i来查看 beinan在这台主机上允许和禁止运行的命令;值得注意的是,在这里省略了指定切换到哪个用户下执行/bin/shown fil/bin/chmod命令; 在省略的情况下默认为是切换到root川户下执行;同时也省略了是不是需要beinan川户输入 验证密码,如果省略了,默认为是需要验证密码。为了更详细的说明这些,我们可以构造一个更复杂一点的公式;授权用户 主机二(切换到哪些用户或用户组)是否需要密码验证命令1,(切换到哪些用 户或用户组)是否需要密码验证命令2,(切换到哪些用户或用户组)是否需要密码验 证命令3注解:凡是屮的内容,是可以省略;命令与命令z间用,号分隔;通过
32、本文的例了,可以对照着看哪 些是省略了,哪些地方需要有空格;在(切换到哪些用户或用户组),如果省略,则默认为root用户;如果是all ,则代表能切 换到所冇用户;注意要切换到的口的用户必须用()号括起来,比如(all)、(beinan)实例二bei nan all = (r oot) i bi n/ chown, / bi n/ chmod如杲我们把第一个实例中的那行去掉,换成这行;表示的是beinan可以在任何可能出现的主 机名的主机中,可以切换到root下执行/bin/chown ,可以切换到任何用户招执行 /bin/chmod命令,通ii sudo -i来查看beinan在这台主机上允
33、许和禁止运行的命令;实例三:bei nan all = ( r oot) nopasswd:/bi n/chown,/bi n/chmod如杲换成这个例子呢?表示的是beinan可以在任何可能出现的主机名的主机中,可以切换到 root下执行/bin/chown ,不需要输入beinan用户的密码;并且可以切换到任何用户下执行 /bin/chmod命令,但执行chmod时需要beinan输入自己的密码;通过sudol來查看 beinan在这台主机上允许和禁止运彳亍的命令;关于一个命令动作是不是需婆密码,我们可以发现在系统在默认的惜况下是需要用户密码的,除 非特加指出不需要用户需要输入己密码,所以
34、要在执行动作z前加入nopasswd:参数;育可能有的弟兄对系统管理的命令不太懂,不知道其用法,这样就影响了他对sudoers定义的 理解,下面我们再举一个最简单,最有说服务力的例子;实例四:比如我们想用beinan普通用户通过more / etc/shadow文件的内容时,可能会出现下面的情 况;be in an ocal host $ mor e / et c/ shadowi et c/ shadow;权限不够这时我们可以用sudo more /etc/shadow来读取文件的内容;就就需要在/etc/soduers中 给beinan授权;于是我们就可以先su到root用户下通过visu
35、do来改/etc/sudoers ;(比如我们是以beinan 用户登录系统的)bei nan ocal host - $ supass wor d:注:在这里输入root密码下面运行vi sodu ;root© ocal host bei nan # vi sudo 注:运行 visudo 来改 / et c/ sudoer s加入如下一行,退出保存;退出保存,在这里要会用vi, visudo也是用的vi编辑器;至于vi 的用法不多说了;bei nan all = / bi n/ mor e 表示bei nan可以切换到root下执行more来查看文件;退回至ibeinan用户下,
36、用exit命令;root© ocal host beinan# exitexi tbei nan ocal host $查看beinan的通过sudo能执行哪些命令?bei nan ocal host $ sudo -1passwor d: 注:在这里输入bei nan用户的密码user bei nan may r un t he f ol i owi ng c o mma n d s on this host :注:在这里清晰的说明在本台主机上,bei nan用户可以以root权限运行more weroot权限下的mor e , 可以查看任何文本文件的内容的;(root) /bin
37、 /mo re最后,我们看看是不是beinan用户有能力看?ij/etc/shadow文件的内容;be in an ocal host $ sudo mor e / et c/ shadowbeinan不但能看到/etc/shadow文件的内容,还能看到只冇root权限下才能看到的其它文 件的内容,比如;bei nan ocal host $ sudo mor e / et c/ gs hadow对t beinan用户查看和读取所育系统文件中,我只想把/etc/shadow的内容可以让他查看; 可以加入下面的一行;bei nan all = / bi n/ mor e /etc/shadow题
38、外话:有的弟兄会说,我通过su切换到root用户就能看到所有想看的内容了,哈哈,对啊。 但咱们现在不是在讲述sudo的用法吗?如果主机上有多个用户并且不知道root用户的密码, 但又想查看某些他们看不到的文件,这时就需要管理员授权了;这就是sudo的好处;实例五:练习用户组在/ etc/ sudoers中写法;如果用户组出现在/etc/sudoers中,前面要加号,比如%beinan,中间不能有空格;%bei nan all = / usr / sbi n/ *, / sbi n/ *如果我们在/etc/sudoers中加上如上一行,表示beinan jij户组下的所有成员,在所有可能 的出现
39、的主机名下,都能切换到root用户下运行/usr/sbin和/sbin ii录下的所有命令;实例六:练习取消某类程序的执行;取消程序某类程序的执行,要在命令动作前面加上!号;在本例中也出现了通配符的,的用法;bei nan all = /usr/sbi n/*,/sbi n/*, !/usr/sbi n/fdi sk 注:把这行规则加入到 /etc/sudoers中;但您得有bei nan这个用户组,并且bei nan也是这个组中的才行;木规则表示beinan用户在所有可能存在的主机名的主机上运行/usr/sbin和/sbin下所有的程 序,但fdisk程序除外;beinanlocalhost
40、 $ sudo -ipassword:注:在这里输入beinan用户的密码;user beinan may run the following commands on this host:(root) /usr/sbin/*(root) /sbin/*(root) !/sbin/fdiskbeinanlocalhost $ sudo /sbin/fdisk -isorry, user beinan is not allowed to execute 7sbin/fdisk -i' as root on localhost.注:不能切换到root用户下运行fdisk程序;实例七:别名的运
41、用的实践;假如我们就一台主机localhost,能通过hostname來查看,我们在这里就不定义主机别名了,jij all来匹配所有可能出现的主机名;并且有beinan、linuxsir、lanhaitun用户;主要是通过小例子能更好理解;sudo虽然简单好用,但能把说的明白的确是件难事;最好的办法是多看 例子和 man soduers ;user _ai i as sysader=bei nan, i i nuxsi r, %bei nanuser _ai i as di skader=i anhai t unrunas_ai i as op = r ootcmnd_ai i as sydc
42、md=/ bi n/ chown, / bi n/chmod,/usr/sbi n/adduser,/usr/bi n/ pass wd a- za z,!/usr/bin/passwd r ootcmnd_ai i as dskcmd=/ sbin/parted,/sbin/fdisk 注:定义命令别名 dskcmd, 下有成员parted和fdisk ;sysader all= sydcmd, dskcmddi skader all=(op) dskcmd注解:第一行:定义用户别名sysader下冇成员beinan. linuxsir和beinan用户组下的成员, 用户组前面必须加号;第二
43、行:定义用户别名diskader,成员有lanhaitun第三行:定义runas用户,也就是目标用户的别名为op,下有成员root第四行:定义syscmd命令别名,成员之间用,号分隔,最后的!/usr/bin/passwd root表示 不能通过passwd來更改root密码;第五行:定义命令别名dskcmd,下有成员parted和fdisk ;第六行:表示授权sysader f的所有成员,在所有可能存在的主机名的主机下运行或禁止sydcmd和dskcmd下定义的命令。更为明确遥说,beinan. linuxsir和beinan用户组下 的成员能以root身份运行chown、chmod、add
44、user、passwd,但不能更改root的密码; 也町以以root身份运行parted和fdisk ,本条规则的等价规则是;bei nan, i i nuxsi r, %bei nan all = / bi n/ chown, / bi n/ chmod, / usr / sbi n/adduser,/usr/bi n/passwd a- za- z *, ! / usr / bi n/ passwdr oot , / sbi n/ par t ed, / sbi n/ f di sk第七行:表示授权diskader下的所有成员,能以op的身份,来运行dskcmd ,不需要 密码;更为明确的
45、说lanhaitun能以root身份运行parted和fdisk命令;其等价规则是:i anhai tun all = ( r oot) / sbi n/ par t ed, / sbi n/ f di sk可能有的弟兄会说我想不输入用户的密码就能切换到root并运行sydcmd和dskcmd下的命令,那应该把把nopasswd:加在哪里为好?理解下而的例子吧,能明口的;sysader all= nopasswd: sydcmd, nopasswd: dskcmd5、/ etc/ sudoers中其它的未尽事项;在授权规则中,还有noexec:和exec的用法,自己査man sudoers 了
46、解;还有关于在规 则中通配符的川法,也是需要了解的。这些内容不多说了,毕竞只是一个入门性的文档osoduers 配置文件耍多简单就有多简单,耍多难就有多难,就看自己的应用了。6、sudo的用法;我们在前面讲的/etc/sudoers的规则写法,最终的目的是让用户通过sudo读取配置文件屮的 规则来实现匹配和授权,以便替换身份来进行命令操作,进而完成在其权限下不可完成的任务;我们只说最简单的用法;更为详细的请参考man sudosudo 参数选项命令-i列出川八在主机上可川的和被禁止的命令;-般配逍好/etc/sudoers后,耍用这个命令來查 看和测试是不是配置止确的;-v验证用户的时间戳;如
47、果用户运行sudo后,输入用户的密码后,在短时间内可以不用输入 口令来直接进行sudo操作;用v nj以跟踪最新的时间戳;-u指定以以某个用户执行特定操作;-k删除时间戳,下一个sudo命令要求用求提供密码;举列:首先我们通过visudo来改/etc/sudoers文件,加入下面一行;bei nan, i i nuxsi r, %bei nan all = / bi n/ chown, / bi n/ chmod, / usr / sbi n/ adduser,/usr/bi n/passwd a- za- z *, ! / usr / bi n/ pass wdr oot , / sbi n/ par t ed, / sbi n/ f di sk然后列出beinan用户在主机上通过sudo可以切换用户所能用的命令或被禁止用的命令;bei nan ocal host $ su
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公开述职管理办法
- 分包欠薪管理办法
- 2026届海南省省直辖县重点名校中考押题语文预测卷含解析
- 新疆昌吉州教育共同体2020-2021学年高二上学期期中考试化学试卷含解析
- 第52讲 二项式定理及其应用【教研派资料社】
- (完整)初级养老护理员培训计划及大纲
- 2025年河南省商丘市睢县河集乡轩洼村社区工作人员考试模拟试题及答案
- 2025工勤技能试题及答案
- 10月全国自考高级财务会计模拟题及参考答案
- 2025年工勤司机笔试试题及答案
- GB/T 19609-2024卷烟用常规分析用吸烟机测定总粒相物和焦油
- 公路工程标准施工招标文件(2018年版)
- 废品回收合伙人协议
- 安全生产管理体系建设(共27张课件)
- 附件2:慢病管理中心评审实施细则2024年修订版
- 和父亲断绝联系协议书范本
- (正式版)SH∕T 3548-2024 石油化工涂料防腐蚀工程施工及验收规范
- 《慢性阻塞性肺疾病中医肺康复指南》
- 会议室改造方案
- 高中英语40篇英语短文搞定高考3500词记忆本册单词背诵本带翻译
- 矿床成矿规律与找矿预测方法
评论
0/150
提交评论