1.用户管理

2.用户组

3.权限分配

/etc/login.defs    

 /etc/default/useradd                  两个都是用户密码配置文件 

/etc/motd etc/issue 登录信息

/etc/passwd     用户信息文件    

/etc/shadow      用户密码文件极其登录的限制     在密码栏前面加『 * 』『 !』禁止使用某账户登录

/etc/group        用户组信息文件

/etc/gshadow    用户组密码文件

 

/etc/passwod   用户信息文件 

例:root:x:0:0:root:/root:/bin/bash  

  用户名 密码 UID GID 描述信息 宿主目录 命令解释器

 

UID (用户)

0        超级用户 自己添加的从500开始

1-499     伪用户  程序服务相关的 不需要登录 可以没有宿主目录

500-65535 普通用户

GID(组)

每个用户都至少有一个用户组(可以有多个)

每个用户组包括多个用户

同一个组用户享有改组的共有的权限

 

/etc/shadow    用户密码文件

例:root:$1#nWOaF1QQ$CPW.A/AYKJHJQDKU7CO:15551:0:99999:7:::

   用户名 加密过后的密码最后一次修改密码时间 最小时间天数 最大时间天数 账户闲职时间 失效时间  标志

 

/etc/grup     用户组信息文件

例:root:x:0:root

   组名 密码 GID 组内用户

 

useradd            //添加用户名 -g指定所属组 -d宿主目录-c描述信息

passwd             //添加用户密码 

userdel             //删除用户

finger              //查询用户详细信息

groupadd         //添加用户组

gpasswd          //设置用户组密码

newgrp             //切换当前所属用户组  (没有组密码并且当前用户是组的成员,则可切换成功)

usermod           //修改用户信息  

                     例://修改用户名    usermod   -l  新用户名 原用户名

                           //添加用户到组   usermod -G   组名   用户名      

                           // 添加用户到组      gpasswd -a  用户名 组名 

                           //从组删除用户      gpasswd -d  用户名 组名

 

 

 

1.添加0xls这个用户  添加到test管理组  在当前目录把dir目录所有者改成test

    groupadd   test    //添加管理组

    useradd -g test 0xls //创建用户并且添加test组 -g是指定组 不指定的画  默认创建

     passwd oxls        //给用户创建密码

     id 0xls           //查看下用户信息

     chgrp test dir     //改变dir目录的所有者

 --------------------------------------------------------------------------------------

 2.附加0xls账户到root组

      gpasswd -a 0xls root 或 usermod -G root ls 

 

 3.删除用户0xls,删除组test

  userdel -r user1

  #如果userdel user1删除,会留下用户家目录和用户邮箱

  groupdel test //删除组

 

一、查看与用户相关文件命令:

1.cat

2.more

3.head /etc/passwd   #查看文件的前十行

4.head -2 /etc/passwd #查看文件的前两行

5.tail /etc/passwd   #查看文件的后十行

6.tail -f /etc/passwd #实时跟踪文件的后十行

6.tail -2 /etc/passwd #查看文件的后两行

7.wc -l /etc/passwd  #显示文件的行数

8.nl /etc/passwd     #直接打印文件内容并且显示行号

 

 


用户配置文件 /etc/

Login.defs

Etc/default/useradd


用户类别:

Linux用户分为三种

超级用户 root    uid=0

普通用户         uid500-60000

伪用户:         uid1-499

Uid为0的用户叫做超级用户,命令提示符前 []# ls

伪用户

1、伪用户与系统和程序服务相关

Bin、baemon、shutdown、halt等,任何linux系统默认都有这些伪用户

Mail、news、games、apache、ftp、mysql及sshd等,与linux系统的进程相关。

2、伪用户通常不需要或无法登陆系统

3、可以没有宿主目录

 

二、用户管理:

1.新建用户

useradduser1

2.删除用户

userdel -ruser1

3.修改密码

1)passwduser1

2)echo 123|passwd--stdin user1

4.查看用户

id user1

 

5.管理用户命令-usermod

1)锁定一个用户

usermod -L user1

2)解锁一个用户

usermod -U user1

3)锁定用户后/etc/shadow

!$1$Ttyif4Oi$piuprg8yV9.FGc4MzA4EP0

#密码前面会出现一个!

 

 

四、组管理:

1.新建组

groupaddgrp1

2.删除组

groupdelgrp1

3.用户与组管理:

1.把用户加入组

1).usermod -g grp1user1

2).usermod -G grp1user1

3).gpasswd-a user1 grp1

#把用户user1加入组grp1

2.把用户从组删除

1).gpasswd -d user1grp1

#把用户user1从grp1组中删除

 

 

其他用户命令:

Finger用户  那台主机登录、什么时间登录、有没有邮件和计划任务

Su用户 切换用户

Passwd -S用户 查看用户的密码状态。

Who、w查看当前用户

批量添用户命令 循环+echo ‘12345’ |passwd --stdin user

Gpasswd -a user1grap1

Gpasswd -d user1grp1

 

五、用户与文件的关系-权限:


1.chmod

2.chown

3.setuid

4.setgid

5.sudo

6.acl

 

1.chmod授权方法

1)chmod 755/mnt

2)chmod a+xfile

3)umask文件权限掩码,由它决定文件夹权限是755,文件权限是      644

4)查看单个目录本身的权限

ls -ldmnt/

5)在当前终端切换用户

su - user1

 

2.chown改变所有者和所属组

chown user4test

#改变所有者为user4

chown :user4test

#改变所属组为user4

chown user4:user4test

#同时改变所有者和所属组

 

3.SetUID

操作对象:执行程序

-rwxr-xr-x  root rootfile

-rwsr-xr-x  root rootfile

查找setuid程序 find / -perm -4000 -o -perm -2000

作用:一个执行命令一旦加了s位,其他所有人执行时都是以该命令的所有者的身份在执行.

如何加s位:

1) chmod u+s/bin/touch

2) chmod 4755/bin/touch

4 2 1 setuid setgidt位

 

4.setgid

操作对象:文件夹

作用:对目录设置setgid,目录下的子文件夹也继承父文件夹的gid   权限

chmod g+stest

chmod 2755test

 

5.t位粘作位

操作对象:目录的权限是777

作用:在一个公共的文件夹内自己只能删除自己的东西

chmod o+t/tmp

chmod 1777/tmp

 

6.sudo授权

1)echo$PATH

#这个环境变量决定了你能在哪些路径下直接找到执行程序

2)设置sudo

   2-1)visudo

   2-2)vi /etc/sudoers

#不推荐第二种方法

user1  localhost=/usr/sbin/useradd user5,/usr/sbin/userdel -ruser5,/sbin/service httpd restart

3)!str#执行历史中离你最近一次以str开头的命令


7.acl授权

1)设置权限

setfacl -m u:user1:rwx/test

2)查看权限

getfacl/test

3)删除user1在/test上的权限

setfacl -x u:user1/test

4)删除/test上的所有acl权限

setfacl -b/test

5)设置acl的默认权限

setfacl -md:u:user1:rwx test

#当前目录的以后子目录会继承目录的acl权限