linux用户和组管理

在Linux系统上,用户管理是基于用户名和密码的方式进行资源的分配,Linux上的用户分为以下类别:

管理员:root UID 0

普通用户:1-65535

系统用户:1-999 对守护进程获取资源进行权限分配

登录用户:1000+ 通过交互式方式登录

组group

管理员组;root GID 0

普通组:1-65535,普通组又分为:

系统组:1-999

一般组:1000+,而一般组分为:

基本组:也叫私有组,创建用户时,如果没有指定其所属的组,系统自动为期创建一个与用户同名的组,用户必须属于一个且只有一个基本组,组名同用户名,且仅包含一个用户

附加组:也叫额外组,默认组以外的其他组,一个用户可以属于零个或多个附加组

安全上下文

运行中的程序:进程(process),以进程发起者的身份运行:

root: /bin/cat

hadoop:/bin/cat

进程所能够防伪资源的权限取决于进程的运行者的身份

passwd文件格式

可以通过man 5  passwd来查看对应的配置文件的帮助信息,经过查询可以得知passwd的文件格式,它是由冒号分隔的七个段组成的,分别是:

account:登录用户名

passwd:密码

UID:用户的身份编号

GID:默认所在组编号

comment:注释信息

Homedir:用户家目录

shell:用户默认shell

group文件格式

经过man帮助可以查询到文件格式,格式如下:

groupname:组名

gpasswd:组密码

GID:组的身份编号

附加组:

gshadow文件格式

群组名

群组密码

组管理员列表:组管理员列表,更改组密码和成员

以当前组为附加组的用户列表,多个用户之间用逗号分隔

shadow文件格式

同样也可以使用man帮助来查询shadow文件的格式,格式如下:

account:登录名

encrypte passwd:加密后的密码

从1970年1月1日起到密码最近一次被更改的时间

密码不可更改的时间,两次密码修改的时间间隔,0表示可以立即可以改

密码保持最大有效天数,到了这个时间就必须要改密码

密码过期的警告时间,密码过期前几天系统会提醒用户更改密码(默认是一周)

密码过期账号锁定的天数

从1970年1月1日起,多少天后账号失效

保留项

密码加密机制

加密:明文—>密文

解密:密文—>明文

对称加密:加密和解密使用同一个密钥

公钥加密:每个密码都成对出现,一个为公钥,一个为私钥

单项加密散列加密:提取数据特征码长用户数据完整性校验

单项加密有如下的特点:

雪崩效应

定长输出

算法通常有:

MD5 128位定长输出

SHA1:secure  hash algorithm 160位定长输出

sha224:224位

sha256

sha384

sha512

更改加密算法  authconfig --passalgo=sha256 --update

密码的复杂性策略

使用数字、大小写字母、以及特殊字符中至少3种

足够长

使用随机密码

定期更换,不要使用最近曾经使用过的密码

密码期限

用户和组管理命令

用户管理命令

useradd:添加用户

useradd [options] username

-u:指定uid

useradd -u 1050 user1

-g GID(基本组) 指定用户基本组  ,可以写组名也可以写GID

useradd -g  hadoop  user2

-G:GID(附加组)指定用户附加组

useradd -G  dockr  user3

-c:"comment"注释信息

useradd -c “the user is datebase user” mysql

-d:HOME_dir 指定用户家目录

useradd -d  /tmp/user4   user4

-s:指定用户所使用的shell

useradd -s  /bin/csh user5

-N:不创建私有组做主组,用users组做主组

useradd -N  user6

-m:新建用户时创建家目录

-M:创建用户时不创建家目录

useradd -M user7

-r:添加一个系统用户

useradd -r   mail

新建用户的相关文件

/etc/default/useradd

/etc/skel/* 创建用户时会在家目录下创建的一些文件包括用户的环境变量文件,.bashrc记录命令别名和本地环境变量

创建用户时有个默认的设定存放在/etc/default/useradd文件中

显示或更改默认值

useradd -D

useradd -D -s  /bin/csh  username

/etc/login.defs 用户账号限制的文件包括最大过期天数,密码的最大长度约束等内容。

id:查看用户的账号属性信息

-u:显示用户的UID

-g:显示用户的GID

-G:显示用户的GID

-n:显示用户的用户名一般要配合-u选项

userdel:删除用户

userdel  [option] username

-r:删除用户家目录

用户属性修改

usermod

usermod [ options]  username

-u UID:修改用户的uid

usermod -u 1500 username

-g UID:修改用户的基本组

usermod -g  hadoop username

-G -a:添加新的附加组,要配合-a选项使用,如果不使用-a选项会覆盖此前的附加组

usermod -aG amind username

-c:更改注释信息

usermod -c "my user" username

-d -m:更改用户家目录且移动用户文件

usermod -c /tmp/123 username

-s:更改用户的shell

usermod -s /bin/bash username

-l:更改用户名

usermod -l oldname newname

-L:锁定账号

usermod -L username

-U:解锁账号

usermod -U username

su切换用户

su [OPTION]... [-] [USER [ARG]...]

su username:非登录式切换,不会读取目标用户的配置文件,不改变当前工作目录

su - username:登录式切换,会读取目标用户的配置文件,切换至家目录,完全切换

su -l username =su - username

注意:root切换至非root用户时不需要输入密码的,非管理员用户切换需要输入密码

passwd设置密码

passwd [OPTION...] <accountName>

passwd 不接用户默认修改当前登录用户的密码

-l:锁定账号

-u:解锁账号

-d:删除账户密码

-e:强制用户下次登录修改密码

-n mindays:指定密码最短使用期限

-x maxdays:指定密码最大使用期限

-i :非活动期限,密码过期账号锁定时间

--stdin:从标准输入接受用户密码

echo “redhat”|passwd --stdin username

chage修改用户密码策略

chage [options] LOGIN

-d:最近一次修改密码的时间

-E:设置过期时间

-I:设置非活动时间,密码过期后账户锁定时间

-m:设置密码最短使用期限

-M:设置密码最长使用期限

-W:设置密码过期前的警告天数

chfn修改用户个人信息

chfn username

chsh更改用的shell

chsh   username

finger查看用户用户属性

finger username

组管理

groupadd

groupadd [options] groupname

-g GID: 以指定的GID创建组

-r:添加系统组其GID小于1000

groupdel删除组

groupdel [options] groupname

groupdel test2

gpasswd组密码

gpasswd [option] group

-a user:将user添加至指定组中

-d user:将user从组中移除

-A user1,user2,...设置有管理权限的用户列表

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

newgrp groupname

groupmems更改和查看组成员

groupmems -a user_name | -d user_name | [-g group_name] | -l | -p

-g,--group groupname 更改为指定组

-a,--add username:用户加入组

-d,--delete username:从组中删除用户

-p,--purge:从组中清除所有成员

-l,--list:显示组成员列表

grops查看用户所属组

groups  groupname

1、创建用户gentoo,附加组为bin和root,默认shell为/bin/csh,注释信息为"Gentoo Distribution"
2、创建下面的用户、组和组成员关系
名字为admins 的组
用户natasha,使用admins 作为附属组
用户harry,也使用admins 作为附属组
用户sarah,不可交互登录系统,且不是admins 的成员,natasha,harry,sarah密码都是centos

时间: 2025-01-02 16:21:04

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

5、linux用户和组管理详解

linux用户和组管理 类Unix系统的设计初衷就是为让多用户同时工作,所以也迫使Linux系统有了极强的安全性,在前面安装红帽RHEL7操作系统时还特别要求"设置root用户密码",而root用户是存在于所有类UNIX系统中的"超级用户". 用户管理 root账户介绍(超级管理员) root用户拥有极高的系统所有权,能够管理系统的各项功能,如添加/删除用户,启动/关闭进程,开启/禁用硬件设备等权限.虽然使用root用户工作时不会受到权限的控制,但老话讲"

Linux用户与组管理(一)

Linux用户与组管理(一) 简介Linux用户与组 useradd usermod userdel groupadd groupmod groupdel 环境:CentOS 6.8 简介Linux用户与组 Linux系统在静态视角下,无非就是由诸多文件组成的一个"文件系统":从动态视角来看,无非就是一个在内核支配之下的一个"文件系统".这两种角度是有些区别的:动态角度下,内核是独立的,内核负责管控文件系统,而在静态角度下,连内核本身也是文件系统下的一个文件而已.故

Linux用户和组管理,查看软件缓存,通过命令查看硬件信息(cpu,版本,序列号,内存,主板,内核等)

 通过修改/etc/inittab.通过这个文件修改系统的启动方式. ls –l /etc/ | more   (管道),将前面的结果交给后面的命令进行处理. 在linux中遇到问题使用man命令. 查找文件信息并将文件存储到一个制定的文件中. ls –la > "a.txt" 创建组名: 创建组: 查看Linux中所有组的信息:cat /etc/group | more 其中root:x:0 root:表示组名,x:表示加密后的权限声明,0:表示root组的id号. 7创建

linux 用户和组管理相关的命令

                 linux 用户和组管理相关的命令 用户管理 useradd 建立用户帐号 语 法:useradd [options] LOGIN参 数: -u UID: [UID_MIN, UID_MAX]定义在/etc/login.defs -o 配合-u 选项,不检查UID的唯一性 -g GID:指明用户所属基本组,可为组名,也可以GID -G GROUP1[,GROUP2,...]:为用户指明附加组,组必须事先存在 -c "COMMENT":用户的注释信息 -

linux 用户和组管理命令

Linux 用户和组管理 组管理 groupadd命令:添加组 groupadd 选项 group_name -g GID :指定GID;默认是上一个组的GIDS+1 -r 创建系统组: groupmod命令修改组属性 groupmod 选项 GROUP -g 修改GID -n 修改组名 groupdel:删除组 groupdel 组名 用户管理 useradd命令 选项 登录名 -u,--uid:指定UID; -g,--gid GROUP:指定基本组ID,此组得事先存在: -G,--group

Linux 用户、组管理

用户.组管理命令 整理 安全上下文 进程安全上下文 进程对文件访问权限应用模型 进程的属主与文件的属主是否相同,如果相同则运行属主权限 进程的属主与文件的属主不相同,对比属组权限是否相同,相同则应用属组权限 进程的属主既不是文件的属主也不是同一属组,则应用其他人权限 概念 用户 用户,计算机的使用者,每个使用者有一个id,但是计算机更容易识别数字,所以Linux有uid一说.为了方便人进行管理使用,引用了用户名,用户名就像人类的名字,uid就像身份证号.但是Linux不允许重名,即使uid不同也

Linux用户和组管理整理

本节介绍Linux用户和组相关的配置文件,用户账号管理.查询用户信息以及切换用户的相关命令,将会让我们更了解各配置文件中各个字段的含义,以及各相关命令的使用方法,方便Linux运维人员管理Linux系统中的用户和组. 背景: Linux是个多用户.多任务的系统,考虑到每个人的隐私权.每个人喜好的工作环境以及每个用户所使用的权限等方面的不同,所以设定了"用户"来管理各自用户的权限. 一.用户和用户组相关的配置文件管理 /etc/passwd:用户的账号信息 /etc/group:组的账号

Linux用户和组管理内容---学习笔记

用户和组管理 为什么要有用户和组管理?  为了安全和任务分配(身份认证) 形式:    AAA(Cisco开发并建立):  1. 验证(Authentication): 验证用户是否可以获得访问权限.   2. 授权(Authorization) : 授权用户可以使用哪些服务.  3. 记账(Accounting) : 记录用户使用网络资源的情况.       /////Linux是一种多任务.多用户操作系统    /////能实现资源使用和完成任务的主体是应用程序进程 安全上下文:secure

Linux用户和组管理类命令

1. 列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可.命令:who | cut -d ' ' -f1|uniq 2. 取出最后登录到当前系统的用户的相关信息.命令:who | tail -1 |cut -d '' -f1 |id 3. 取出当前系统上被用户当作默认shell的最多的那个shell.命令:cut -d: -f7 /etc/passwd |uniq -c |sort -n |tail -n1 4. 将/etc/passwd中的第三个字段数值最大的