一、用户
用户:是计算机使用者的标识
用户分为:1、管理用户
2、普通用户: 分为系统用户 ,登录用户
用户标识:管理员:0
普通用户:1-65535
系统用户:centos6是(1---499),centos7是(1---999)
普通用户:centos6是(50---60000)centos7是(1000---60000)
名称解析:一个格式的名字转换成为另外一个格式的名字,根据名称解析库进行,名称解析库存放位置/etc/passwd
二、组
组的分类:
1、组可分为管理员组,组标识是0
普通用户组:可分为系统用户组,标识是(1---999)
登录用户组,标识是(1000---60000)
名称解析:groupname转换为GID,解析库库存放于/etc/group下
2、组可分为基本组、附加组
3、组可分为私有组:组名同用户名
公共组:组内包含多个用户
三、认证信息
1、认证信息:是比对事先存储的与登录时的信息是否一致
因此认证需要密码,用户密码存放于/etc/shadow,组密码存放于/etc/gshadow,
2、密码使用策略:1、使用随机密码 2、长度最好超8位 3、应用大小写字母数字和标点四类中至少三类 4、定期更换
3、加密算法:
对称加密:加密和解密用同一个密码
非对称加密:加密和解密使用一对密钥,即:公钥(public key)、私钥(private key)
单向加密:只能加密,不能解密,提取数据特征码。
特性:定长输出,提出来输出一样大
雪崩效应,初始条件微小改变将引起结果的巨大变化
4、算法:sha5,sha1sum,sha224sum,sha256sum,sha384sum,sha512sum
5、为防止不同用户使用相同密码时特征码一样,在计算时加入随机数(salt),使结果不同
6、用户的信息库解析/etc/passwd:
内容格式 name:password:UID:GID:GECOS:directory:shell
1.name:用户名,2.password:密码,3.UID:UID号,4.GID:GID号,5.GECOS:注释信息,
6.directory:用户家目录,7.shell:用户默认shell
7、用户密码,存放在/etc/shadow ,格式为:
用户名:加密密码:最近一次修改密码的使用时间:最短使用期限:最长使用期限:警告时间:过期期限 :保留字段
8、组的信息库,存放在/etc/group:
组名:密码:GID号:user list(以此组为附加组的用户列表)
四、Linux用户和组管理
安装上下文:进程以发起者额身份运行。进程对文件的访问权限,取决于发起此进程的用户权限。
1、grouadd,创建组 用法:groupadd 【opptions】 groupname
-g,手动指定GID,默认是上一个GID+1
-r,创建系统组
(系统组)注:为了能够让后台进程或服务类进程以非管理员的身份进行,通常创建多个用户,这类用户从不登录系统。
2、groupdel , 删除组 用法groupdel groupname
3、groupmod,修改组属性 用法groupmmod 【opptions】 groupname
-g修改GID
-n修改组名
4、useradd 创建用户 用法:user 【opptions】 username
注:创建用户时的默认设定配置文件在/etc/login.defs中
-u设定UID号
-g指明基本组,此组要事先存在
-c注释信息
-G指明附加组,可以多个用逗号隔开
-d指定用户的家目录,(通过复制/etc/skel目录重命名实现,若指定的路径事先存在,则不会为用户创建环境配置文件)
-s指明用户的默认SHELL,可用的SHELL存储在/etc/shells中
-r创建系统用户
-m强制为用户创建主目录
-M不为用户创建主目录
-D显示创建的默认属性信息,并能修改。用法:useradd -D 【opptions】newuser。修改的结果保存在/etc/default/useradd中
5、usermod 修改用户属性 用法:usermod 【opptions】 username
-c修改注释信息
-u修改UID
-g修改用户所属基本组
-G修改用户附加组,原来附加组会被覆盖,后面加选项a则是为用户添加新的附加组
-d修改用户的家目录,原有文件不会移动到新位置。与选项m一起使用时,原来家目录文件移动到新的家目录中
-l修改用户名
-s修改用户默认shell
-L锁定用户密码,禁止用户登录。表现为在原来的密码字符串前加一个!
-U解锁用户密码
6、userdel 删除用户(默认不删除用户家目录)
-r删除用户,一并删除家目录
7、passwd 修改用户密码(修改用户自己的密码)
passwd username 修改指定用户的密码,仅ROOT用户有此权限
-l锁定用户
-u解锁用户
-d清除用户密码
-e DATE 过期期限
-i DAYS 非活动期限
-n DAYS 密码最短使用期限
-x DAYS 密码最长使用期限
-w DAYS 警告期限
--stdin 可以把密码的数据流定向至标准输入,从而通过管道向他输送一个字符串。
用法:echo ‘password‘ | passwd --stdin username
8、gpasswd 默认给组添加密码。组密码文件/etc/gshadow
-a 向组中添加用户
-d从组中移除用户
9、newgrp 临时切换指定额组为基本组
- 会模拟用户重新登录,以实现重新初始化其工作环境
10、chage 改密码过期信息 用法 chage opptions login name
-d 上一次密码的修改期限
-E过期日期
-w警告期限
-m最短使用期限
-M最长使用期限
11、id 显示用户真实和有效ID 用法:id username
-u 仅显示有效的UID
-g仅显示基本组ID
-G显示所属的所有组ID(包括基本组和附加组)
-n显示名称
五、权限管理
进程对文件的访问模型:首先看进程的属主与文件的属主是否相同,相同则具有属主权限;若不同看进程属主是否在文件的属组 内,若在则应用属组权限,否则只能应用其他权限。
rwxrwxrwx r读w写x执行
对文件而言:r是指可获取文件的数据,常用命令cat,more,less等
w是指修改文件数据 x是指可将此文件运行为进程
对目录而言:r是指可以用ls命令获取所有文件列表,w是指可以修改此目录下的文件列表
x是指可以cd到此目录中,并且可以用ls -l获取文件详细属性信息
权限组合机制及对应二进制,八进制
--- 000 0
--x 001 1
-w- 010 2
-wx 011 3
r-- 100 4
r-x 101 5
rw- 110 6
rwx 111 7
六、权限管理命令
1、chmod改变文件权限 四类用户u属主g属组o其他a所有
用法一:chmod 【opptions】 MODE [MODE]...
1:操作一类用户的所有权限位.例如:chomod u=rw,g=rx passwd
2:操作一类用户的一个权限位例如 chmod u+rx,g-x passwd
用法二:八进制权限表示法 chmod 【option】 octal-mode file
例如:chomd 640 fstab
用法三:引用性修改:参考文件引用到新文件权限
例如:chmod --reference= /etc/log message fastab
-R选项,递归修改,修改目录下的所有文件。
2、Chown:改文件的属主和属组
-R递归修改 用法:chown -R 用户名 文件名
Chown -R 用户名:属组 文件名
例如:Chown -R --reference=/tmp/moosefs/ /tmp/skel
3、Umask:文件的权限反向掩码,遮罩码
用法:umask 查看当前umask;
umask mask 设置umask(修改仅对当前有效)
文件默认权限:666-umask(默认文件没有执行权限),若减得结果中有执行权限,则需要将加一。
目录默认权限:777-umask
4、Install:复制文件,设置文件属性
-m设置文件权限,默认为755
-o设定目标文件属主
-g设定目标文件属组
-
原文:http://10998017.blog.51cto.com/10988017/1722556