目录
管理用户和组
用户的基础概念
用户UID
id-区分用户类别
管理用户
创建用户-useradd
修改用户-usermod
删除用户-userdel
修改用户暗码-passwd
用户组的基础概念
用户组GID
用户组分类
用户和用户组的关系
管理用户组
创建组-groupadd
修改组-groupmod
删除组-groupdel
关联用户和组-gpasswd
/etc/passwd文件
/etc/shadow文件
用户组关联文件
/etc/group文件
文件权限管理
权限概述
权限示例
权限位说明
常用权限设置命令
chmod命令:修改文件权限。
chown命令:修改文件属主属组(只允许管理员)。
chgrp命令:修改文件属组。
umask命令:遮罩码。
修改文件权限-chmod
修改文件权限-chown
修改文件权限-usmask
访问控制列表-ACL
ACL命令
setfacl:设置文件的ACL。
getfacl:获取文件的ACL。
chacl:更改文件或目录的ACL。
其他权限管理(su/sudo)
命令-su
管理用户和组
用户的基础概念
Linux是一个多用户的操作体系:
• 全部要使用体系资源的用户必要先向体系管理员申请一个账号,之后以此账号进入体系;
• 可以在体系上创建多个用户,而多个用户可以在同一时间内登录至同一体系实行不同的任务,
并不会相互影响。
用户:
• 用户是能够获取体系资源的权限的集合;
• 每个用户都会分配一个特有的id号(uid)
用户UID
UID指的是用户的ID(UserID),一个用户UID标示一个给定用户,UID是用户的唯一标示符,通过UID可以区分不同用户的类别(用户在登录体系时是通过UID来区分用户,而不是通过用户名来区分):
• 超级用户:也称为root用户,它的UID为0,超级用户拥有体系的完全控制权,可以举行修改、删除文件等操作,也可以运行各种命令,所以在使用root用户时要非常谨慎;
• 虚拟用户:也称为体系用户,它的UID为1-999之间,虚拟用户最大的特点是不提供暗码
登录体系,它们的存在重要是为了方便体系的管理。
• 普通用户:也称为一样平常用户,它的UID为1000-60000之间,普通用户可以对本身目录下
的文件举行访问和修改,也可以对经过授权的文件举行访问;
id-区分用户类别
通过查看不同用户UID来区分用户的类别为超级用户、普通用户或是虚拟用户。
id:打印真实以及有用的用户和地点组的信息
重要参数:
•-u:打印用户ID;
•-g:打印组ID;-u,-user只输出有用UID
UID为0时,标识的是超级用户(即root用户)
UID为1000-60000之间,标识的是普通用户
UID为1-999之间,标识的是虚拟用户(即体系用户)
管理用户
在Linux体系中,每个普通用户都有一个账号,包罗用户名、暗码和主目录等
信息。
除此之外,另有一些体系本身创建的特别用户,具有特别的存在意义,其中最
紧张的用户就是管理员账户,默认的用户名为root(也就是超级用户)。
通过操作命令行能够对用户文件举行创建、修改、删除更改暗码等操作
创建用户-useradd
useradd命令用于Linux中创建的新的体系用户。
帐号建好之后,再用passwd设定帐号的暗码,之后使用userdel删除帐号。
使用useradd指令所创建的帐号,实际上是生存在"/etc/passwd"文本文件中。
在RedHat系Linux中,adduser命令是useradd命令的符号毗连,两者实际上是同一个指
令。
重要参数:
• -c:设定备注信息,备注信息生存在passwd中;
• -d:指定登录目录;
• -g:指定用户组;
• -r:创建体系帐号(1-999);
• -s:指定用户登入使用的Shell;
• -u:指定用户id;
修改用户-usermod
usermod命令用于修改用户的根本信息。
重要参数:
-c:设定备注信息,备注信息生存在passwd中;
-d:修改用户登入时的目录,只是修改/etc/passwd中用户的家目录配置信息,不会自动创建新的家目录(配合-m使用);
-m:移动用户家目录到新的位置,不能单独使用(配合-d使用)。
-g:指定用户组;
-G:指定用户附加组;
-s:指定用户登入使用的Shell;
-u:指定用户id;
-l:修改用户帐号名称;
-L:锁定用户暗码,使暗码无效;
-U:清除暗码锁定。
删除用户-userdel
userdel命令用于删除给定的用户,以及与用户相关的文件。若不加选项,则
仅删除用户帐号,而不删除相关文件。
重要参数:
• -f:逼迫删除用户,即使用户当前已登录;
• -r:删除用户的同时,删除与用户相关的全部文件。
修改用户暗码-passwd
passwd命令用于设置用户的认证信息,包罗用户暗码、暗码过期时间等。体系管理者则能用它管理体系用户的暗码,只有管理者可以指定用户名称,一样平常用户只能变动本身的暗码。
重要参数:
• -d:删除暗码,仅有体系管理者才能使用;
• -k:设置只有在暗码过期失效后,方能更新;
• -l:锁住暗码;
• -S:列出暗码的相关信息,仅有体系管理者才能使用;
• -u:解开已上锁的帐号;
• -n:设置修改暗码最短天数;
• -x:设置修改暗码最长天数;
• -w:设置用户在暗码过期前多少天收到警告信息;
• -i:设置暗码过期多少天后禁用账户。
用户组的基础概念
用户组:
• 具有雷同特性用户的逻辑集合,通过组的形式使得具有雷同特性的多个用户能够拥有雷同的权限,便于管理;
• 每一个用户都拥有本身的私有组;
• 同一组内的全部用户可以共享该组下的文件;
• 每一个用户组都会被分配一个特有的id号(gid)。
用户组GID
用户组ID(GroupID,简称为GID)和用户UID雷同,作为唯一标识符来标示体系中的一个用户组:
• 在添加账户时,默认情况下会同时创建一个与用户同名且UID和GID雷同的组;
• GID与UID都会将0赋予给超级用户大概具有超级用户的用户组(也就是root用户组);
• 体系会预留一些较前的GID给虚拟用户(也称为体系用户)。
用户组分类
用户组分类:
• 普通用户组:可以参加多个用户;
• 体系组:一样平常参加的用户为体系用户;
• 私有组:也称为根本组,在创建用户时,如果没有为其指明所属用户组,则会为该用户定义一个私有的用户组,且该用户组名称与用户名同名。
用户和用户组的关系
一对一:一个用户可以存在一个用户组中,作为组中的唯一成员;
一对多:一个用户可以存在多个用户组中,该用户具有多个组的共同权限;
多对一:多个用户可以存在一个用户组中,这些用户具有和组雷同的权限;
多对多:多个用户可以存在多个用户组中,其实就是以上三种关系的扩展。
管理用户组
随着用户的不停增多,用户权限的把控变得复杂繁重,对体系的安全管理产生负面影响,用户组的参加,使得每一个用户至少属于一个用户组,从而便利了权限管理。
用户和用户组管理是体系安全管理的紧张组成部分,通过操作命令行能够对用户组文件举行创建、修改、删除以及关联用户等操作。
创建组-groupadd
groupadd命令用于创建一个新的工作组,新工作组的信息将被添加到体系文件
中。
重要参数:
• -g:指定新建工作组的id;
• -r:创建体系工作组,体系工作组的组ID小于500;
• -K:覆盖配置文件“/etc/login.defs”;
• -o:允许添加组ID号不唯一的工作组。
修改组-groupmod
groupmod可用来更改群组识别码大概名称。
重要参数:
• -g:指定群组的新id;
• -o:重复使用群组识别码;
• -n:设置新的群组名称。
删除组-groupdel
groupdel命令用于删除指定的工作组,本命令要修改的体系文件包罗/ect/group和/ect/gshadow。
若该群组中仍包罗某些用户,则必须先删除这些用户后,方能删除群组。
关联用户和组-gpasswd
gpasswd命令是Linux下工作组文件/etc/group和/etc/gshadow管理工具。
重要参数:
•-a:添加用户到组;
•-d:从组删除用户;
•-A:指定管理员;
•-M:指定组成员和-a的用途差不多;
•-r:删除暗码;
Kali下涉及到管理用户信息的文件一样平常有以下两种:
/etc/passwd:用户账号信息文件
• 在这个文件中,生存着体系中全部用户的重要信息,每一行代表着一个记录;
• 每一行用户记录中定义了用户各个方面的相关属性。
/etc/shadow:用户账号信息加密文件(又称为“影子文件”)
• 用于存储体系中用户的暗码信息;
• 由于/etc/passwd文件允许全部用户读取,轻易导致暗码泄露,因此将暗码信息从该文件
中分离出来,单独放置在/etc/shadow文件中。
/etc/passwd文件
/etc/passwd文件每一行由七个字段的数据组成,且字段之间用“:”隔开
Linux中的shell是指一个面向用户的命令接口,表现形式为一个可以由用户登录的界面,Linux的shell有很多种:sh,csh,ksh,tcsh,bash等。
/etc/shadow文件
/etc/shadow文件只有超级用户(root用户)具有读权限,其他用户均没有权限,从而保证了用户暗码的安全性。
暗码在经由/etc/shadow保护后,在/etc/passwd文件的用户记录中只会以“X”的形式呈现。
与/etc/passwd文件相似,每一行记录代表一个用户,且以“:”隔开,不同之处在于/etc/passwd中每行记录被分为九个字段。
注:/etc/shadow由pwconv命令根据/etc/passwd中的数据自动产生
用户组关联文件
Kali下涉及到管理用户组信息的文件一样平常有以下两种:
/etc/group:组信息文件
• 在这个文件中,生存着用户组的全部信息,每一行记录代表一个用户组;
• 将用户分组是对用户举行管理及控制访问权限的一种手段,每个用户都属于一个用户组;一
个组中可以有多个用户,一个用户也可以属于不同的组。
/etc/gshadow:组信息加密文件
• 在这个文件中,会生存用户组加密信息,好比说用户组管理暗码就生存在此(与
/etc/shadow文件相似);
• 与/etc/group文件互补,对于大型服务器来说,拥有很多用户和组,此时会针对这些用户
和组来天生一些复杂的权限模型,此时设置并管理暗码就显得尤为紧张。
/etc/group文件
/etc/group文件每一行由四个字段的数据组成,且字段之间用“:”隔开。
这里我们以root用户为例,根据root用户的文件记录来了解/etc/group文件用户组记录中相关字段的意义:
/etc/gshadow文件
/etc/gshadow文件每一行由四个字段的数据组成,且字段之间用“:”隔开。
这里我们以root用户为例,根据root用户的文件记录来了解/etc/group文件中相关字段的意义:
文件权限管理
权限概述
权限是操作体系用来限制对资源访问的一种机制,权限一样平常分为读、写、实行。
在Linux体系中,不同的用户所处的地位也不尽雷同,不同地位的用户拥有不同的权限等级,为了保证体系的安全性,Linux体系针对不同用户的权限制定了不同的规则。
在Linux体系中,每个文件或目录都具有特定的访问权限、所属用户及所属组,通过这些规则可以限制什么用户、什么组可以对特定的文件实行什么样的操作。
权限示例
示例中通过ls–l命令可将文件权限的详细信息呈现出来:
以root用户文件信息为引:
ls-l中每一行第一位代表的是文件类型,在Linux中有七种文件类型:
权限位说明
Linux文件或目录的权限位是由9个权限位来控制的,每三位为一组,都是[r]、[w]、[x]三个参数的组合,其中[r]代表的是读权限(read),[w]代表的是写权限(write),[x]代表的是实行权限(execute),且三个权限位的位置在文件或目录中是稳定的。若是没有权限,则用“-”表示。
访问权限
在文件信息中显示为:
• -r:允许读取文件内容或目录下全部内容
• -w:允许写文件或在目录下创建、删除文件
• -x:允许实行文件或进入目录
• -:无任何权限(显示方式在r、w、x的位置处显示为-)
以usertxt文件为例:drwxr-xr-x.2rootroot4096Jun114:00
常用权限设置命令
chmod命令:修改文件权限。
• Linux的文件调用权限分为三级:文件全部者、群组及其他,通过chmod命令可以控制文件被何人调用;
• 使用权限:文件全部者。
chown命令:修改文件属主属组(只允许管理员)。
• Linux做为多用户多任务体系,全部文件都有其全部者,通过chown可以将特定文件的全部者更改为指定用户或组;
• 使用权限:管理员(root用户)。
chgrp命令:修改文件属组。
•通过chgrp命令可以对文件或目录的所属群组举行更改;
•使用权限:管理员(root用户)。
umask命令:遮罩码。
•通过umask命令可以指定在创建文件时举行权限掩码的预设;
•使用权限:管理员和普通用户。
修改文件权限-chmod
chmod:用来变动文件或目录的权限
重要参数:
• -c:当文件的权限更改时输出操作信息。
• -v:无论文件是否更改了权限,一律输出操作信息。
• -R:对目录以及目录下的文件递归实行更改权限操作。
常用符号解释:
修改文件权限-chown
chown命令改变某个文件或目录的全部者和所属的组,该命令可以向某个用户授权,使该用户酿成指定文件的全部者大概改变文件所属的组。
重要参数:
• -c:当文件的权限更改时输出操作信息。
• -v:无论文件是否更改了权限,一律输出操作信息。
• -R:对目录以及目录下的文件递归实行更改权限操作。
• -h:只对符号毗连的文件作修改,而不更改其他任何相关文件;
修改文件权限-usmask
umask命令用来设置所创建的文件和目录的默认设置权限,由3个八进制的数字所组成,将现有的存取权限减掉权限掩码后,即可产生创建文件时预设的权限。
umask可以使用户任意创建一个目录和文件的权限都是固定的,方便统一管理。
重要参数:
•-p:显示命令名称
•-S:笔墨形式表示权限掩码
常见umask值及与之对应的文件或目录权限:
访问控制列表-ACL
常用权限的操作命令chmod、chown、chgrp及umask已经可以对文件权限举行修改,那么为什么还会出现访问控制列表ACL(AccessControlList)?
• 在没有ACL技术之前,Linux体系对文件的权限控制仅可划分文件的属主、用户组、其他用户三类,随着技术的发展,
传统的文件权限控制已经无法顺应复杂场景下的权限控制需求,好比说一个部门(即一个用户组group)存在有多名
员工(即用户user01、user02…),针对于部门内不同职责的员工,会为其赋予不同的权限,如为user01赋予可读
写权限,为user02赋予只读权限,不为user03赋予任何权限,此时由于这些员工属于同一部门,就无法为这些不同
的员工举行权限的细化。
• 为此ACL(AccessControlList)访问控制列表技术应运而生,使用ACL权限控制可以提供常见权限(如rwx、
ugo)权限之外的权限设置,可以针对单一用户或组来设置特定的权限。
常见类型:
• 针对文件全部者(owner)分配权限
• 针对文件所属用户组分配权限
• 针对其他用户分配
• etc..
ACL命令
在linux里我们可以通过ACL来管理某个文件及其特定的用户和用户组权限,
简朴来说ACL只需把握三个命令即可:setfacl、getfacl、chacl。
setfacl:设置文件的ACL。
•chmod根据文件全部者、所属群组及其他用户三级权限举行权限分配,而setfacl则可以
针对每一文件或目录举行更加精准的权限分配。
setfacl命令是用来在命令行里设置ACL(访问控制列表)。
重要参数:
• -m:修改指定文件的acl参数
• -b:删除全部acl设定参数
• -k:移除预设的acl参数
• -R:递归设置acl参数
• -d:预设目录的acl参数
getfacl:获取文件的ACL。
•显示文件或目录的ACL计谋
getfacl可获取文件或目录的访问控制列表ACL。
重要参数:
• -a:仅显示文件访问控制列表
• -d:仅显示默认的访问控制列表
• -c:不显示注释表头
• -e:显示全部的有用权限
• -E:显示无效权限
chacl:更改文件或目录的ACL。
•与chmod相似,但是更为强大精致,通过chmod可以控制文件被何人调用,但若是某一用
户的文件只想给特定的用户看时,则必要chacl进场完成用户的需求。
chacl更改文件或目录的ACL(少用)。
重要参数:
• -b:同时修改文件权限和默认目录权限
• -d:设置目录的默认权限
• -R:只删除文件的权限
• -D:只删除目录的权限
• -B:删除全部权限
• -l:列出全部文件和目录权限
• -r:设置全部目录和子目录下的权限
其他权限管理(su/sudo)
Linux中默认账户为普通用户,但是在更改体系文件大概实行某些命令时,都必要以root用户的权限才能举行,此时就必要将默认的普通用户更改为root用户。
在切换用户身份时,常常用到的命令有两种:
• su:此命令在切换用户时,仅切换root用户身份,但shell情况仍为普通用户;
• sudo:此命令可以允许普通用户实行管理员账户才能实行的命令。
命令-su
su命令用于切换当前用户身份到其他用户身份,变动时须输入所要
变动的用户帐号与暗码。
重要参数:
• -:重新开启一个Shell登录;
• -m:不会改变情况变量的情况下举行切换;
• -c:实行完指定的指令后,即恢复原来的身份;
• -s:指定要实行的shell;
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |