0410accountmanager.htm

来自「鸟哥LINUX 学习课本」· HTM 代码 · 共 1,086 行 · 第 1/5 页

HTM
1,086
字号
<br><font color="#ff0000">语法</font>:<table bgcolor="#000000" border="1" cols="1" width="600"><tbody><tr><td><font size="-1" face="SimSun"><font color="#ffffff">[root @test/root]# </font><font color="#ffff00">passwd [username]</font></font><br><font size="-1" face="SimSun"><font color="#ffffff">[test @test/root]# </font><font color="#ffff00">passwd</font></font><br><font size="-1" face="SimSun"><font color="#ffffff">[root @test/root]# </font><font color="#ffff00">passwd test</font></font><br><font size="-1" color="#ffffff" face="SimSun">Changing passwordfor user test</font><br><font size="-1" face="SimSun"><font color="#ffffff">New password:&#160;&#160;&#160;&#160;</font><font color="#ff9900">&lt;==输入密码</font></font><br><font size="-1" color="#ffffff" face="SimSun">BAD PASSWORD:it is based on a dictionary word</font><br><font size="-1" face="SimSun"><font color="#ffffff">Retype newpassword:&#160;&#160;</font><font color="#ffff00"> </font><font color="#ff9900">&lt;==再输入一次!</font></font><br><font size="-1" color="#ffffff" face="SimSun">passwd: allauthentication tokens updated successfully</font></td></tr></tbody></table><font color="#ff0000">说明</font><font color="#000000">:</font><br><font color="#000000">这个指令可以修改使用者的密码!要注意的是,这个指令在/bin/passwd 中,而账号所存放的地方在 /etc/passwd 中,是不一样的呦!搞清楚呦!</font><ul><li><font color="#000000">一般使用者的用法是直接输入 passwd 即可;</font></li><li><font color="#000000">root 可以使用 passwd [username] 来替 username 这个账号取一个新的密码!</font></li></ul></blockquote></blockquote><hr width="100%"><a name="userchange"></a><font size="+1" color="#000099">使用者身份切换:</font><blockquote><font color="#000000">这里有个很有趣的问题要来跟大家分享一下,还记得在古老的年代里面,还没有ssh 的时候,我们都是使用 telnet 登入系统的,偏偏系统预设是不开启 root 以telnet 登入,那么好了!我们要怎样远程操控我们的 Linux 主机呀!?因为由前面的介绍我们不难发现,系统当中最特殊的账号就是UID 为 0 的使用者了,他具有至高无上的权力!而且是系统管理员必须要具备的身份,否则怎样操控主机呢?您说是吧!好了,那么telnet 将 root 的登入权限关掉了,而如果我们在制作一个使用者,并将其 UID变为 0 的话又如何?嘿嘿!很抱歉, telnet 就是认 UID 的,所以肯定还是进不了系统,这个时候要怎么办呀!?就是变换身份呀!将一般使用者的身份变成了root 就行了!</font><br><font color="#000000"> </font><br><font color="#000000">但是怎样变换身份呀?怎么说呢?就是说,一般而言,我们都不希望以root 的身份登入主机,以避免被怪客入侵了!但是一部主机又不可能完全不进行修补或者是设定等动作!这个时候要如何将一般使用者的身份变成root 呢?主要有两种方式,分别是:</font><ul><li><font color="#000000">以 su 直接将身份变成 root 即可,但是这个指令却需要root 的密码,也就是说,如果你要以 su 变成 root 的话,你的一般使用者就必须要有root 的密码才行;</font></li></ul><ul><li><font color="#000000">所以当有很多人同时管理一部主机的时候,那么 root 的密码不就很多人知道了?不是很好吧?所以,如果不想要将root 的密码流出去呢?呵呵!可以使用 sudo 来进行工作呦!</font></li></ul><font color="#000000">底下我们就来说一说 su 跟 sudo 的用法啦!</font></blockquote><blockquote><blockquote><hr width="100%"><li><a name="su"></a><b><font color="#000099" face="SimSun">su</font></b></li><br><font color="#ff0000">语法</font>:<table bgcolor="#000000" border="1" cols="1" width="600"><tbody><tr><td><font size="-1" face="SimSun"><font color="#ffffff">[root @test/root ]# </font><font color="#ffff00">su</font></font><br><font size="-1" color="#ff9900" face="SimSun">参数说明:</font><br><font size="-1" color="#ff9900" face="SimSun">范例:</font><br><font size="-1" face="SimSun"><font color="#ffffff">[test@testtest]$ </font><font color="#ffff00">su</font></font><br><font size="-1" face="SimSun"><font color="#ffffff">Password:&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</font><font color="#ff9900">&#160;&lt;==输入 root 的密码</font></font><br><font size="-1" face="SimSun"><font color="#ffffff">[root@testtest]#&#160;&#160;&#160;&#160;&#160;&#160;</font><font color="#ff9900">&lt;==身份变成 root 了!</font></font><br><font size="-1" face="SimSun"><font color="#ffffff">[test@testtest]$ </font><font color="#ffff00">su -</font><font color="#ff9900">&#160;&lt;==连环境参数档案都是读取 root 的!</font></font><br><font size="-1" face="SimSun"><font color="#ffffff">[root@testroot]# </font><font color="#ffff00">su test&#160;</font><font color="#ff9900">&lt;==将 root 的身份改为 test ,且不需要输入密码喔!</font></font></td></tr></tbody></table><font color="#ff0000">说明</font><font color="#000000">:</font><br><font color="#000000">这个指令很有用呦!这是用来将『</font><font color="#000066">一般身份转换成super user</font><font color="#000000"> 』的指令!通常为了安全的考虑,telnet 与 ssh 尽量不要以 root 的身份来登入!但是有时后我们又要在外头以root 的身份来修改系统设定,这个时候 su 就很有用了!su 的使用真的很简单,输入su 之后,直接给他输入 root 的密码,此时您就是 root 了!但是需要特别留意的是:</font><ul><li><font color="#000000">虽然您已经是 root 的身份,但是您的环境当中,还是属于当初登入的那个使用者!例如我以test 登入 Linux ,再以 su 切换身份成为 root ,但是我的 mail, PATH 及其它一些相关的环境变量,都还是test 这个身份呢!</font></li></ul><ul><li><font color="#000000">至于环境变量当中,最麻烦的当属 PATH 这个东西,因为为了避免一般使用者使用了root 的管理指令,所以通常 Linux 都会将指令分类放在两个主要的目录,分别是/bin 与 /sbin !那个 /sbin 大多是 super user 就是 root 用来管理系统的指令啦!所以,可能的话,将test 的 PATH 重新设定成为 root 的 PATH ,这样也比较方便呀!</font></li></ul><ul><li><font color="#000000">如果要全部的环境变量均使用 root 的设定档,这个时候必需使用『</font><font color="#000099" face="SimSun">su -</font><font color="#000000"> 』来下达命令喔!</font></li></ul><font color="#000000">此外, su 也可以将您的身份转换成为其它身份的使用者,而,如果您是root ,那么转换为其它身份的使用者,将不需要输入密码喔!很过瘾吧!例如上面的最后一个例子!</font></blockquote></blockquote><blockquote><blockquote><hr width="100%"><li><a name="sudo"></a><b><font color="#000099" face="SimSun">sudo</font></b></li><br><font color="#ff0000">语法</font>:<table bgcolor="#000000" border="1" cols="1" width="750"><tbody><tr><td><font size="-1" face="SimSun"><font color="#ffffff">[root @test/root ]# </font><font color="#ffff00">sudo [-u username] [command]</font></font><br><font size="-1" color="#ffffcc" face="SimSun">参数说明:</font><br><font size="-1" color="#ff9900" face="SimSun">-u&#160; :将身份变成username 的身份</font><br><font size="-1" color="#ffffcc" face="SimSun">范例:</font><br><font size="-1" face="SimSun"><font color="#ffffff">[test@testtest]$ </font><font color="#ffff00">sudo mkdir /root/testing</font></font><br><font size="-1" face="SimSun"><font color="#ffffff">Password:&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</font><font color="#ff9900">&lt;==输入 test 自己的密码</font></font><br><font size="-1" face="SimSun"><font color="#ffffff">[root@testtest]$ </font><font color="#ffff00">sudo -u test touch test</font><font color="#ffffff"></font><font color="#ff9900">&lt;==root 可以执行 test 这个使用者的指令,建立test 的档案!</font></font></td></tr></tbody></table><font color="#ff0000">说明</font><font color="#000000">:</font><ul><li><font color="#000000">如果单纯的使用 su 来变换成 root 的身份,最大的好处是可以直接下达我们惯用的指令,但是,还是会有问题的,就是如果主机是由多人共管的时候,由于所有的人都必须要知道root 的密码,如此一来,呵呵!很麻烦的啦!因为怕被入侵嘛!而且只要 root改变了密码,那么所有人都必需要通知一次!很麻烦,加上,如果管理群中的一个人不小心泄出了root 的密码,不就完蛋了??那么有没有可以不需要 root 的密码,却还是可以执行root 的工具呢?呵呵!这个时候就有 sudo 的出现了!</font></li></ul><ul><li><font color="#000000">sudo 的基本语法就是在 sudo 后头直接加上指令,例如上面的例子中,mkdir /root/testing 就是命令啦!那么就可以来执行 root 身份可以动作的事情!此外,由于执行root 身份的工作时,『输入的密码是使用者的密码,而不是 root 的密码,所以可以减少root 密码外流的问题!』如此 root 的密码将不会流出去了!但是 sudo 在使用的时候请小心,就是要在/etc/sudoers 里头设定该有的事项!在预设情况下,只有 root 才能使用 sudo!那有什么用!我们是一般使用者,想要使用的是 sudo 来变成 root 的身份呀!呵呵!没关系!可以使用visudo 来编辑 /etc/sudoers 这个档案即可!在 Mandrake 9.0 与 Red Hat 的Linux 版本之的预设情况中,使用『 visudo 』才能编辑 /etc/sudoers 这个档案,此外,编辑者的身份必须要root 才行!如何编辑呢?在预设的情况中,我们会希望将可以执行 root 动作的人的group 设定为 wheel ,然后:</font></li><br><font color="#000000"> </font><table bgcolor="#000000" border="1" cols="1" width="630"><tbody><tr><td><font size="-1" face="SimSun"><font color="#ffffff">[root@est /root]#&#160;<a name="visudo"></a></font><font color="#ffff00">visudo</font></font><br><font size="-1" color="#ffffff" face="SimSun"># sudoers file.</font><br><font size="-1" color="#ffffff" face="SimSun">#</font><br><font size="-1" color="#ffffff" face="SimSun"># This fileMUST be edited with the 'visudo' command as root.</font><br><font size="-1" color="#ffffff" face="SimSun">#</font><br><font size="-1" color="#ffffff" face="SimSun"># See the sudoersman page for the details on how to write a sudoers file.</font><br><font size="-1" color="#ffffff" face="SimSun">#</font><br><font size="-1" color="#ffffff" face="SimSun"># Host aliasspecification</font><br><font size="-1" color="#ffffff" face="SimSun"># User aliasspecification</font><br><font size="-1" color="#ffffff" face="SimSun"># Cmnd aliasspecification</font><br><font size="-1" color="#ffffff" face="SimSun"># Defaultsspecification</font><br><font size="-1" color="#ffffff" face="SimSun"># User privilegespecification</font><br><font size="-1" color="#ffffff" face="SimSun">root&#160;&#160;&#160;ALL=(ALL) ALL</font><br><font size="-1" color="#ffff00" face="SimSun">test&#160;&#160;&#160;ALL=(ALL) ALL&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;==这一行可以加入,使 test 这个人可以使用 sudo</font><br><font size="-1" color="#ffffff" face="SimSun"># Uncommentto allow people in group wheel to run all commands</font><br><font size="-1" face="SimSun"><font color="#ffffff"># %wheel&#160;&#160;&#160;&#160;&#160;&#160;&#160;ALL=(ALL)&#160;&#160;&#160;&#160;&#160;&#160; ALL&#160;&#160;&#160; </font><font color="#ffff00">&lt;==将这一行批注符号取消</font></font><br><font size="-1" color="#ffffff" face="SimSun"># Same thingwithout a password</font><br><font size="-1" color="#ffffff" face="SimSun"># %wheel&#160;&#160;&#160;&#160;&#160;&#160;&#160;ALL=(ALL)&#160;&#160;&#160;&#160;&#160;&#160; NOPASSWD: ALL</font><br><font size="-1" color="#ffffff" face="SimSun"># Samples</font><br><font size="-1" color="#ffffff" face="SimSun"># %users&#160;ALL=/sbin/mount /cdrom,/sbin/umount /cdrom</font><br><font size="-1" color="#ffffff" face="SimSun"># %users&#160;localhost=/sbin/shutdown -h now</font></td></tr></tbody></table><font color="#000000"> </font><br><font color="#000000">如果如同上面的方式,将黄色字体那一行 /etc/sudoers里头将</font><br><font color="#000000"> </font><ul><font color="#000066">『 <font face="SimSun"># %wheel&#160;&#160;&#160;&#160;&#160;&#160;&#160;ALL=(

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?