|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 uperrua 于 2019-9-24 14:01 编辑 U( ?$ W1 X2 [3 [0 r
6 E2 m* {9 A- m" y2 W) ]; X( C- B
具有某种共同特征的用户集合起来就是用户组(Group)。用户组(Group)配置文件主要有 /etc/group和/etc/gshadow,其中/etc/gshadow是/etc/group的加密信息文件;在本标题下,您还能了解到什么是GID;
5 B2 p, _. f( P0 Z+ G1、/etc/group 解说;
& E; T& B& M: w/ [& D) k4 L+ ^( m+ ~0 U; p3 ~" o
用户组的特性在系统管理中为系统管理员提供了极大的方便,但安全性也是值得关注的,如某个用户下有对系统管理有最重要的内容,最好让用户拥有独立的用户组,或者是把用户下的文件的权限设置为完全私有;另外root用户组一般不要轻易把普通用户加入进去, 0 b0 W5 ~% D1 p7 H# Z# x
8 f8 T% b4 A+ T8 c5 G6 X
2、/etc/group 内容具体分析
4 g$ x6 c d' s# w, X* k$ `" H# {5 G1 T. D4 k _& ?
/etc/group 的内容包括用户组(Group)、用户组口令、GID及该用户组所包含的用户(User),每个用户组一条记录;格式如下: H% w, x; w5 F& }- E
; |. {+ q" ^) P$ Ogroup_name:passwd:GID:user_list
/ T3 ?- C' M) ^! Y6 e* ?* \
4 ?) j# ~5 ?& z+ d' `) ]在/etc/group 中的每条记录分四个字段: 1 o) `- N6 I Q2 T! f( A+ p' W
第一字段:用户组名称; / t4 `2 ~$ k+ a1 `/ b
第二字段:用户组密码;
. j; M. z3 d6 o# ]; x第三字段:GID / O/ v! N" ?2 C$ U
第四字段:用户列表,每个用户之间用,号分割;本字段可以为空;如果字段为空表示用户组为GID的用户名; + h; h0 X5 k) `! z' A) L
2 H8 O' k* O! z+ R3 } n9 C
我们举个例子:
1 m0 L5 a. w; C, z( P6 c2 ~/ x9 s4 \' i# b
root:x:0:root,linuxsir 注:用户组root,x是密码段,表示没有设置密码,GID是0,root用户组下包括root、linuxsir以及GID为0的其它用户(可以通过 /etc/passwd查看);;beinan:x:500:linuxsir 注:用户组beinan,x是密码段,表示没有设置密码,GID是500,beinan用户组下包括linuxsir用户及GID为500的用户(可以通 过/etc/passwd查看);linuxsir:x:502:linuxsir 注:用户组linuxsir,x是密码段,表示没有设置密码,GID是502,linuxsir用户组下包用户linuxsir及GID为502的用户 (可以通过/etc/passwd查看);helloer:x:503: 注:用户组helloer,x是密码段,表示没有设置密码,GID是503,helloer用户组下包括GID为503的用户,可以通过 /etc/passwd查看; ; h8 v' i. j- X$ y# z+ y
- z# z; E" v% M" R! S" m0 ~( c而/etc/passwd 对应的相关的记录为:# n H0 Y' g \; c$ ^
5 D( p$ F' o: K) z% T D. droot:x:0:0:root:/root:/bin/bashbeinan:x:500:500:beinan sun:/home/beinan:/bin/bashlinuxsir:x:505:502:linuxsir
( e' P, m5 V4 M R% b7 N- w: n8 Z( n' r1 J/ E
open,linuxsir office,13898667715:/home/linuxsir:/bin/bashhelloer:x:502:503::/home/helloer:/bin/bash
$ V8 ]* m8 @2 F, k7 m, L/ M: I k. S; [/ G% Y$ F" t; \
由此可以看出helloer用户组包括 helloer用户;所以我们查看一个用户组所拥有的用户,可以通过对比/etc/passwd和/etc/group来得到;
* S( @$ e* z4 v- E9 }
( k: ~3 i* O2 t/ ~$ ~) V8 x0 J% OGpasswd –a username groupname 把某用户加入到某个组中
) w. J( \" o7 W }2 h ]8 o
o7 U/ f5 R' C- R) Q R5 x$ V' GGpasswd –d username groupname 把组中的某个用户删除- O1 s3 }! l- f1 t* Q
5 b6 [7 O3 i+ x q* O' C A* b( @
Smbpasswd –a username 在SMB中加入用户( `0 t0 u: f9 H4 I5 ^ v- l
" t$ h) z% w1 s9 ^! d# JSmbpasswd –x username 在 SMB中删除用户: {) w6 B5 M0 P: O* V7 F
( M4 P }/ p) P9 R) G
一个文件 rwxrwxrwx ,前三个字段是表明文件所有者r可读w可写x可执行.中间的表明文件的所有组,后三个表明其他人. 组是用户的集合,能否操作文件要看文件的权限怎么定义.跟用户无关, 也就是说一个文件定义了用户A可以操作,不表明包含用户A的组C可以操作.这是两个无关的概念.
4 v4 P# f( E2 J9 |8 @& @8 L0 u, L/ a) b
& H% @! r0 T7 m! S0 V- ALinux /etc/group文件与/etc/passwd和/etc/shadow文件都是有关于系统管理员对用户和用户组管理时相关的文件,Linux /etc/group文件相对另外两个文件内容相对较少,这里对这一文件进行以下分析。) \% x8 M/ h* d
& T9 O4 {1 ]& P4 y5 y% |6 X
用户组的所有信息都存放在/etc/group文件中9 d9 q, r3 c7 Y: Z, u5 T, n/ D
/ Z' q( M0 c% x将用户分组是Linux系统中对用户进行管理及控制访问权限的一种手段。每个用户都属于某个用户组;一个组中可以有多个用户,一个用户也可以属于不 同的组。当一个用户同时是多个组中的成员时,在/etc/passwd文件中记录的是用户所属的主组,也就是登录时所属的默认组,而其他组称为附加组。5 {2 L; Y$ s3 Z: T
v9 C$ Q0 M! b6 W* A$ {
用户要访问属于附加组的文件时,必须首先使用newgrp命令使自己成为所要访问的组中的成员。用户组的所有信息都存放在/etc/group文件中。此文件的格式也类似于/etc/passwd文件,由冒号(:)隔开若干个字段,这些字段有:" ~$ s4 M: H8 o6 t2 K
& j8 k- a; Q( o
组名:口令:组标识号:组内用户列表
, M+ w$ h! q3 K7 }( n& T3 [) g; u. B" J/ `9 s5 E
1)“组名”是用户组的名称,由字母或数字构成。与/etc/passwd中的登录名一样,组名不应重复。7 {1 n# b, j$ ^( c
2)“口令”字段存放的是用户组加密后的口令字。一般Linux系统的用户组都没有口令,即这个字段一般为空,或者是*。
7 [$ E5 y/ `: x/ }: r( p4 B3)“组标识号”与用户标识号类似,也是一个整数,被系统内部用来标识组。
1 ]% a& X) P) d' a( N& Q4)“组内用户列表”是属于这个组的所有用户的列表/b],不同用户之间用逗号(,)分隔。这个用户组可能是用户的主组,也可能是附加组。! F9 c1 d/ O$ d Y" [ y6 q2 } ^
/etc/group文件的一个例子如下:
6 L8 j" [4 r' `6 B' q/ n2 _+ W+ }; M$ B8 [2 R9 S! d/ K( q; l
- #cat/etc/group
- root::0:root
- bin::2:root,bin
- sys::3:root,uucp
- adm::4:root,adm
- daemon::5:root,daemon
- lp::7:root,lp
- users::20:root,sam[/code:1:aca506e246]( G/ {. j2 `9 ^ l2 _. w6 ?
" a9 f! D2 j2 @
/ P/ U" Q0 ~6 M3 B/ @$ r
, w B& z. D0 I0 J- m; Q y" _3 U i
# z, U3 m" O# o/ r5 S( \: D" F" q
- a4 a# \: S6 {3 N) Z- B, e, u- [- y* ^0 a7 p7 ?
x i5 O Y: f
) m, V L- Z: W n+ o e/ s/ C$ V |
|