首页 > 代码库 > linux 学习记录- 用户切换

linux 学习记录- 用户切换

一、用户切换:
     缘由:1、使用一般账号操作系统,这是平日操作的好习惯。2、用较低权限启动系统服务:如apache软件,可以建立        apache用户来启动apache软件,如果这个程序被攻破,系统也不至于损毁。3、软件本身的限制。

      a、su  最简单的切换用户身份的方法
      使用方法:  su 【-lm】【-c 指令】【username】
           详解: -:代表使用login-shell的变量档案读取方式来登入系统,若后面没有用户名,代表切换到root。
                  -l: 同- 后面必须接名字,也是用login-shell方式登入系统。
                  -m:-m同-p,表示使用目前的环境设定,不使用新使用者的环境。
          -c: 后面接指令,但仅执行一次指令。
      b、sudo
          相对于su需要了解切换root的密码,而sudo只需要使用自己的密码,保证了系统的安全。
          使用方法:  sudo 【-b】【-u新使用者账号】
      -b : 将后续的指令放到背景中让系统自动执行,而不语目前的shell产生影响。
          -u: 后面可以接欲切换的使用者,若没有接用户,默认是root。

          执行重点:用户能否可以使用sudo,必须要看/etc/sudoers中的设定值。
   【shell中分号(;)来延续指令进行  使用 sh -c 方法俩执行一连串指令。】

    c 、visudo :  将/etc/sudoers 档案调出来进行修改,来对用户能否使用sudo进行设定。
        四列内容:
        如: 使用者账号      登入者来源主机名=(可切换的身份)  可下达的指令
               root              ALL=(ALL)      ALL             默认
         第一列:哪个账号可以使用sudo指令
          第二列:这个账号可以由哪部主机联机到这个linux主机,默认root可来自任何一部网络主机
          第三列:这个账号可以切换成什么身份来下达后续的指令,默认root可以切换成任何人。
          第四列:该身份可以下达什么指令,必须使用绝对路径,moreroot可以切换任何身份且执行任何指令。

    d、透过别名设置 visudo:方便设置多个用户时使用
       例子:
             User_Alias ADMPW=pro1,pro2,pro3
             Cmnd_Alias ADMPWCOM= !/usr/bin/passwd,/usr/bin/passwd[A-Za-z]*,!/usr/bin/passwd root
             ADMPW ALL=(root) ADMPWCOM

      User_Alias 建立一个新账号 Cmnd_Alias 命令别名 Host_Alias  来源主机名别名  都需要使用大写字符。


    e、sudo时间间隔问题:
        两次执行sudo的间隔在5分钟内,再次执行sudo不需要再次输入密码。