1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > Linux入门——用户组和权限管理

Linux入门——用户组和权限管理

时间:2024-04-04 06:52:42

相关推荐

Linux入门——用户组和权限管理

用户:

任何用户被分配一个独特的用户id号(UID)UID 0标识root用户用户帐号通常从UID 1000开始用户名和UID信息通常存储在/etc/passwd文件中当用户登录时它被分配一个主目录并且运行一个程序(通常是一个shell程序)没有权限许可用户不能读取、写或者执行其它用户的文件用户有个东西叫用户名是字符串如:root user1用户名通常是身份指明你是谁用户名不区分大小写密码是证明你是谁系统通过uid识别用户当两个uid相同则两个用户是一样的

用户账号文件-/etc/passwd:

/etc/passwd用于保存用户的帐户基本信息:

字段1:用户名称字段2:密码占位符“x”(指登陆该用户时需要密码,密码在/etc/shadow里)字段3:用户帐号的UID号字段4:用户的私有组字段5:用户描述信息字段6:用户的主(家)目录(每次切用户会默认切到用户的家目录)字段7:登录Shell信息

当一个用户没设置密码则无法登陆

如果在/etc/passwd里创建用户是创不好的,虽然可以查到该用户,但没有创建用户的家目录和用户组,能切换用户是因为分配了shell

组:

用户必须属于一个组每一个组被分配一个独特的组ID(gid)gid信息保存在/etc/group中每一个用户都有自己的私有组可以将用户添加到别的组,该组称为用户的附加组同一个组中的所有用户能共享属于这个组的文件

人本身就是用户 家庭类似于组

原生家庭是私有组 干爸干妈是附加组

用户是用户,组是组,所有组默认是普通组

用户和组通过gid关联即passwd中的gid跟group的gid匹配

组信息文件-/etc/group:

/etc/group用于保存组的基本信息:

字段1:组的名称(默认情况下跟用户名一样)

字段2:密码占位符“x”

字段3:组的ID号(默认情况下跟uid一致)

字段4:该组是user1,user2和user3的附加组

useradd创建新用户:

其语法如下:

useradd [选项] 用户名选项说明:

-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。

-g 用户组 指定用户所属的用户组。

-c comment 指定一段注释性描述。

-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录

-G 用户组,用户组 指定用户所属的附加组。

-s Shell文件 指定用户的登录Shell。

> useradd -c “hello” –d /home/user1 –s /sbin/nologin user111 //-c指定描述信息–d指定家目录-s指定登陆shell 指定家目录不需要手动创建,手动创建权限会报错,直接指定就会创建且无问题

举例:

> useradd -u 2000 -g it user1 //指定用户user的uid为2000组为it > useradd -s /sbin/nologin -G root Mary //指定用户Mary的登陆shell,组为root> useradd –p redhat user10 *此方法不是创建用户一起创建密码创了也登陆不进去

其他相关命令: usermod修改用户信息,用法与useradd类似userdel删除用户groupadd 添加新的用户groupmod 修改组的信息groupdel 删除组groupmems 管理组内成员

> usermod –u user111 //给用户user111修改uid为 usermod –G it1 user1 > //给用户设置附加组it1(-g是修改私有组 –G设置附加组) usermod –aG it1 user1 > //-G设置新附加值但之前附加组都要去掉;-aG追加附加组,之前的会保留如果不加a则之前的附加组要被删掉 usermod –L> user1//锁定用户登陆不进去 userdel user1 //删除用户但未删除用户家目录和邮箱 userdel-r> user2//删除user2家目录和邮箱 邮箱在cd /var/spool/mail> gpasswd group1 //给group1设置密码> newgrp group1 //临时登陆group1组。组是有权限的,但别人不想让你一直在组里就让你临时待在组里

删除组删不掉私有组但可以删附加组 uid是在最大的uid上+1 默认最大的uid和gid都是60000

因为如果把前面的用户删了,有可能没删干净遗留一些文件,再创新用户用之前的uid则文件又属于新用户了. groupadd group1

//创建group1组 groupadd –g 1006 group2 //指定group2组的gid为1006

创用户手动指定组一定要事先创建组

密码文件-/etc/shadow:

用于保存用户的密码信息:

 字段1:用户帐号的名称

 字段2:加密的密码字串信息

 字段3:最近一次修改密码的时间,表示从1970.01.01至今的天数

 字段4:密码的最短使用天数,默认值为0,没有要求

 字段5:密码的最长有效天数,默认值为99999

 字段6:密码即将到期警告天数,默认值为7

 字段7:在密码过期之后账号保持活动的天数,指定天数后账号被锁定,成为无效

 字段8:帐号失效时间,默认值为空,以1970.01.01的天数表示

 字段9:保留字段(未使用)

配置密码的期限:

下图显示了相关的密码期限参数,可以通过chage命令对其进行密码期限的调整

语法:

chage [选项] 用户

#chage -m 0 -M 90 -W7 -I 14 user3 分别修改用户密码的最短期限,最长期限,警告周期和失效期限

#chage -d 0 user3 强制要求用户在下一次登录时更新密码

#chage -l user3 显示用户密码的的信息

#chage -E -10-10 user3 用户将于-10-10到期(YYYY-MM-DD格式)

ps aux |grep vim 进程拥有人一般取决于谁来运行进程

ps |aux 查看进程

Linux文件安全:

 每一个文件都有一个uid和gid

 任何进程运行时都带一个uid和一个或多个gid标识符

 通常决定于哪个用户执行这个进程

 三种访问类别:

 运行的进程跟文件有着同样的uid(user)

 运行的进程跟文件有着同样的gid(group)

 其它进程(other)

进程uid继承用户uid

进程除了有uid信息还有gid信息,gid是看用户gid是多少

多个gid信息:一个用户可有多个附加组

最终都是通过进程来访问文件

权限优先级:

 如果UID匹配,用户权限适用

 否则,如果GID匹配,组权限适用

 如果都不匹配,其它权限适用

先匹配拥有人,拥有人不同在匹配拥有组,如果都不匹配就是其他人访问

如何匹配身份:1.你当前是谁2.你访问什么3.你访问的拥有人是谁

为什么匹配权限:不同身份权限不同

Linux文件系统权限:

查看文件和目录的权限

ls -l 文件名

ls -ld 目录名

-rw-r–r--. 1 root root 2484 Mar 18 00:04 /etc/passwd

文件类型 访问权限 连接数 所属人 所属组 大小 修改时间 文件名

访问权限:九个栏位是权限,三个三个是一组分别是拥有人拥有组其他人

权限分配 文件所属人文件所属组用户 其他用户字符表示 rwx rwxrwx权限项 读 写 执行 读 写执行读写执行数字表示 421 421 421

文件类型:

:代表普通文件 d:目录

l:链接文件 b和c分别代表块设备和字符设备,还有其他特殊的文件p和s

权限对文件和目录的影响

权限 对文件的影响 对目录的影响

r (读) 可以读取文件的内容 可以列出目录的内容(文件名)看不见权限详细信息

w(写) 可以更改文件的内容 可以创建或删除目录中的任一文件

x(执行) 可以作为命令执行文件 可以进入目录(还需要r权限才能读目录内容)

rx 进入目录看权限详细信息,目录一般来说有rx权限才有意义

修改权限要会修改拥有人拥有组和对应身份权限

更改文件和目录的权限:

 符号方式修改文件权限

chmod命令用于更改文件对于某类用户的操作权限

chmod [-R] whowhatwhich FILE…

-R:递归,将目录里文件文件一并修改

 数字方式修改文件权限

 使用三个数字(nnn)模式

chmod nnn FILE…

 通过把数值相加来计算权限

 第一个数字代表所属主(u)的权限

 第二个数字代表属组(g)的权限

 第三个数字代表其它人(o)的权限

 举例如下:

增加文件属主的执行权限(x)#chmod u+x test去除文件属主与属组的写权限(w)#chmod u-w,g-w test设置其他用户的文件权限为可执 行#chmod o=x test设置属主完全控制,属组和其他人读权限#chmod 744 test所有用户家目录权限默认700chmod 66 passwd 少写一位系统会在前面补0,系统认为权限是066

设置文件属主和属组:

 chown命令用于设置文件的属主和属组

命令格式:chown [-R] OWNER[:GROUP] FILE…

 chgrp命令用于设置文件属组

命令格式:chgrp [-R] GROUP FILE…

 只有root可以修改文件的拥有人,root和文件的拥有人可以修改文件的拥有组,前提是用户需要在组里面。

 例子:

#chown –R :user4 data/ 把data/目录下所有文件拥有组改为user4,data目录也一起修改#chown user1 test 设置文件test的属主为用户user1#chown :it2 test 设置文件test的属组为用户组it2#chgrp it2 test 效果同上#chown user3:it3 test 设置文件test的属主为user3,并设置文件的属组为it3#chown user4 passwd 修改文件拥有人#chgrp user5 passwd 修改文件拥有组#chown user1:user4 passwd修改拥有人拥有组#chown :user4 passwd 修改拥有组

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。