Linux---Linux文件权限

一、Linux安全性

        Linux安全系统的核心是用户账户。可以使用用户ID(通常称为UID)来跟踪用户权限,账户将在创建时被分配UID。Linux系统使用特定的文件和实用工具来跟踪和管理系统上的用户账户。

(1)/etc/passwd文件

[root@k8s-node01 ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
.......
tcpdump:x:72:72::/:/sbin/nologin
saned:x:990:983:SANE scanner daemon user:/usr/share/sane:/sbin/nologin
gluster:x:989:982:GlusterFS daemons:/run/gluster:/sbin/nologin

       根用户账户是Linux系统的管理员,它的UID始终为0。Linux系统为各种非实际用户的函数创建了大量用户账户,称为系统账户。

      /etc/passwd文件中的字段包含以下信息:

            登录用户名

            用户的密码

            用户账户的数值UID

            用户账户的数值用户组ID(GID)

            用户账户的文本描述(称为注释字段)

            用户HOME目录的位置

            用户的默认shell

(2)/etc/shadow文件

       /etc/shadow文件为linux系统管理密码的方式提供了更多的控制。只有根用户才能访问/etc/passwd文件,比/etc/passwd文件更加安全。

[root@k8s-node01 ~]# cat /etc/shadow
root:$6$e2YLjawj$qUO6Og7F2IQKwzZahVbr6ec0X0enxsjFo8O/WDUk07UBXDSLdUwGASaQ27MuU9JtELDMhtYbEX4gLSfe08UPf/:17890:0:99999:7:::
bin:*:17110:0:99999:7:::
......

每个/etc/shadow文件记录中都有9个字段

       与/etc/passwd文件记录中都有9个字段

       经过加密的密码

       密码上次修改时距1970年1月1日的tian天数

       距能够修改密码时的最少天数

       距必须修改密码时的天数

       距密码逾期并警告用户修改密码的天数

        从密码逾期开始到账户被禁用的天数

        用户账户已被禁用的天数(存储为自1970年1月1日开始的天数)

        保留供未来使用的字段

(3)添加新用户

[root@k8s-node01 ~]# useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes

        新用户将被添加到用户组ID为100的公共用户组中

        新用户将在/home/loginname目录下创建一个HOME账户

        当密码逾期时,账户将不会被禁用

        新账户不会在设定日期被逾期

        新账户将使用bash shell作为默认shell

        系统会将/etc/skel目录中的内容复制到用户的HOME目录

        系统将在邮件目录中创建一个文件用于用户账号接收邮件

(4)删除用户

$:userdel -r test   //删除用户的原/home/test目录也将删除

(5)修改用户

1》usermod的参数

       -l:用于修改用户账户的登录名

       -L:用于锁定账户,使用户无法登录

       -p:用于修改账户的密码

       -U:用于解除账户锁定,使用户能够登录

2》passwd和chpasswd

       passwd  命令可用于快速修改用户的密码;

       chpasswd  是需要对系统上的大量用户执行批量密码修改

3》chsh、chfn和chage

chage日期值:

        YYYY-MM-DD格式的日期

        以数值表示的距1970年1月1日的天数

二、使用Linux用户组

(1)/etc/group文件

[root@k8s-node01 ~]# cat /etc/group
root:x:0:
bin:x:1:
daemon:x:2:
......

/etc/group文件使用4个字段:

       用户组名称

       用户组密码

       GID

       属于用户组的用户账户列表

(2)创建新用户组

groupadd命令允许在系统中创建新用户组

$:groupadd shared
$:tail /etc/group

创建新用户组时,系统默认不会为它分配任何用户。要添加新用户,需使用usermod命令

$:usermod -G shared test

(3)修改用户组

$:groupmod -n sharing shared
$:tail /etc/group

三、解码文件权限

(1)使用文件权限符号

(2)默认文件权限

文件的初始为022的umask值之后,umask值通常设置在/etc/profile启动文件中,可使用umask命令指定不同的默认umask设置:

$:umask 026

四、修改安全设置

(1)修改权限

$:chomd 760 newfile
$:chmod [ugoa...] [[+-=] [rwxXstugo...]]

第一组字符串定义新权限适用的对象

     u:表示用户

     g:表示用户组

     o:表示其他(其他任何人)

     a:表示上诉所有

第二组符号表示:

     +:希望在已有权限中添加权限

      -:从已有权限中减去权限

      =:要为权限赋值

第三组符号表示:

      x:用于指定执行权限,仅当对象为目录或已经拥有执行权限时有效

      s:用于设置正在执行的UID或GID

      t:用于保存程序文本

      u:用于将权限设置为所有者的权限

      g:用于将权限设置为用户组的权限

      o:用于将权限设置为其他人的权限

$:chmod o+r newfile

(4)修改所有者

chown命令的格式如下:

$:chown options owner[.group] file

五、共享文件

Linux为每个文件和目录都存储了3个额外的信息位:

       set user id(SUID):当文件由用户执行时,程序将在文件所有者的权限下运行。

       set group id(SGID):对于文件,程序将在文件用户组的权限下运行。

       粘着位:进程结束后,文件仍然保留(粘着)在内存中。

$:mkdir testdir
$:chgrp shared testdir
$:chmod g+s testdir

$:umask 002
$:cd testdir 
$:touch testfile

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值