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:(用户信息文件)
a:帐号名
b:用户密码。x意为密码在/etc/shadow
c:uid号。普通用户UID数从500开始用起,root用户其UID为0,1-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
history //看历史命令
passwd(设置密码)
/etc/shadow
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:::
3:usermod -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
usermod -g 组名 用户名 //替换/etc/passwd第四字段,初始用户组
usermod -G 组名 用户名 //修改/etc/group第四字段,累加!,有效用户组(附加组)
加入多组:usermod -G g1,g2 test(也可直接修改/etc/group文件!)
chown 改变文件或目录的文件所有者
chown testuser.testuser1 a (同时修改用户和组)
chown testuser2 c
chgrp 改变文件或目录的组所有者
chgrp -R test test(目录) (将目录下的文件也修改)
权限
ls -l //查看权限
ls -ld //查看目录权限
ls -al //查看隐藏文件权限
-rwxrwx--- 1 root root 1491 Jun 25 08:53 test
[ 属性] [连接数][拥有者][用户组][文件容量 ][ 修改日期 ] [ 文件名 ]
连接数:对于目录来讲,该列显示的就是其下的目录数(包含.和..)
-rwxrwx---
1、 :第一个表示文件类型
d:目录 -:文件 l:链接文件(软链接,和windows下快捷方式类似) b:块设备(硬盘) c:字符设备 (鼠标键盘)
s:套接字(sockets) p: 管道文件(FIFO,pipo) s 和p 进程间的信息共享与通信!
2、:除第一个外后,后面都是以三个为一组
r 可读 \ 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
chmod u=rwx,g=rwx filename
chmod a+x filename
chmod o-r filename
目录+x权限 :能打开目录(没有x,不能打开)
./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
长8 有四个不同(与旧密码) 大写至少2个,小写至少1个 数字3个 字符1个
备注:密码更改时,如果是在root用户下对普通用户进行更新,违反规则的密码设置会被警告,如果是普通用户对自己密码进行更改,则会受此策略限制,更改无法通过
#yum install expect (一个产生密码的工具)
#mkpasswd