005用户组合权限

Linux是 Multi-tasks, Multi-Users(多任务,多用户)的计算机

  • 每个使用者有用户标识、密码;并且遵循授权(3A认证)
    Authentication(身份验证)
    Authorization(授权)
    Audition(审计)

用户类别:

  1. 管理员
  2. 普通用户
    • 系统用户
    • 登录用户
  • 每个用户都有用户标识:UserID, UID
    16bits二进制数字:0-65535
    管理员:0
    普通用户:1-65635
    系统用户:1-499(CentOS6), 1-999(CentOS7)
    登录用户:500-60000(CentOS6), 1000-60000(CentOS7)
    名称解析:名称转换
    Username <–> UID
    根据名称解析库进行:/etc/passwd

组类别

组类别1:
  • 管理员组
  • 普通用户组
    • 系统组
    • 登录组

组标识:GroupID, GID
管理员组:0
普通用户组:1-65635
系统用户组:1-499(CentOS6), 1-999(CentOS7)
登录用户组:500-60000(CentOS6), 1000-60000(CentOS7)

名称解析:groupname <–> gid
解析库:/etc/group

组类别2:

用户的基本组
用户的附加组

组类别3:

私有组:组名同用户名,且只包含一个用户;
公共组:组内包含了多个用户;

常用命令

Linux用户和组管理

安装上下文:
进程以其发起者的身份运行;
进程对文件的访问权限,取决于发起此进程的用户的权限;

系统用户:为了能够让那后台进程或服务类进程以非管理员的身份运行,通常需要为此创建多个普通用户;这类用户从不用登录系统;

命令
  • groupadd命令:添加组
    groupadd [选项] group_name
    -g GID:指定GID;默认是上一个组的GID+1;
    -r: 创建系统组;

  • groupmod命令:修改组属性
    groupmod [选项] GROUP
    -g GID:修改GID;
    -n new_name:修改组名;

  • groupdel命令:删除组
    groupdel [选项] GROUP

  • useradd命令:创建用户
    useradd [选项] 登录名
    -u, --uid UID:指定UID;
    -g, --gid GROUP:指定基本组ID,此组得事先存在;
    -G, --groups GROUP1[,GROUP2,…[,GROUPN]]]:指明用户所属的附加组,多个组之间用逗号分隔;
    -c, --comment COMMENT:指明注释信息;
    -d, --home HOME_DIR:以指定的路径为用户的家目录;通过复制/etc/skel此目录并重命名实现;指定的家目录路径如果事先存在,则不会为用户复制环境配置文件;
    -s, --shell SHELL:指定用户的默认shell,可用的所有shell列表存储在/etc/shells文件中;
    -r, --system:创建系统用户;
    注意:创建用户时的诸多默认设定配置文件为**/etc/login.defs**

  • useradd -D:显示创建用户的默认配置;
    useradd -D 【选项】: 修改默认选项的值;
    -e -f -s
    修改的结果保存于**/etc/default/useradd**文件中;

在这里插入图片描述
CREATE_MAIL_SPOOL=yes
在创建用户后会在/var/spool/mail/中生成用于接收邮件的地方

  • usermod命令:修改用户属性
    usermod [选项] 登录
    -u, --uid UID:修改用户的ID为此处指定的新UID;
    -g, --gid GROUP:修改用户所属的基本组;
    -G, --groups GROUP1[,GROUP2,…[,GROUPN]]]:修改用户所属的附加组;原来的附加组会被覆盖;
    -a, --append:与-G一同使用,用于为用户追加新的附加组;
    -c, --comment COMMENT:修改注释信息;
    -d, --home HOME_DIR:修改用户的家目录;用户原有的文件不会被转移至新位置;
    -m, --move-home:只能与-d选项一同使用,用于将原来的家目录移动为新的家目录;
    -l, --login NEW_LOGIN:修改用户名;
    -s, --shell SHELL:修改用户的默认shell;可用的shell在文件的/etc/shells
    -L, --lock:锁定用户密码;即在用户原来的密码字符串之前添加一个"!";
    -U, --unlock:解锁用户的密码;

  • userdel命令:删除用户
    userdel [选项] 登录
    -r:删除用户时一并删除其家目录;

  • 练习1:创建用户gentoo,UID为4001,基本组为gentoo,附加组为distro(GID为5000)和peguin(GID为5001);
    练习2:创建用户fedora,其注释信息为"Fedora Core",默认shell为/bin/tcsh;
    练习3:修改gentoo用户的家目录为/var/tmp/gentoo;要求其原有文件仍能被用户访问;
    练习4:为gentoo新增附加组netadmin;

passwd命令
  • passwd命令:
    passwd [-k] [-l] [-u [-f]] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [-S] [–stdin] [username]
    (1) passwd:修改用户自己的密码;
    (2) passwd USERNAME:修改指定用户的密码,但仅root有此权限;
    -l, -u:锁定和解锁用户;
    -d:清除用户密码串;
    -e DATE: 过期期限,日期;
    -i DAYS:非活动期限;
    -n DAYS:密码的最短使用期限;
    -x DAYS:密码的最长使用期限;
    -w DAYS:警告期限;
    –stdin 使用重定向的方式设置密码
    echo “PASSWORD” | passwd --stdin USERNAME

  • gpasswd命令:
    组密码文件:/etc/gshadow
    gpasswd [选项] group (给组加密码可以避免别人随便切换到自己的该组中)
    -a USERNAME:向组中添加用户
    -d USERNAME:从组中移除用户

  • newgrp命令:临时切换指定的组为基本组;
    newgrp [-] [group]
    -: 会模拟用户重新登录以实现重新初始化其工作环境;

  • change(修改密码的过期设置)
    chage [选项] 登录名
    -d -E -W -m -M

  • id命令:显示用户的真和有效ID;
    id [OPTION]… [USER]
    -u: 仅显示有效的UID;
    -g: 仅显示用户的基本组ID;
    -G:仅显示用户所属的所有组的ID;
    -n: 显示名字而非ID;

  • su命令:switch user
    登录式切换:会通过读取目标用户的配置文件来重新初始化
    su - USERNAME
    su -l USERNAME

    非登录式切换:不会读取目标用户的配置文件进行初始化
    su USERNAME
    注意:管理员可无密码切换至其它任何用户;
    -c ‘COMMAND’:仅以指定用户的身份运行此处指定的命令;
    例如:在这里插入图片描述

其它几个命令:chsh, chfn, finger, whoami, pwck, grpck

权限管理:

ls -l
rwxrwxrwx:
左三位:定义user(owner)的权限
中三位:定义group的权限;
右三位:定义other的权限

进程安全上下文:

  • 进程对文件的访问权限应用模型:
    • 进程的属主与文件的属主是否相同;如果相同,则应用属主权限;
    • 否则,则检查进程的属主是否属于文件的属组;如果是,则应用属组权限;
    • 否则,就只能应用other的权限;
  • 权限:
    r:readable, 读
    w:writable, 写
    x:excutable,执行
    文件:
    r:可获取文件的数据;
    w: 可修改文件的数据;
    x:可将此文件运行为进程;
    目录:
    r:可使用ls命令获取其下的所有文件列表;
    w: 可修改此目录下的文件列表;即创建或删除文件;
    x: 可cd至此目录中,且可使用ls -l来获取所有文件的详细属性信息;
    mode:rwxrwxrwx
    ownership:user, group
  • 权限组合机制:
    — 000 0
    –x 001 1
    -w- 010 2
    -wx 011 3
    r-- 100 4
    r-x 101 5
    rw- 110 6
    rwx 111 7

练习:rw-rw-r–, rwxrwxr-x, rwxr-x—, rw------, rwxr-xr-x
664, 640, 600, 775, 750, 755

管理权限的命令

  • chmod 命令:
    chmod [OPTION]… MODE[,MODE]… FILE…
    chmod [OPTION]… OCTAL-MODE FILE…
    chmod [OPTION]… --reference=RFILE FILE…
  • 三类用户:
    u:属主
    g:属组
    o:其它
    a: 所有
  1. chmod [OPTION]… MODE[,MODE]… FILE…
    MODE表示法:赋权表示法:直接操作一类用户的所有权限位rwx;
    u=
    g=
    o=
    a=
  2. 授权表示法:直接操作一类用户的一个权限位r,w,x;
    u+, u-
    g+, g-
    o+, o-
    a+, a-
  3. chmod [OPTION]… OCTAL-MODE FILE…
    chmod 666
  4. chmod [OPTION]… --reference=RFILE FILE…
    根据其他文件的授权权限,修改自己的目录权限,
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
chmod命令用于修改文件或目录的权限,通过给予用户root权限,可以允许其具有最高权限来执行操作。 用户root是Linux系统中的超级用户,具有对系统的完全控制和管理权限。root用户可以执行任意操作,包括修改系统文件、安装软件、管理用户等。一般情况下,为了安全考虑,root用户权限只应该在必要的时候进行授权。 使用chmod命令为用户root授予权限主要有两种方式。一种是使用数字权限模式,另一种是使用符号权限模式。 使用数字权限模式可以直接为root用户设置特定权限。在Linux系统中,每个文件或目录的权限设置由三个位组成,分别表示Owner权限、Group权限和Other权限。每个权限可以用一个数字表示,数字1代表执行权限,数字2表示写权限,数字4表示读权限。通过设置数字组合,可以为root用户设置所需的权限。 例如,将某个文件的权限设置为root用户可读可写可执行,而其他用户只能读和执行,可以使用以下命令: chmod 751 filename 使用符号权限模式可以根据当前权限的基础上进行更精确的控制。符号权限模式使用加号(+)、减号(-)和等号(=)来分别表示添加、移除和设置权限。例如,要为root用户添加写权限,可以使用以下命令: chmod u+w filename 总之,通过使用chmod命令为用户root授予权限,可以允许其拥有系统中最高的权限,以便进行必要的系统管理操作。但应注意谨慎使用root权限,以避免对系统造成不必要的风险和损害。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值