二、用户、组和权限

2024-01-14  本文已影响0人  离港时的灯塔

用户和组

配置文件罗列和部分命令详解
/etc/passwd    /etc/shadow   /etc/group    /etc/gshadow   注意着四个文件
id + 用户    查看用户的用户id,组id
组口令用于其他用户添加到指定的组中去的
chage 命令用于详细的密码时长的修改
pwck  检查用户密码文件的完整性(/etc/passwd以及/etc/shadow文件)
grpck 检查用户组及密码文件的完整性(etc/group以及/etc/gshadow文件)
pwconv    命令用于开启用户的投影密码。   开启后密码由/etc/passwd文件变为/etc/shadow中
pwunconv    用于接触用户密码投影

group  组操作
groupadd     增加组 ,一般组的id从1000开始,系统组的id从1000下降,-r 指令添加系统组
groupmod    组设定    groupmod -g   id   修改id值
groupdel      删除组
gpasswd   修改组的指令,用于其他用户添加组,newgr   切换主组的时候需要用
        -a   user   group    将user添加至指定组中
        -d  user   group     将user从指定组中删除
        -A  user     设置管理权限的用户列表
newgrp  临时切换主组     newgrp   + 组名  切换主组,如果用户不属于这个组就需要密码
groupmems   -a  user    group    将user用户添加到group组中去
group   user   查看用户的所在组

user   用户操作
useradd    增加用户   
-u  id   设定增加用户的id,普通用户 1000+,系统用户1000-
-o  忽略唯一性检查,不同的用户名可以使用相同的id值,系统认为同一个用户
-s   指定shell类型
-r  设定系统用户    不会创建家目录
-g  指定主组   -G   指定附加组   -N   不增加同名组,会默认放到user组中
-d   指定家目录 
-m  为系统用户用户创建家目录,和-r搭配使用

usermod命令
结合useradd的选项可以使用
-g    user   group    修改user的组为group
-a     结合-G 用来增加附加组   例如  -aG     采用空串取消   useradd  -G  “”    group
-L   user  锁定某个用户    其实在shadow文件中登录的项目中为叹号
-U  user 解锁已经锁定的用户   但是不能用于空口令的时候
-e   YYYY-MM-DD   指定用户的过期时间
-f  10    设定非活动过期时间
-r   user   删除用户家目录
-l   urchin(新用户名称)   test(原来用户名称)

userdel   删除用户
userdel   user   删除用户,对应的家目录还有,组还有邮件文件一块删除 
userdel -r   user   删除用户和相关的数据和家目录,尽量不要采用这个选项

newusers    批量创建用户
newuser    文件名     批量创建用户,文件的格式和/etc/passwd文件夹相一致

finger命令
finger命令可用于查看用户的详细信息,但是需要安装
chfn命令可以添加用户的详细信息等

/etc/default/useradd 默认用户添加后相关信息的配置
在配置文件   /etc/default/useradd   中写明白了
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel     //其他用户家目录中的文件的模板文件的路径
CREATE_MAIL_SPOOL=yes
以上的可以通过useradd -D 来显示,然后通过-D   -s 修改shell  等

/etc/login.defs    目录下面是写的一些默认配置信息,比如邮箱文件的路径,默认密码的时长等等一些
uid的数值其实位置
密码登录时长最长设置
默认加密算法
默认掩码 

/etc/skel/目录是用来存放新用户配置文件的目录,当我们添加新用户的时候,这个目录下的所有文件会自动被复制到新添加的用户的家目录下。

su 用户切换
su -   user   完全切换
su   user 不完全切换
su  -   user  -c  “cmd”   切换后执行命令,执行完成后会退出来

passwd   用户密码相关的
-d   删除指定用户密码
-l  锁定指定用户密码
-u  解锁指定用户密码
-e  强制用户下次修改密码

-----------------------------------------------------------------------------------------------------------------------------

文件权限

chmod   修改文件权限
x与X的权限都是执行的权限,但是在进行递归赋值执行权限的时候可以只给目录文件权限,不给普通文件执行权限
chmod  -R    a+X    file      在目录下所有的目录文件赋予执行权限,普通文件不给执行权限

特殊权限
SUID权限     数值为4
用于可执行的二进制文件,执行者集成次文件所属者的权限
有一些文件是普通用户没有权限打开和执行的,但是通过一些命令就可以修改,比如passwd这个命令具具备执行命令的s权限,就可以对/etc/shadow 文件进行修改
赋予SUID权限   chmod   u+s    file    只能给二进制的可执行权限,对于脚本不适用,没法给就是
赋予SUID权限   chmod   4775    file  通过数字方式复制
-rwsr-xr-x. 1 root root 27832 Jun 10 2014 /bin/passwd
SGID权限      数值为2
用于可执行的二进制文件,执行者集成次文件所属组的权限
用户目录,新建的文件将自动集成次目录的所属组
赋予SGID权限   chmod   G+s    file 
赋予SGID权限   chmod   2775    file  通过数字方式复制
sticky   位,数值为2    只用于目录文件
只能删除自己的文件
当权限最后一位位t位时就是说明即使某个文件夹权限为777,里面的文件也只能由此目录的属主和属组的人员删除,其他人员不能删除

只针对root的一些特殊属性
这个需要内核版本的支持,需要linux 2.6版本以上的内核才可以
chattr     +i     file     给文件file增加i属性
chattr    -i   file      删除文件的i属性
lsattr   file     查看文件的特殊属性
i    属性,不可以删除
a   可以追加,不能删除,不能打开重新编辑

umask掩码,以及计算方式   
在创建一份目录问价你的时候,默认全部权限为777,创建普通问价你的时候为666
666   110   110   110
123    001  010  011
          110  100  100   = 644
掩码为1的就去掉,掩码为0的就保持默认,按照二进制计算就可以
如果是文件通过相减的方式进行也行,偶数不变,奇数加1 
umask   -S   显示用户权限信息
umask  -P    打印出需要的命令
umask 022   设定umask值为022

acl   访问控制列表
这样可以打破现有的权限,创建更复杂的权限,设定好权限之后,在文件权限写明的地方会出现个+号
setfacl   设置cal权限
setfacl   -m    u:fu:-  file|dir     将文件file  设定为fu用户不能进行读写和执行
setfacl   -m    g:fu:rw  file   将文件file  设定为fu组可以进行读写操作
setfacl   -b  -R  file    清楚file的acl权限,-R进行递归删除
setfacl   -k   删除默认权限
setfacl   -m    d:u:fu:ew   dir    将目录文件设定默认的权限
setfacl -m   mask::r    file     设定文件的权限上线,但是文件所有者不受此选项的限制
getfacl  file   查看file的acl权限
cp  -p   可以拷贝acl权限,但是他人打包的时候做不到

上一篇下一篇

猜你喜欢

热点阅读