linux用户身份与文件权限

1. linux 用户身份

1. 添加用户

useradd

参数作用
-d指定用户的家目录(默认为/home/username)
-e账户的到期时间,格式为 YYYY-MM-DD.
-u指定该用户的默认 UID
-g指定一个初始的用户基本组(必须已存在)
-G指定一个或多个扩展用户组
-N不创建与用户同名的基本用户组
-s指定该用户的默认 Shell 解释器

2. 创建用户组

groupadd

3. 修改用户的属性

usermod

参数作用
-c填写用户账户的备注信息
-d -m参数-m 与参数-d 连用,可重新指定用户的家目录并自动把旧的数据转移过去
-e账户的到期时间,格式为 YYYY-MM-DD
-g变更所属用户组
-G变更扩展用户组
-L锁定用户禁止其登录系统
-U解锁用户,允许其登录系统
-s变更默认终端
-u修改用户的 UID

4. 修改用户密码过期时间、认证信息

passwd

参数作用
-l锁定用户,禁止其登录
-u解除锁定,允许用户登录
–stdin允许通过标准输入修改用户密码,如 echo “NewPassWord”
-d使该用户可用空密码登录系统
-e强制用户在下次登录时修改密码
-S显示用户的密码是否被锁定,以及密码所采用的加密算法名称

5. 删除用户

userdel

参数作用
-f强制删除用户
-r同时删除用户及用户家目录

2 文件权限与归属

文件类型

标识类型
-普通文件。
d目录文件。
l链接文件。
b块设备文件。
c字符设备文件。
p管道文件。

对目录文件来说,“可读”表示能够读取目录内的文件列表;“可写”表示能够在目录内新增、删除、重命名文件;而“可执行”则表示能够进入该目录。
默认新建的目录只有自己有写权限,其他用户能查看不能修改和新增删除

chmod 权限
chown 设置所有者、所有组
新建用户不会设置密码,需要passwd修改该用户密码

2.1 文件的特殊权限

  1. 对用户,suid 让命令的执行者临时获取到执行者身份,原先权限位上没有变成大写S,有是小写s。
    chmod u+s 文件名
    如/bin/passwd命令,普通用户也能使用
[root@localhost file]# ll /bin/passwd 
-rwsr-xr-x. 1 root root 27832 Jan 30  2014 /bin/passwd
  1. 对属组 sgid让目录中新增文件的所有组,归属上级目录而不是自己
    chmod -R g+s /admin 这样这个文件下面其他人新增的文件所属组也是admin

  2. 其他人 sbit让目录内的文件,只能自己删除自己的
    chmod -R o+t 文件名

2.2 文件的隐藏属性

  1. chattr命令设置文件的隐藏权限
权限解释
i无法对文件进行修改;若对目录设置了该参数,则仅能修改其中的子文件内容而不能新建或删除文件
a仅允许补充(追加)内容,无法覆盖/删除内容( Append Only)
S文件内容在变更后立即同步到硬盘( sync)
s彻底从硬盘中删除,不可恢复(用 0 填充原文件所在硬盘区域)
A不再修改这个文件或目录的最后访问时间( atime)
b不再修改文件或目录的存取时间
D检查压缩文件中的错误
d使用 dump 命令备份时忽略本文件/目录
c默认将文件或目录进行压缩
u当删除该文件后依然保留其在硬盘中的数据,方便日后恢复
t让文件系统支持尾部合并( tail-merging)
X可以直接访问压缩文件中的内容
  1. lsattr命令显示文件的隐藏权限
  2. 只能root用户使用,想让其他用户能使用,需要suid权限
[root@localhost admin]# chmod u+s /usr/bin/chattr
[root@localhost admin]# ll /usr/bin/chattr
-rwsr-xr-t. 1 root root 11528 Mar 12  2014 /usr/bin/chattr

2.3 文件访问控制列表

某个人精准的权限指定
setfacl 设置
getfacl 查看
针对目录文件需要使用-R 递归参数;针对普通文件则使用-m 参数;如果想要删除某个文件的 ACL,则可以使用-b 参数

[root@localhost admin]# ll -d /root
dr-xr-x---. 14 root root 4096 Apr 16 09:29 /root
[root@localhost admin]# setfacl -Rm u:redis:rwx /root
[root@localhost admin]# ll -d /root
dr-xrwx---+ 14 root root 4096 Apr 16 09:29 /root

设置成功后redis可以进/root目录

2.4 su命令和sudo命令

su 切换用户身份
su - 切换到新的用户,即把环境变量信息也变更为新用户的相应信息
sudo 命令用于给普通用户提供额外的权限来完成原本 root 管理员才能完成的任务,格式为“sudo [参数] 命令名称”

参数作用
-h列出帮助信息
-l列出当前用户可执行的命令
-u用户名或 UID 值 以指定的用户身份执行命令
-k清空密码的有效时间,下次执行 sudo 时需要再次进行密码验证
-b在后台执行指定的命令
-p更改询问密码的提示语

总结来说, sudo 命令具有如下功能:
➢ 限制用户执行指定的命令:
➢ 记录用户执行的每一条命令;
➢ 配置文件( /etc/sudoers)提供集中的用户管理、权限与主机等参数;
➢ 验证密码的后 5 分钟内(默认值)无须再让用户再次验证密码

可以使用 sudo 命令提供的 visudo 命令
来配置用户权限。这条命令在配置用户权限时将禁止多个用户同时修改 sudoers 配置文件,还
可以对配置文件内的参数进行语法检查,并在发现参数错误时进行报错

root ALL=(ALL) ALL
redis ALL=NOPASSWD: /usr/bin/cat
redis  ALL=NOPASSWD:  /usr/bin/more

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值