RHEL 7 用户和权限

用户(UID)
       root:x:0:0:root:/root:/bin/bash   //root用户

bin:x:1:1:bin:/bin:/sbin/nologin //系统用户

testuser:x:500:502::/home/testuser:/bin/bash  //普通用户

vim  /etc/passwd:(用户信息文件)

RHEL 7 用户和权限

a:帐号名

b:用户密码。x意为密码在/etc/shadow

c:uid号。普通用户UID数从500开始用起,root用户其UID01-499为系统使用帐号。与/etc/login.def有关,opensuse就是从1000开始!

d:gid号。同上

e:用户信息说明栏

f:家目录。root用户家目录/root,普通用户家目录默认为/home/username

g:shell。可以是/bin/bash   /bin/ksh   /bin/csh  /sbin/nologin


useradd(新建用户)

useradd  -g  groupname  -d  /home/username  -s  /bin/bash -e 2015-07-01  userame 

-g    初始用户组   //一个用户可以加入多个组

        未指定组时,默认组名与用户名相同

-d    家目录。模板/etc/skel/,默认创建在/home/username

-s    指定shell,默认为/bin/bash,也可以是/sbin/nologin

        /sbin/nologin在邮件系统帐号创建,FTP用户帐号,无需登录

-e    过期时间

useradd  -r   username   //创建系统帐号

系统帐号在创建时至少会参考如下文件

/etc/login.def  /etc/default/useradd    /etc/skel

RHEL 7 用户和权限

history      //看历史命令


passwd(设置密码)

/etc/shadow

RHEL 7 用户和权限

   1:帐号名称 2:密码 3:最近更改密码的日期 (以1970.1.1开始算起至今的天数)

   4:密码不可更改的天数,为0就是可随时更改

   5:密码需要重新更改的天数,99999表示密码不需要重新输入,不受天数限制

   6:密码更改期限前的警告期限:密码快到期时,提前这个数字的天数发出警告

   7:密码过期的宽限时间,在这个天数内,还可以使用这个密码登录

   8:帐号失效日期(以1970.1.1

   9:保留字

 chage   -l  ttt      //查看过期时间(ttt为用户)

usermod   -e  2020-10-20   ttt   //修改过期时间

date   +"%s"     //linux时间戳,1970到现在的秒数

 

Passwd   ttt(设置密码)

1:在创建用户名时,设置密码后 /etc/shadow

  testuser2:$6$D2H6.:15980:0:99999:7:::

2:在创建用户名时,设置密码前 /etc/shadow

  testuser2:!!:15980:0:99999:7:::

3usermod  -L  testuser2   //锁定用户  -U 解锁

  testuser2:$6$D2H6.:15980:0:99999:7:::

  通过屏蔽/etc/shadow对应行,实现锁定功能

  passwd也有参数可以实现锁定功能(-l  -u

4:无交互密码赋值 echo redhat |passwd -–stdin user1


userdel(删除用户)

userdel  username  

  这个只会删除/etc/passwd  shadow中的相关信息

userdel  -r  username   // 连家目录一起删除

  /var/spool/cron  手删

  /var/spool/mail 


组ID(GID)

groupadd         //新建组

groupadd     -g    10000   ttt   //新建一个组,gid号为10000

/etc/group

RHEL 7 用户和权限

usermod  -g  组名   用户名 //替换/etc/passwd第四字段,初始用户组

usermod   -G 组名 用户名 //修改/etc/group第四字段,累加!,有效用户组(附加组)

加入多组:usermod   -G g1,g2   test(也可直接修改/etc/group文件!)

RHEL 7 用户和权限

    chown   改变文件或目录的文件所有者

    chown    testuser.testuser1  a   (同时修改用户和组

    chown   testuser2  c

RHEL 7 用户和权限

    chgrp    改变文件或目录的组所有者

    chgrp  -R test  test(目录)    (将目录下的文件也修改

 

RHEL 7 用户和权限


权限

ls  -l   //查看权限

ls  -ld  //查看目录权限

ls    -al   //查看隐藏文件权限

-rwxrwx---   1     root       root      1491      Jun 25 08:53    test

[ 属性]   [连接数][拥有者][用户组][文件容量 ][  修改日期  ]    [  文件名  ]

连接数:对于目录来讲,该列显示的就是其下的目录数(包含...

RHEL 7 用户和权限

-rwxrwx---

1、 :第一个表示文件类型

   d:目录   -:文件     l:链接文件(软链接,和windows下快捷方式类似)   b:块设备(硬盘)  c:字符设备 (鼠标键盘)

   s:套接字(sockets)    p: 管道文件(FIFO,pipos 进程间的信息共享与通信!

 

2、:除第一个外后,后面都是以三个为一组

   可读 \  w 可写 \ x  可执行(执行权限

   可以使用数字对应 r=4  w=2  x=1

注意:linux下文件是否可执行与文件名后缀 无关,与x权限有关!

 

权限修改:

chmod    //修改权限     (root用户可以强制写入    wq!

chmod   770  filename

owner = rwx = 4+2+1 = 7

group = rwx = 4+2+1 = 7

others= --- = 0+0+0 = 0

RHEL 7 用户和权限

chmod  u=rwx,g=rwx   filename

chmod  a+x   filename

chmod o-r  filename

RHEL 7 用户和权限

目录+x权限  :能打开目录(没有x,不能打开)

RHEL 7 用户和权限

RHEL 7 用户和权限

./3.sh       执行脚本文件3.sh

stat   222      //查看  atime   ,mtime  ,ctime

atime:最近一次访问时间

mtime:最近一次内容改变时间

ctime:最近一次改动时间(权限、组等)


密码策略文件

/etc/pam.d/passwd

/etc/pam.d/system-auth

password    requisite     pam_pwquality.so try_first_pass retry=4  type=   minlen=10 difok=6 ucredit=2

密码设置中,大小写敏感,密码最小长度为10个字符,新旧密码至少要有6个不同,大写字母至少两个

minlen=8  difok=-4 ucredit=-2 lcredit=-1 dcredit=-3 ocredit=-1

有四个不同(与旧密码)  大写至少2个,小写至少1个 数字3个  字符1

 

备注:密码更改时,如果是在root用户下对普通用户进行更新,违反规则的密码设置会被警告,如果是普通用户对自己密码进行更改,则会受此策略限制,更改无法通过

#yum  install   expect       (一个产生密码的工具)

#mkpasswd