Linux用户及权限相关知识

linux用户及相关知识

一、相关名词解释

每一个用户名都对应一个用户ID即UID,主机通过用户名解析成UID进行用户识别。

每一个用户组名都对应一个组ID即GID,主机通过用户组名解析成GID进行用户识别。

1、名称解析:将用户名和UID进行转换。

2、用户认证:验证该用户是否具有该权限登陆该主机。

3、用户授权:该用户是否有权限访问该文件。

4、审计:记录该用户在当前系统的行为。

5、认证机制 :linux默认的认证机制 shadow   影子口令

[[email protected]/]# cat /etc/passwd

root:x:0:0:root:/root:/bin/bash

[[email protected]/]# cat /etc/shadow

root:$6$U5wkKZWVF5xnX6Vz$U9Jb6/x.q25O0iJdWUwPJlR6Gu5g.m8iS3v.LpPRKEbBZvTYMga7Jb/J6jom32mTSRFyvSHm961pdFZf3ZePy0:16526:0:99999:7:::

在/etc/passwd下查看root用户的登陆密码,显示为x,通过查看/etc/shadow,显示root的加密密码。

6、安全上下文  :进程是继承了,发起该进程的用户的权限。

7、组  group  :存放用户及权限的容器。

二、用户类别

1、 管理员: root   UID为0

2、普通用户:

系统用户 :它们是为了在后台运行某个服务进程而特别建立 ,这些用户都不能登录系统  UID为1-499

可交互式登录的用户:UID为 500-65535

三、组的类别

第一种分类方法:

1、管理员组 root GID为0

2、普通组:

系统组 :GID为1-499

用户组:GID为500-65535

第二种分类方法:

1、用户的私有组:组名和用户名一致,且通常只包含一个用户

2、非私有组:

用户的基本组 :用户执行操作时所属的组。

用户的附加组  :除基本组之外的组。

[[email protected]/]# cat /etc/passwd

root:x:0:0:root:/root:/bin/bash

jiuren:x:500:500::/home/jiuren:/bin/bash

用户名:密码占位符:UID:GID:用户的注释:用户的家目录 :用户所使用的默认shell类型

[[email protected]/]# cat etc/group

root:x:0:

sys:x:3:bin,adm

组名:密码占位符:GID:用户名....

四、用户和组管理相关的命令

1、useradd添加用户(只有管理员有权限使用)

使用格式:useradd   [选项]   用户名

-u UID

-c ‘描述信息’

-d   创建用户家目录,此目录先不应该存在,如果存在创建用户时会报警

-s   “默认shell类型”   /etc/shells

-g   组名或GID     指定用户的基本组

-G   组名或GIU     指定用户的附加组

-r   指定创建的用户为系统用户

注:useradd后不跟选项时,系统默认的存放路径是/etc/default/useradd

[[email protected] /]# useradd -u 502 centos添加UID为502的centos用户

[[email protected]/]# tail -1 /etc/passwd

centos:x:502:502::/home/centos:/bin/bash

[[email protected] home]# useradd  -c ‘user is openstack‘ user1添加描述信息为user is openstack的user1用户

[[email protected]/]# tail -1 /etc/passwd

user1:x:503:503:useris openstack:/home/user1:/bin/bash

 [[email protected]]# ls /home由此可见系统在添加用户是useradd后不加-d也会默认创建其家目录。

centos  lost+found user1

[[email protected] home]# cat /etc/shells查看系统的shell类型

/bin/sh

/bin/bash

/sbin/nologin

/bin/dash

/bin/tcsh

/bin/csh

[[email protected] home]# useradd -s /bin/csh user2指定user2的shell类型为/bin/csh

[[email protected]]# tail -1 /etc/passwd

user2:x:504:504::/home/user2:/bin/csh

2、groupadd [选项]   组名

-g     GID     指定当前创建的组的ID号

-r     创建系统组

3、id   [选项]   用户名

-u    仅显示UID

-g    仅显示GID

-n    显示用户名,需要和其他选项结合使用

4、userdel [选项]    用户名

-r      删除用户时同时删除用户家目录

[[email protected]]# groupadd -g 600 g1创建GID为600的g1组

[[email protected]]# useradd -g 600 y1创建GID为600的y1用户

[[email protected]]# id -g  y1显示用户y1的GID

600

[[email protected]/]# userdel user2不加选项删除user2后未能删除其家目录

[[email protected]/]# ls home

centos  lost+found user1  user2  y1  yh

[[email protected]/]# userdel -r centos加-r选项删除centos能删除其家目录

[[email protected]/]# ls home

lost+found  user1 user2  y1  yh

练习1、创建用户gentoo  UID为4001   基本组为 gentoo 附加组为distro(GID为5000)和peguin(gid 为5001)

groupadd -g  5000 distro

groupadd -g5001  peguin

useradd -u4001  -g gentoo -G distro,peguin  gentoo

练习2  创建用户fedora 其描述为“Fedora Core”  默认shell为  /bin/tcsh

useradd –c “FedoraCore” –s  /bin/tcsh fedora

5、usermod  [选项]   用户名

-u UID           修改用户的UID

-c "描述信息" 修改用户的描述信息

-d 家目录  通常用于-m选项一起使用,以实现移动用户的家目录  (目标家目录一般不存在)

-s shell   修改用户的shell类型

-g 组名或GID  修改基本用户的组名或GID

-G 组名或GID   -a追加的形式   修改用户的附加组名或GID

-l 新的用户名        修改用户名

-L 用户名  锁定

-U 用户名  解锁

[[email protected]/]# tail -2 /etc/passwd显示文件的最后两行

yh:x:505:503::/home/yh:/bin/bash

y1:x:506:600::/home/y1:/bin/bash

[[email protected]/]# usermod -u 504 yh修改yh的UID为504

[[email protected]/]# tail -2 /etc/passwd

yh:x:504:503::/home/yh:/bin/bash

y1:x:506:600::/home/y1:/bin/bash

[[email protected]/]# usermod -c ‘aa‘ yh修改yh的描述信息为aa

[[email protected]/]# tail -2 /etc/passwd

yh:x:504:503:aa:/home/yh:/bin/bash

y1:x:506:600::/home/y1:/bin/bash

[[email protected]/]# usermod -s /bin/csh yh修改yh的shell类型为bin/csh

[[email protected]/]# tail -2 /etc/passwd

yh:x:504:503:aa:/home/yh:/bin/csh

y1:x:506:600::/home/y1:/bin/bash

[[email protected]/]# usermod -g 600 yh修改yh的GID为600

[[email protected]/]# tail -2 /etc/passwd

yh:x:504:600:aa:/home/yh:/bin/csh

y1:x:506:600::/home/y1:/bin/bash

[[email protected]/]# usermod -l yy yh将yh修改为yy

[[email protected]/]# tail -2 /etc/passwd

y1:x:506:600::/home/y1:/bin/bash

yy:x:504:600:aa:/home/yh:/bin/cs

[[email protected]~]# usermod -L jiuren

[[email protected]~]# cat /etc/shadow查看jiuren用户密码的相关信息

jiuren:!$6$FgPpG.K6$2zQFKoGNlAs9V4vwHqBJvk5uuilxTFueQUELE8D/TL95EaOEkznqkUJU889MNyWsqt5chcd19ZXmqWW3261sX1:16537:0:99999:7:::放一个感叹号在jiuren的加密密码前,禁用密码.

[[email protected]~]# usermod -U jiuren

[[email protected]~]# cat /etc/shadow

jiuren:$6$FgPpG.K6$2zQFKoGNlAs9V4vwHqBJvk5uuilxTFueQUELE8D/TL95EaOEkznqkUJU889MNyWsqt5chcd19ZXmqWW3261sX1:16537:0:99999:7:::将加密密码前的叹号取消,恢复帐号登录

6、groupmod  [选项]  组名

-g    GIU  修改的是组的ID号

-n    新的组名   修改组名

[[email protected]/]# tail -2 /etc/group

user1:x:503:

g1:x:600:

[[email protected]/]# groupmod -g 504 user1修改user1组的GID为504

[[email protected]/]# tail -2 /etc/group

user1:x:504:

g1:x:600:

[[email protected]/]# groupmod -n us user1  将user1组名修改为us

[[email protected]/]# tail -2 /etc/group

g1:x:600:

us:x:504:

7、chsh -l                        列出用户可以使用的安全shell

[[email protected]/]# chsh -l

/bin/sh

/bin/bash

/sbin/nologin

/bin/dash

/bin/tcsh

/bin/csh

chsh -s shell类型 用户名     修改用户的默认shell

[email protected] /]# chsh -s /bin/sh yy

Changing shell for yy.

Shell changed.

[[email protected] /]# tail -2 /etc/passwd

y1:x:506:600::/home/y1:/bin/bash

yy:x:504:600:aa:/home/yh:/bin/sh

练习1、修改gentoo 用户的家目录为/tmp/gentoo

usermod -d  /tmp/gentoo -m gentoo

练习2、为gentoo新增附加组为netadmin

groupadd netadmin

usermod -G netadmin -a gentoo

五、用户密码相关知识

1、/etc/shadow  存储用户认证密码

/etc/shadow  文件格式

jiuren:$6$wB12Guwr$guUBe4vOAUtFvL0B0DXipHixzPAszykTvT9RlAY4hSlUMwzvGSLgfYycQgJ0tBpMRFFM2nwHx617SjnGqLkl4/:16526:0:99999:7:::

用户名:加密后的密码:上次修改密码的时间:密码最短使用期限:密码最长使用期限:密码警告区间:密码非活区间:账号过期:预留

上次修改密码的时间:是指上次修改密码时到现在经历的天数。

密码最短使用期限:指的是两次修改口令之间所需的最小天数。

密码最长使用期限    :指的是口令保持有效的最大天数。

密码警告区间:指的是从系统开始警告用户到用户密码正式失效之间的天数。

密码非活区间:指的是用户没有登录活动但账号仍能保持有效的最大天数。

$6$wB12Guwr$guUBe4vOAUtFvL0B0DXipHixzPAszykTvT9RlAY4hSlUMwzvGSLgfYycQgJ0tBpMRFFM2nwHx617SjnGqLkl4/

$:表示间隔

6:指定密码加密方式 sha512

wB12Guwr  :加密杂质

guUBe4vOAUtFvL0B0DXipHixzPAszykTvT9RlAY4hSlUMwzvGSLgfYycQgJ0tBpMRFFM2nwHx617SjnGqLkl4/:加密生成的密码

2、修改用户密码 passwd

管理员:

passwd              修改管理员root用户自身密码

passwd  用户名  修改其他普通用户的密码

普通用户:

passwd      只能修改普通用户自身密码

3、切换用户 su (switch  user)

登录式切换  : su  - 用户名  (会读取用户的所有配置)

非登录切换  : su  用户名  (不会读取目标用户环境配置文件 )

以上用户命令总结:  useradd  usermod userdel  id  groupadd groupmod groupdel passwd  su

六:权限管理

文件权限:针对三类对象(属主、属组、其他组)进行定义的

文件的详细信息:

-rw-r--r--. 1 root root 27632 Apr  7 03:51install.log

其中-rw-r--r--  第一个“-”指的是文件类型为普通文件。其后的rw-r--r—即定义了文件的权限,分别是属主、属组、其他组的权限。

rw-     r--       r--

属主     属组     其他组(其他用户)

权限类型:r(读)  w(写)  x  (eXcutable 执行)

文件:

r:可以查看文件的内容

w:可以修改文件内容

x:可以吧文件向内核提起申请运行为一个进程

目录

r:是否可以使用ls命令  除了-l 选项之外

w:是否可以在目录中进行添加、删除操作

x:可使用cd命令进入目录,ls的-l选项

系统通过将其转换成二进制来识别,所以可理解为

r-->4
   w-->2
   x-->1

“-”0

rw-rw-r-- 为664

rwx------ 为600

1、 修改文件的权限:

chmod [选项]   权限模式  文件名

-R  递归修改文件(包含文件内的所有文件)的权限

操作对像:

u 文件属主权限
   g 同组用户权限
   o 其它用户权限
   a 所有用户(包括以上三种)
权限设定:

+ 增加权限
   - 取消权限
   =  唯一设定权限

只修改指定对象的权限

chmod  权限模型  文件名

u=-x, -r,  -w

g…

o=+x,+r,+w

a…

注:以上修改文件的权限都是以覆盖的形式。

[[email protected]]# ll aa(aa文件当前权限)

-rw-r--r-- 1root root 0 Apr 12 12:22 aa

[[email protected]]# chmod u=+x aa(修改aa的属主具有执行权限)

[[email protected]]# ll aa

---xr--r-- 1root root 0 Apr 12 12:22 aa(属主原具有读写权限,执行上条命令后aa只具有执行权限)

[[email protected]]# chmod u=+rwx aa

[[email protected]]# ll aa

-rwxr--r-- 1root root 0 Apr 12 12:22 aa

o,g,a与其用法相同故不多做例举。

或用二进制表示文件权限

[[email protected] home]# chmod 777 aa   (aa文件属主属组其他用户具有所有权限)

[[email protected]]# ll aa

-rwxrwxrwx 1root root 0 Apr 12 12:22 aa

2、修改属主  属组

chown  [选项]  属主:属组   文件名

-R递归修改文件(包含文件内的所有文件)的属主属组

chown     属主:属组   文件名

chown     :属组       文件名

[[email protected]]# chown jiuren:jiuren aa(将aa的属主属组修改为jiuren)

[[email protected]]# ll aa

-rwxrwxrwx 1jiuren jiuren 0 Apr 12 12:22 aa

[[email protected]]# chown root:jiuren aa(将aa的属主改为root)

[[email protected]]# ll aa

-rwxrwxrwx 1root jiuren 0 Apr 12 12:22 aa

[[email protected]]# chown :root aa(将aa的属组改为root)

[[email protected]]# ll aa

-rwxrwxrwx 1root root 0 Apr 12 12:22 aa

注:chown  属主:  文件名(该命令不成立,输入属主后属组会默认与属主一致)

[[email protected] home]# ll aa

-rwxrwxrwx 1 root root 0 Apr 12 12:22 aa

[[email protected] home]# chown jiuren: aa

[[email protected] home]# ll aa

-rwxrwxrwx 1 jiuren jiuren 0 Apr 12 12:22 aa

时间: 2024-10-10 07:38:12

Linux用户及权限相关知识的相关文章

linux用户及权限管理

[文件管理.管道.用户及组管理.用户及权限管理]\用户及组管理 用户与组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问:另一方面也可以帮助用户组织文件,并为用户提供安全性保护.每个用户账号都拥有一个惟一的用户名和各自的口令.用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录.实现用户账号的管理

linux文件属性、文件类型、linux用户和权限、软链接和硬链接

作者:Georgekai 归档:学习笔记 2017/12/22 day12 georgekai~~习惯:操作前备份,操作后检查 本章正题: linux文件属性.文件类型.linux用户和权限.软链接和硬链接 1.1 文件属性 1.1.1 查看文件属性的含义 [[email protected] ~]# ls -lhi total 40K 791060 -rw-------. 1 root root 1.1K Dec 11 04:20 anaconda-ks.cfg 注: 791060  #是In

Lesson 06 —— Linux 用户与权限

Lesson 06 -- Linux 用户与权限 useradd username 添加用户 Linux 系统中,所有用户(包括系统管理员)的账号和密码都可以在 /etc/passwd 和 /etc/shadow 这两个文件中找到,(用户和密码就放在文件中,/etc/passwd 只有系统管理员才可以修改的,其他用户可以查看,/etc/shadow 其他用户看不了).中passwd保存的是账号,shadow保存的是账号的密码等信息. /etc/passwd 文件 /etc/passwd文件是Li

Linux下的网络管理相关知识

Linux下的网络管理相关知识 linux下的网络管理工具,大致分成了三个系列,最古老的ifcfg系列.iproute2系列以及nm系列.我们会就三个命令进行分析和讲解,接着会讲一下更改IP地址和主机名等永久有效的方法. 一.ifcfg家族系列工具 ifconfig: 配置IP和掩码route: 配置路由netstat: 网络状态和统计数据的查看 1. ifconfig:用于查看和配置IP地址,立即生效,但不是永久有效. 使用方法: ifconfig [接口]ifconfig 接口 [aftyp

0220自学Linux_逻辑理解用户进程权限相关+理解文件内各字段(passwd,shadow,group)

11 内核是真正意义上的操作系统 库有动态库也有静态库,Linux的动态库是.so后缀的,也称为共享库 库是不能够独立运行的,只能被调用 Window的动态库是.dll后缀的 我们平时所谓的安装操作系统是装在硬盘上的 我们对于系统而言,最基本的程序就是shell,不然我们无法和系统交互,打开一个命令行窗口,就打开了一个shell进程 硬件之上的是内核,内核之上是进程 如果进程中他需要调用库,那首先启动这个程序,他的进程会把这个调用的库装入内存 ,而如果是共享库,其他进程调用的话就直接在内存调用这

LINUX 用户及权限之我见

  用户是登录系统的身份凭证,不同的用户登录系统后,能够进行的操作也是不相同的.用户的正确配置和管理,是我们管理好主机和系统的重要前提.而了解用户的各种特性,才能够帮助我们实现对用户的很好管理. linux 系统最优秀的地方之一,就在于它的多用户.多任务环境.为了区别不同用户的操作,对不同用户有一个安全的管理机制,而关于文件的权限管理和使用,就显得尤为重要. 在这里,就linux系统里面的用户和权限,谈谈我个人的一点点认识. 一.用户相关 1. 用户的定义: 严格来讲,linux系统并不"认识&

linux用户和权限管理

目录: 一.用户相关 配置文件.命令(groupadd.groupmod.groupdel.useradd.usermod.userdel.passwd.gpasswd.newgrp) 二.权限相关 命令(chmod.chown.chgrp.umask),额外(id.su) 三.杂项 随笔记录 用户权限管理单从字面上就能明白是什么,而且大致也就是这么个意思.而只要是从事电脑方面工作的人也都用的到,我想谁也不想自己管理的主机没事多些小东西吧. 用户只是系统上面用来标识一个身份的名称,而身份说白了就

Linux 用户、权限

目录结构 Linux和Windows目录结构的组织形式有很大不同, Windows 划分出了"盘"的概念(C盘.D盘.E盘),已经建立文件系统的硬盘分区被挂载到某一个目录下,用户通过操作目录来实现磁盘读写. 以反斜杠(\)分割目录 Linux 首先是建立一个根(/)文件系统,所有的目录页都是有根目录衍生出来的, 以斜杠(/)分割目录 在Linux底下,所有的文件与目录都是由根目录开始,是目录与文件的源头,然后一个个的分支下来,如同树枝状,因此称为这种目录配置为:目录树. 目录树的特点是

linux每日命令(30):Linux 用户及用户组相关文件、命令详解

阅读目录(Content) 一. 用户.用户组概念及其文件结构详解 二. 常用的用户.用户组shell命令 用户相关命令 useradd userdel usermod passwd 用户组相关命令 groupadd groupdel groupmod 三. 综合示例 1.建立两个用户组group1和group2,以及三个用户dennis.daniel.abigale,并且将前2个用户分配在group1用户组下,后一个分配在group2用户组下,并给dennis设置密码 2.改变abigale的