2020-03-02 17:40:02 来源:范文大全收藏下载本文
用户、组群和权限
目标
学习了本单元后,你应该能够: 解释Linux的安全模型
解释用户账号和组群账号的目的 理解并设置文件权限
用户
每个用户都被分配了一个独特的用户ID号码(UID)
其中UID 0代表根用户root 用户名和UID被保存在/etc/pawd这个文件中
当用户登陆时,他们被分配了一个主目录和一个运行的程序(通常是shell) 若无适当权限,用户无法读取、写入或执行彼此的文件
用户的管理
1、system-config-users 通过图形管理界面
2、useradd|userdel|pawd 通过命令创建、删除用户、设置密码。
useradd(创建用户)参数
参数: -u uid设置用户的uid号 -g gid 设置用户的gid号 -o表示去除uid的唯一性。
eg:useradd -u 1 -o abcdi -d /home/ 设置用户的工作目录,自家目录;默认普通用户的工作目录在/home;root用户的工作目录在/root. -s shell 设置用户的工作shell,默认shell为/bin/bash.其它的shell可以查看/etc/shells文件。
/sbin/nologin: 表示允许远程访问数据,但不允许远程管理系统,一般将samba,ftp,www,mail等账户设置为/sbin/nologin.-r 直接建立一个系统账户(非一般用户) uid >100 Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器)。它类似于DOS下的command.com
userdel(删除用户)参数
-r 将此用户的home目录和邮箱一并删除。 userdel -r aaa userdel cc (rm /home/cc /var/mail/cc -rf)
pawd(设置密码)参数 -l 锁用户,冰结账户 -u 解锁
cc 更改用户密码。
组群
用户被分配给组群
每个组群都被分配了一个独特的组群ID号码 GID被保存在/etc/group这个文件中 每个用户都有他们自己的私有组群
每个用户都至少属于一个组群,很可能更多,当创建一个用户时,它默认属于一个和他们的用户名相同的组群,例如创建用户test时,也相应创建了test组群,用户test输入test组群
可以被添加到其他族群总来获得额外的存取权限 组群中的所有用户都可以共享属于该组群的文件 groupadd|groupmod|groupdel|gpawd groupadd参数
-g gid -o 去除gid的唯一性 -r 创建系统账号
groupmod参数
-n new_groupname 改名
groupdel参数
/etc/group /etc/gshadow
gpawd参数
-a 将用户添加到工作组中 gpawd -a user1 g1 -d 将用户从g1组中删除 gpawd -d user1 g1
用户的相关文件
/etc/pawd 存放着所有用户帐号的信息 root:x:0:0:root:/root:/bin/bash 1 2 3 4 5 6 7 1:用户名 2:密码验证 3:用户ID 4:组 ID 5:用户的描述信息(非必要) 6:用户家目录
7:该用户当前的shell eg: username:paword:User ID:Group ID:comment:home directory:shell /etc/shadow 是/etc/pawd 的影子文件,和/etc/pawd这两个文件是应该是对应互补的(只允许管理员查看)
root:$1$wvR9dMo/$oTrZZ1jvDhlSfcNPo4q.:1425:0:99999:7: : : 1 2 3 4 5 6 7 8 9 1:帐号名称
2:经过MD5加密过的密码
3:最近更动密码的日期(距1971年1月1日) 4:密码不可更改的天数(0 表示随时可更动) 5:密码需要重新变更的天数(99999永久有效) 6:密码需要变更期限前的警告期限(默认为7天)
7:密码过期宽恕时间(过了警告期限的还能使用的天数) 8:帐号失效时间 (也采用1971年1月1日来设置) 9:系统保留
/etc/group 含有关于小组的信息 root:x:0:root,marco /etc/skel/* 用户个人配置信息目录
/etc/login.defs 用户登录相关信息
/etc/default/useradd useradd命令的默认参数。
~/.bashrc bash的初始化脚本,启动bash时,此脚本会自动运行。 ~/.bash_profile 用户个人配置文件,环境变量。
~/.bash_logout 用户注销时,自动执行的脚本。垃圾清理程写在此文件中。
以上三个文件,只对某个特定的用户生效,且在登录时或者打开终端时自动运行,或注销时自动运行。
用户和工作组实验:
1、创建用户user1,工作目录为/home/user1,shell为/bin/ksh,uid为8888,gid为1,描述是zhangsan。
2、创建用户admin,工作目录为/admin,shell为/bin/bash,uid为0,gid为0,描述为administrator
3、创建用户lisi,设置只允许远程访问,不允许远程管理。
4、创建工作组group1,并将user1,lishi添加到group1组中。
Linux文件安全性
每个文件都属于一个UID和一个GID 三种存取权限类型:
进程使用和文件相同的UID来运行(用户,user) 进程使用和文件相同的GID来运行(组群,group) 所有其他进程(其他,other)
权限类型
在显示权限时,使用了四种符号:
r读权限
对于文件:就是具有浏览文件内容的权限
对于目录:就是具有对这个目录进行列表的权限
w写权限
对于文件:就是可以修改文件的内容,但不意味着可以删除文件
对于目录:就是可以在目录下创建文件,删除文件
判断是否可以删除一个文件,依据是否对文件所在目录具有写权限
x执行权限
对于文件:具有执行这个文件的权限,一般是指命令,脚本等可执行文件
对于目录:具有进入该目录
- 权限(在r、w或x的位置上)
d rwxr-xr-x 4 root root 1024 Feb 13 11:08 boot 1
8 1.验证文件为目录或者档案,一般有以下类型: )“d”目录,
“-”档案 )“l”链接档, “p”数据传输文件 )“b”硬件设备 “c”串口或者并口 2.文件的权限属性
3.链接(确定里面有多少个下一级子目录) 4.文件拥有者(不是建立者) 5.文件归属组 6.文件大小 7.修改日期
8.文件名称(注意前面带“.”的为隐藏文件)
文件类型(-): 0002 默认管理员的umask 0022
建立文件: 644 = 06660022
特殊权限 特权位和粘贴位
suid:普通用户在执行具有suid权限的文件时,是以属有者的身份在执行。 例如:/bin/ping /bin/mount sgid:任何用户在具有sgid权限位的目录下创建文件或目录时,会自动的继承父目录的工作组。
sticky 粘贴位,普通用户a创建的文件只允许a和root用户删除,其它的任何均不可删除。 如何计算:
suid,sgid,t u=rwx g=rwx o=rwx
1 1 1 111 111 111 7 7 7 7
补充权限
suid 4 用于表示“x” 小写“s”代表有“x”位 sgid 2 用于表示“x” 小写“s”代表有“x”位 sticky bit 1 用于表示“x”小写“t”代表有“x”位 注意:T或S为大写时,表示相对应的x执行位不存在。
改变文件所有者
只有根用户(root)才能改变文件的所有者
只有根用户(root)或所有者才能改变文件的组群 chown命令被用来改变所属用户
chown –R 用户名 文件|目录(-R递归修改) chgrp被用来改变所属组群
chgrp –R 组群名 文件|目录(-R递归修改)
改变权限方法
符号式方法
要改变存取权限模式: chmod –R 模式 文件 这里的模式是
u、g或o分别代表用户、组群和其他用户
+或-代表授予或拒绝
r、w和x分别代表读取、写入和执行 例如:
chmod ugo+x myfile(或者chmod +x myfile):授予所有用户以读取权限
chmod o-wx myfile:拒绝其他用户的写入和执行权限 数字式方法
使用三个数字模式
第一个数字代表所属用户的权限
第二个数字代表群组权限
第三个数字代表其他用户的权限 通常把以下数值相加起来计算权限
4代表读取
2代表写入
1代表执行 例如:
chmod 640 myfile 总结
所有文件都属于一个用户和一个组群
文件的模式由三类权限构成:用户权限、组群权限以及其他权限
三种权限可以被授予或拒绝:读取(r)、写入(w)、执行(x)
练习
1、以下数字式权限的符号式表达是什么?
6
44、7
55、000、7
11、700、77
7、5
55、1
11、600、731
2、家丁某个文件的权限时755,用哪些命令可以把这个权限改成r-xr—r--?
3、你刚刚从互联网上下载了一个值得信任的文件,并想执行它。在你能执行之前,你应该采取什么步骤?列举两种不同的方法来执行这个步骤
4、root用户应该如何改变文件的所有权才能使它的所属用户是joe,所属组群使apache?
5、创建/aaa目录,要求此目录的权限为2755,工作组为bin。
6、创建/data目录,要求此目录的权限具有/tmp相关的权限。
人人范文网 m.inrrp.com.cn 手机版