用户和组管理用户和组管理

Linux运维之路 基础篇:(三) 用户和组管理用户和组管理:实现资源分派

Linux用户:

root用户:UID为0
普通用户:UID为1-65535

系统用户:UID为1-499(RHEL7为1-999)
登录用户:UID为500+(RHEL7为1000+)

Linux组:将多个用户与权限相关联

root组:GID=0
普通组:
系统组:GID为1-499(RHEL7为1-999)
普通组:GID为500+(RHEL7为1000+)

Linux安全上下文:

运行中的程序,进程以发起者的身份运行,进程能访问哪些资源,取决于进程的发起者  
  1. 发起者同文件的属住,则应用文件属主权限
  2. 进程的发起者属于文件的属组,则应用文件属组权限
  3. 应用文件其他权限

启动为进程之后,其进程的属主为发起者,属组为发起者所属的组

Linux组的类别

用户的基本组(主组):每个用户只有一个主组,组名同用户名。且仅包含一个用户,私有组
用户的附加组(额外组):用户可以属于多个附加组  

Linux用户和组的配置文件

/etc/passwd:保存用户及其属性信息,每个字段以:分隔

weiying:x:1000:1000:weiying:/home/weiying:/bin/bash
用户名:密码占位符:UID:GID:家目录:描述信息:登录使用的shell

/etc/group:组及其相关属性信息,每个字段以:分隔

weiying:x:1000:
组名:密码占位符:GID:用户列表(仅显示以当前组为附加组的用户列表)

/etc/shadow:用户密码及其相关属性,每个字段以:分隔

weiying:$6$OHa7LB1m$3R.aexcJg0H1M5dHCsi9KHreVzgMCn8LUb812Xt4nC3Zr4Ua2uW2iQYSB3B044lKMaFcN8vWBf3e57d8zL6Hw0:17334:0:99999:7:::
用户名:加密的密码:最后一次修改密码的时间:密码使用最小期限:密码使用最大期限:密码警告时间段:密码禁用期:账号过期日期:保留字段

加密机制:单向加密:明文文件加密为密文,不可逆
加密工具:md5sum sha(1、224、256、384、512)sum sharesec

CentOS 6以后默认使用的加密方式是:sha512

/etc/gshadow:组密码 及其相关属性信息

用户创建

useradd:添加用户

格式:useradd 选项 用户名
    -u:指定用户UID,并且大于UID_MIN(/etc/login.dfs)
    -o 配合-u 选项,不检查UID的唯一性
    -g:指定GID,组必须存在(基本组)
    -G:指定用户附加组
    -c:用户登录时的描述信息,注释信息
    -d:指明家目录,默认在/home下与用户名同名
    -N 不创建私用组做主组,使用users组做主组
    -s:指明shell文件路径,默认为/etc/bash
    -D:更改默认值  /etc/defult/useradd
        -s:更改默认shell
        -f:账号禁用期时间
        -e:禁用账号过期时间
    -r:创建系统用户
    -m 创建家目录,用于系统用户
    -M 不创建家目录,用于非系统用户

chsh更改用户使用的shell:

chsh -s shell username

newusers批量创建用户

newusers passwd格式文件

chpasswd 批量修改用户口令

cat passwd文件 | chpassed 文件格式(用户名:密码)

创建组

groupadd:创建组
    格式:groupadd 选项 groupname
        -g:指明GID
        -r:创建系统组

用户相关命令:

id:显示用户的详细信息
    -u:只查看用户的UID
    -g:只查看用户的GID
    -G:显示用户所属的主组和附加组
su:切换用户
    格式:su 选项 [-] 用户名
        —表示登录式切换,不加表示非登录式切换,不会读取用户的配置文件
        -c:su - 用户名 -c 命令 以指定用户执行命令,不登录
        -l:相当于加 -,登录式切换

修改用户属性

usermod:
    格式:usermod 选项 用户名
        -d:指定用户新的家目录,原有家目录中的内容不会移动到新的家目录中,如果要移动加-m选项
        -u:指定用户新的UID
        -c:指定新的注释
        -l:指定新的用户名
        -g:指定新的主组
        -G:指定新的附加组,原有的附加组被覆盖,如果要保留加-a选项
        -s:指定新的shell
        -L:锁定用户
        -U:解锁指定用户
chage:更改密码过期信息
        -d:最后一次修改密码时间
        chage -d 0 username 下一次登录强制重设密码
        -E:修改账号的过期时间
        -i:设置用户非活动期限
        -m:密码最小使用天数  最大为-M
        -w:警告期限    

给用户添加密码

passwd:添加或修改密码
    格式:passwd 选项 用户名
        -l:锁定用户
        -u:解锁指定用户
        -n:指定密码使用最短期限
        -x:最大使用期限
        -w:指定密码过期前几天开始警告
        -i:过期后还有几天能修改密码
        -e:设置密码过期期限,不加时间强制用户下次登录修改密码
        --stdin:从标准输入接收用户密码
        例:
        [[email protected] ~]# echo "admin123" | passwd --stdin user1

删除用户:

userdel:
    -r:删除用户家目录

组属性修改:

groupmod:类似于usermod
    -n:指定新的名字
    -g:指定新的GID

组删除:

groupdel: groupdel 组名

组密码设定:

gpasswd:
    格式:gpasswd 选项 组名
    -a:向指定组中添加用户 -a username groupname
    -d:删除用户的附加组      -d username groupname
    -A user列表:设置有管理权限的用户列表

newgrp命令:

newgrp:临时切换组
如果用户属于本组,不需要密码

更改和查看组成员

groupmems [options] [action]
    options:
        -g, --group groupname 更改为指定组 (只有root)
    Actions:
        -a, --add username 指定用户加入组
        -d, --delete username 从组中删除用户
        -p, --purge 从组中清除所有成员
        -l, --list 显示组成员列表
groups [OPTION].[USERNAME]... 查看用户所属组列表

原文地址:https://blog.51cto.com/13408885/2392205

时间: 2024-10-08 10:42:42

用户和组管理用户和组管理的相关文章

*5 用户管理命令、组管理命令、用户认证命令与其他命令的使用

注意:所有的用户密码统一设置为"CeMt&[email protected]"(密码为引号中的内容,不包括引号): 1.创建用户qhdlink,使用centos和varnish作为附属组,并将其家目录设置于/qhdlink:使用qhdlink用户登录到系统,在其家目录中创建名为projects的目录,并在该目录中创建demand.design.plan.project.report_bugs等文件.后来出于统一管理需要,再将其家目录迁移至/home/qhdlink目录中: [[

管理用户和组实验所遇瓶颈

1.Windows Server Core上使用命令行管理用户和组: 更改管理员administator的密码和WebServer上计算机上的管理员administrator账号的密码一样,这样在WebServer使用图形界面管理工具连接Windows Server Core时才能成功. 本机用户名与密码: 控制台用户与密码: 关闭防火墙: 查询现有账户及删除账户与密码: 2.恢复登录凭据情况 添加windows凭据: 删除windows凭据: 恢复windows凭据: 3. 使用图形界面远程管

Linux中组 与 用户的管理

在linux中建立组的指令是 groupadd 组名 相应的,删除组的指令: groupdel 组名 查看自己用户的组: groups 用户管理: useradd -s/bin/bash -g 组名 用户名 -s表示用户登陆后打开的终端, 这里是/bin/bash,如果想禁止登陆,可设置为/sbin/nologin -M 不建立用户的主文件夹,用户登陆会跑到 / 去.可手工建立,如果是禁止登陆,建议加这个参数 既然有useradd指令,当然有对应的userdel... users是用来查看当前有

管理用户和组,NTP,cron计划任务

1.管理用户和组 1.1 基本概念 用户账户的作用:登陆操作系统.访问控制(不同的用户具备不同的权限) 组帐号:方便对用户的管理 唯一标识: UID  GID 管理员的UID:0 普通用户UID:RHEL7从1000开始 组的分类: 附加组(从属组.公共组)      基本组(私有组) 1.2 添加用户 用户基本信息存放在 /etc/passwd 文件 [[email protected] ~]# head -1 /etc/passwd root:x:0:0:root:/root:/bin/ba

26期20180611文件互传,用户配置文件,密码文件,组和用户管理

6月11日任务 2.27linux和windows互传文件3.1 用户配置文件和密码配置文件3.2 用户组管理3.3 用户管理 Linux和windows文件互传 我通常使用的是ftp或者是其他文件管理方式 这里介绍一个办法,但是只能在xshell下使用, 安装 lrzsz工具包 安装好了之后就可以使用sz命令 +要传输的文件 如果是想从windows往linux传就可以使用 rz命令 overall 总结 可以使用xshell securecrt 不能使用putty 安装lrzsz工具然后使用

Gitlab管理用户、组、权限(一)

&& 内容: 添加用户 创建组 用户权限 保护主要分支 配置项目的可见性 移除用户 一. 添加用户 1. 用root 管理员登陆. 2. 点击管理区域 3. 点击New User 4. 输入用户相关信息 5. 用户会收到邮件如下画面,点击设置密码即可. 排错小技巧:在设置邮件服务器比如设置如下: gitlab_rails['gitlab_email_from'] = '[email protected]' gitlab_rails['gitlab_email_reply_to'] = '[

3、Linux管理用户和组

1.管理用户和组 1.1 基本概念 用户账户的作用:登陆操作系统.访问控制(不同的用户具备不同的权限) 组帐号:方便对用户的管理 唯一标识: UID  GID 管理员的UID:0 普通用户UID:RHEL7从1000开始 组的分类: 附加组(从属组.公共组)      基本组(私有组) 1.2 添加用户 用户基本信息存放在 /etc/passwd 文件 [[email protected] ~]# head -1 /etc/passwd root:x:0:0:root:/root:/bin/ba

.net core 3.0 Signalr - 07 业务实现-服务端 自定义管理组、用户、连接

## Hub的管理 - 重写OnConnectedAsync 从连接信息中获取UserId.Groups,ConnectId,并实现这三者的关系,存放于redis中 [代码请查看](https://github.com/xiexingen/CTS.Signalr/blob/master/CTS.Signalr.Server/Hubs/NotifyHub.cs) ``` C# using CTS.Signalr.Server.Cores; using CTS.Signalr.Server.Dtos

server 08 R2 NTFS 文件系统, 管理用户和组

server 08 R2 NTFS 文件系统, 管理用户和组 D文件系统的一些定义: ----------------------------NTFS安全权限-----------------------------文件夹的ACL---文件夹属性---安全---高级---权限项目 ?里面就是 该文件夹的访问控制列表.权限是从上往下匹配. 有四种文档有权限 继承性------在 d: 盘创建一个文件夹,文件夹的权限继承于 d 盘的权限.当我们给一个文件夹分配权限时,这个权限会指派到该文件夹下面的所