用户管理

1.什么是用户
用户操作者在系统中的身份
用户是最底层安全机制的一部分
用户在系统中以字符和文件的形式存在
2.用户存储文件
/etc/passwd 用户信息||用户名称:密码:uid:gid:说明:家目录: 默认shell 注:默认shell的指定有哪些可以查看系统中/etc/shells文件
/etc/group 用户组信息文件 ||组的名字:组密码:组id: 组成员
/etc/shadow 认证信息文件
/home/username 用户的家目录
**/etc/skel/.*** 默认开启shell的配置,用户的骨文件

对用户的管理相当于对文件的管理
**3.用户信息查看**
 1>查看当前用户
     whoami   

2>系统中用户的查看
id 用户名 查看指定用户的id信息
id
-u 查看用户的uid
-g 查看用户的gid
-G 查看用户所在的组id
-n 显示名字而不显示id数字
eg id -G -n 用户名字
3>用户切换
gnome-session-quit --force 注销当前用户

利用watch -n -1 "tail -n 3 /etc/passwd /etc/group; ls -l /home"实时监控用户信息的变化

**su切换用户**
su - 用户名称
   su    中“-”表示在用户身份切换时同时切换当前用户的环境
   su -  执行时高级用户切换到低级用户不需要密码,低级用户切换到高级用户需要,平级用户切换也需要

注意:每次su切换其他用户操作之后必须退出,然后再次切换到其他用户
用户级别
root 0
systemuser 1-500(q6) 1-700(q7)
loginuser 1000- 65530 60000
在文件 /etc/login.defs
不加r 用户有写配置文件会没有删除,当再次创建用户时,会说用户已经存在
useradd 名称 建立用户
useradd "hhhh" 创建用户hhh
useradd -g 21 "hhhh" 指定用户组为21的用户必须 存在
useradd -G 21 hhh 指定用户附加组id "21用户组必须存在“

useradd -c "hello" hhh 指定用户说明
useradd -d /home/lee hhh 指定用户的家目录
useradd -s /bin/sh hhh 指定用户默认shell
userdel -r 用户 -r表示吧用户所涉及的配置都删除
不加r 用户有写配置文件会没有删除,当再次创建用户时,会说用户已经存在

groupadd 建立用户组
groupadd -g 888 hhh 建立用户组并指定用户组的id
groupdel 删除用户组

更改用户信息
usermod
usermod -l 新名称 hhh 更改用户的名称
usermod -u 6666 hhh 更改用户的uid
usermod -g 21 hhh 更改用户的初始组
usermod -G 21 hhh 更改用户的附加组
usermod -aG 72 hhh 添加用户的附加组
usermod -G "" hhh 删除用户所有附加组的身份
usermod -c "haha" hhh 指定用户说明文字
usermod -d /home/lee hhh 更改用户家目录的指向
usermod -md /home/lee hhh 更改用户家目录
usermod -s /bin/sh hhh 更改用户的shell
usermod -L hhh 冻结用户
usermod -U hhh 解锁用户

/etc/shadow

[1] 账户名称
[2] 为密码(账号未设置时为!!,需用passwd hhh 将密码解开,设密码后加密显示)
[3] 用户密码最后一次被更改的时间 时间是距(1970-1-1)开始的累积天数
[4] 用户密码最短有效期 如果此位设定数字,那么此数字范围内的天数内是不能修改用户密码的
[5] 用户密码最长有效期 用户密码必须在有效期内更改密码,如果超时会被冻结
[6] 密码警告期限 在过期前制定天数内会发送警告信息给用户
[7] 此位默认为空,如果设定数值,那么在密码最长有效期过后仍然可以使用的天数
[8] 账号失效日期
[9] 暂时未使用

echo 密码 | passwd --stdin 用于将密码给设置

密码设置

用户密码
passwd hhh 更改hhh密码
passwd -l hhh 在用户密码前加入“!!”
passwd -u hhh
usermod -L hhh 在用户密码前加入“!”
usermod -U hhh 在密码不为空时使用 用于解除密码锁定
passwd -d hhh 清空hhh 密码
注意:
普通用户改密码时
1.必须知道当前用户原始密码
2.密码不能和账号名称相似
3.密码不能是有效的数字或有序纯字母
4.密码如果是纯数字或字母要大于8

1> 用户密码最后一次被修改的时间
passwd -e hhh 会改变用户最后一次更改密码时间为0
注: 用户在登录时会被强制更改密码
chage -d 0 hhh 两个命令相似
2>用户密码最短有效期
passwd -n 1 hhh 用户在一天之内不能修改密码
chage -m 1 hhh
3>用户密码最长有效期
passwd -x 30 hhh
chage -M 30 hhh 设定hhh用户在30天内必须改密码
4>密码警告期
passwd -w 2 hhh
chage -W 2 hhh 密码过期前两天会有警告
5> 用户非活跃天数
passwd -i 1 hhh
chage -I 1 hhh 密码过期后仍可登录的天数
6>用户到期日
chage -E 2018-11-11 hhh 用户在几号会被冻结

用户管理

用户授权
1.权力下方文件/etc/sudoers
2.下方方式
visudo
100行左右
用户 主机名称 =(得到的用户身份) 命令
tom localhost = (root) /usr/sbin/useradd
tom用户可以在localhost主机以root用户身份执行useradd命令
tom localhost = ( root) NOPASSWD:/usr/sbin/useradd
tom用户在localhost主机以root用户身份免密执行useradd
3.测试

su - tom
sudo useradd hello
多用户
Cmnd_Alias CTRLUSER = /usr/sbin/useradd,/usr/sbin/userdel,/usr/sbin/usermod
User_Alias ADMIN = 用户名称
ADMIN localhost=(root) NOPASSWD:CTRLUSER

文件权限
1.文件权限存在的意义 touch可以改文件时间 查。。。。。。
系统最底层安全设定方法之一
保证文件可以被可用的用户做相应的操作
2文件权限的查看
ls -l file
ls -dl file
ll file
ll -d dir
ls -lR 目录 递归显示目录下所有子文件
3.文件权限的读取

  • | rw-rw-r-- | 1 | kiosk | kiosk | 0 | Jul 21 09:18 | file
    1>文件类型
    • 空文件
      d 目录
      l 软链接 类似windows下的快捷方式
      s socket 套接字 在网络数据连接。可以启动一个程序来监听客户端的要求,客户端就可以通过套接字来进行数据通信
      b block 块设备 存储数据以供系统存取的接口设备,简单讲就是硬盘
      c 字符设备 串行端口的接口设备(键盘 鼠标)
      补:p 管道文件 解决多个程序同时存取一个文件所造成的错误。FIFO先进先出
      2> 文件的权限
      rw- | rw- | r--
      u: 文件拥有者对文件能做什么操作
      g:文件所有组对文件能做什么操作
      o:其他人对文件能做什么操作

r: 对文件:是否可以查看文件内容 -->cat file
对目录 :是否可以查看目录中用什么子文件或子目录 --> ls dir
w: 对文件: 是否可可以改变文件里面的字符
对目录:是否可以对目录中子目录或子文件的原数据进行更改
x:对文件:是否可以通过文件名称调用文件内记录的程序
对目录:是否可以进入目录

对于目录来说一般如果给了r权限一定要给x 5的来源
更改方式:
chmod <u|g|o><+|-|=>=><r|w|x> file|dir
chmod --reference=file/dir file/dir 复制指定文件权限到指定文件
数字 r 4 (100) w 2 (010) x 1 ( 001)
chmod 775 指定文件
文件644 目录755 为了安全

改变用户的所有人所有组
文件
chown username file|dir
chown user.group(:) file|dir
chown -R user.group dir

chgrp group file|dir
chgrp -R group dir 目录及目录里的文件都会发生改变

用户管理

umask 系统默认权限 777-022(目录)-111(文件)
umask是系统建立默认的保留权力 (二进制表示)
umask 077 临时设定系统预留权限为077
永久修改uamsk 在 /etc/bashrc 以及/etc/profile文件下进行配置
批注:些如何分辨超级用户以及普通用户
vim /etc/bashrc 71 普通用户 73 超级用户
vim /etc/profile60 普通用户 62 超级用户
source /etc/bashrc
source /etc/profile
用户管理用户管理
2.特殊权限 (查查查看视频后面两节的)
sticky 粘贴位 swap分区 文件也有用 sticky id 提前加载内存
作用:只针对目录生效,当一个目录只有sticky权限时在这个目录中的文件只能被文件的所有者删除
设定方式chmod o+t dir
chmod 1### dir

2.sgid 强制位
作用:对文件只对于二进制文件 可执行文件,当文件上有sgid时任何人执行此文件的进程都属于文件组
:对目录当目录上有sgid权限时任何在次目录中建立的文件都属于目录的所有组
设定方式: chmod g+s file|dir
chmod 2### file|dir

3suid冒险位
只针对于2进制可执行文件,当文件上有Suid时,任何人执行这个文件中的程序进程都属于文件所有人
4.acl权限列表
1.作用:让特定用户对特定的文件拥有特定的权限

2.acl列表管理
权限列表存在的意义:让特定的用户对特定的文件拥有特定的权限

setfacl -m u:username:rwx file 设定username对file拥有rwx权限
setfacl -m g :group:rwx file 设定group组成员对file有rwx权限
setfacl -x u:username file 从cal 列表删除username
setfacl -b file 关闭file列表
3.acl列表查看
-rw-|rwx|r--+(acl开启)
getacl file 查看acl开启文件的权限
#file:file 文件名称
#owner: root 文件拥有者
#group: root 文件拥有者
user::rw- 文件拥有人的权限
user:kiosk:rwx 指定用户权限
group::r--文件拥有组的权利
mask::rwx 能赋予用户的最大权利
other::r-- 其他人的权限

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章