4-Linux 权限管理

属主,属组,非用户组

用户:标识符
用户组:标识符

进程是用户发起的进程,也有属主和属组之分

安全上下文(secure context)

权限:

r,w,x

对于文件来说:

r: 可读,可以查看文件内容,可以用cat 查看内容
w:可写, 可以编辑或删除此文件
x: 可执行, exacutable, 可以在命令提示符下当做命令提交给内核运行

对于目录来说:

r: 可读, 可以用ls列出文件中的所有文件内容
w: 可写, 可以再此目录中创建文件
x: 可进入,可以使用cd切换进此目录,也可以使用ls -l查看文件的详细信息:

用户: UID user ID /etc/passwd
组:GID group ID /etc/group

解析,名称解析,
影子口令
用户密码: /etc/shadow
组密码: /etc/shadow

用户类别

管理员:0
普通用户:1-65535
系统用户:1-499 不可以登录系统
一般用户:500-6000

系统用户:限制不可以登录系统?

用户组:

管理员组:
普通组:
系统组:
一般组:

用户组类别:

私有组: 创建用户时,如果没有为其制定所属组,系统会自动为其创建一个与用户同名的组
基本组: 用户的默认组
附加组,额外组: 默认组以外的其他组

进程都是可执行文件,进程的权限与进程发起者权限一致

/etc/passwd
account: 登录名
password:密码
UID
GID:基本组ID
GECOS:用户的注册信息
HOME DIR:家目录
SHELL : 用户默认shell

/etc/shadow
login name : 登录名
encryoted passwd: 加密的密码
密码前加入叹号!或者*号,则用户不可登录
密码使用期限
密码最短使用期限
密码最长使用期限
密码剩余有效期
密码过期后可使用期限
账号有效期
保留字段

加密方法:
对称加密,加密和解密使用同一个密码
公钥加密,每个密码都成对出现,一个为私钥,一个为公钥(密钥长,速度慢)
单向加密,散列加密:可以由明文获得密文,用于提取数据特征码,也称为指纹加密,实现数据完整性校验

  1. 不可逆
  2. 雪崩效应 初始条件的微小改变引起结果的巨大改变
  3. 定长输出
    MD5: Message Digest, 128位定长输出
    SHA1: Secure Hash Algorithm, 160定长输出

添加用户 useradd

useradd + username
-u UID 其他用户尚未使用的ID号,且大于500
-g GID 基本组 组必须存在
-G GID 。。。(附加组,组必须预先存在)
-c "COMMENT" 指定注释信息
-d /path/to/directory 指定某个目录为家目录
-s 指定登录shell
-m -k 复制 /etc/skel 中.bashrc .bash_profile 等命令复制到家目录下
-M 不创建家目录,也没有配置文件
-r 添加一个系统用户 不会创建家目录
/etc/shells:指定当前系统中可用的shell

/sbin/nologin 则不可以登录

id 命令 查看用户的账号属性信息ß
-u 显示UID
-g 显示GID
-G 显示所有组GID

finger 查看用户账号信息
finger USERNAME

userdel

userdel [option] USERNAME
默认删除后不删除家目录
-r 删除用户同时删除家目录

管理员 passwd + username 给用户更改密码

usermod 更改账户信息

-u UID
-g GID
-G 更改附加组 会覆盖此前附加组
-a -G 追加附加组
-c
-d 为用户指定新的家目录 -m 可以移动此前的文件至新的家目录中
-s
-l 更改用户的登录名
-e 指定用户的过期时间
-L 锁定用户账号
-U 解锁用户账号

chsh 修改用户的默认shell

chfn 修改用户的comment信息,注释信息

密码管理

passwd

passwd [username]
--stdin 从标准输入
-l lock 锁定用户账号
-u unlock 解锁用户账号
-d 删除用户密码 清空用户密码则不可以登录(RedHat )

pwck 检查用户账号的完整性

添加组 groupadd

groupadd GRPNAME
-g 指定GID
-r 添加一个系统组

groupmod
-g GID
-n GRPNAME

gpasswd 修改组密码


newgrp

登录到一个新组中,退出用exit

创建一个用户需要的步骤
1./etc/passwd
2./etc/shadow
3./etc/grp
用户管理命令:
useradd,userdel,usermod,passwd,chsh,chfn,finger,id,chage

chage 更改用户的密码信息

权限管理:
三类用户:
u: 属主
g:属组
o:其他用户


chown: 改变文件属主(只有管理员可以使用此命令)

chown username file
-R 修改目录机器内部文件的属主
--reference =path/to/somefile file.. 改为与reference一样的属主和属组信息
chown username:grpname file 同时改变属主和属组
chown username,grpname


chgrp 改变文件属组

chgrp grpname file
-R
--reference


chmod 修改文件权限

1.修改三类用户权限:
chmod MODE file
-R
--reference
2.修改某类用户的某些权限:
u,g,o,a
chmod u=MODE file
3.修改某类用户的某位或某些位权限
chmod u,g,o,a +/- MODE


umask 遮罩码
umask 可以指定用户的遮罩码

文件默认不能具有执行权限,如果算得结果中有执行权限,则默认将其权限加一


SHELL的类型
登录式shell :
正常通过某终端登录
su - USERNAME
su -l USERNAME

非登录式shell:
su USERNAME
图形终端中打开的命令窗口
自动执行的shell脚本


bash shell 的配置文件:
全局配置
/etc/profile, /etc/profile.d/*.sh, /etc/bashrc
个人配置
~/.bash_profile, ~/.bashrc

profile 类的文件:
设定环境变量(作用范围越小越生效)
运行命令或脚本

bashrc 类的文本
设定本地变量
定义命令别名

登录式shell如何读取配置文件
/etc/profile > /etc/profile.d/*.sh > ~/.bash_profile > ~/.bashrc > /etc/bashrc

非登录式shell如何读取配置文件
~/.bashrc > /etc/bashrc > /etc/profile.d/*.sh

bash 脚本解释器

你可能感兴趣的:(4-Linux 权限管理)