1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > linux centos设置用户目录 Linux/CentOS用户和用户组及权限管理

linux centos设置用户目录 Linux/CentOS用户和用户组及权限管理

时间:2019-06-24 12:39:22

相关推荐

linux centos设置用户目录 Linux/CentOS用户和用户组及权限管理

一:基本概念

linux是一个多任务(multi-task)多用户(multi-user)的操作系统,每个用户和用户组都有自己的ID号UID GID,每个用户都有自己的家目录不能随意访问其他用户的家目录,管理员root除外。

用户的分类:(以centos7.x为例)

管理员或root:0

普通用户:1-6000

系统用户:1-999(centos7) 1-499(centos6)

登录用户:1000-65535(centos7) 500-65535(centos6)

组的分类:

私有组:组名同用户名,而且只包含一个用户,用useadd命令创建用户是会默认创建一个私有组

公共组:组中包含了多个用户

linux系统用户安全机制:3A机制

authentication认证—>比对/etc/shdow中的单向加密过的密码确定用户身份

authorization 授权—>通过权限管理控制不同用户的权限

audition 审计—>通过selinux

加密方法:

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

非对称加密:加密使用私钥解密使用公钥

单向加密:只能加密不能解密,而且定长输出 作用于提取文件的特征码

算法 md5 sda sha224 sha256 sha384 sha512

示例使用md5sum命令提取 iso镜像文件的特征码和使用sha224sum 加密字符串“123456”

[root@localhost zxs]# md5sum CentOS-6.8-x86_64-bin-DVD1.iso

f73c2c4dd333c202ca85ea66120cacdf CentOS-6.8-x86_64-bin-DVD1.iso

1

2

[root@localhost zxs]# echo "123456" | sha224sum

ec5abd86603445ecc6f37e2632724f7823cc5f81342060fecc39836d

1

2

进程的安全上下文

进程是以用户的身份运行的,当进程访问文件是,先检查发起进程的用户和用户所属的组,在检查文件的的属主和属组,如果文件的属组就是发起进程的用户则引用前三位的权限,如果文件的属组和发起进程的用户的属组相同则应用中三位的权限,都不是的话及应用右三位的权限

查看文件的权限命令 ls-l

[root@localhost ~]# ls -al

total 64

dr-xr-x---. 2 root root 219 Apr 26 17:31 .

dr-xr-xr-x. 17 root root 244 Apr 26 17:46 ..

-rw-------. 1 root root 742 Apr 27 10:22 .bash_history

-rw-r--r--. 1 root root 18 Dec 29 .bash_logout

1

2

3

4

5

6

drwxrwxrwx:

左1位表示文件的类型

左rwx表示所属主(owers) 的权限 读+写+执行

中rwx表示所属组(groups)的权限

右rwx表示其他(others)的权限

权限组合机制

—0000

–x0011

-w-0102

-wx0113

r–1004

r-x1015

rw-1106

rwx1117

示例r-xr-x–x551

rwxr-xr-x755

rw-rw—-664

二:了解用户和组相关配置文件

/etc/passwd:用户的密码文件

[root@localhost zxs]# cat /etc/passwd

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

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

1

2

3

4

5

6

说明:文件用户“:”分隔一共有7个字段每个字段的含义是

username:password:UID:GID:GECUS:dircution:shell

用户名:x:UID:GID:注释:家目录:shell(x表示占位符,为了安全表示密码保存在/etc/shadow)

/etc/shadow:用户的密码文件

[root@localhost ~]# cat /etc/shadow | grep "zxs\>"

zxs:$6$vF9dzSd/$dyIJLhXSAR8oB5RxgV2qt4W8eF.zMRX2bAoaxYM6nhbaz5xuhjQQKCRFSfNt1eo5jzdyEv44zDuLe55XakjwA.:17283:2:6:1:3::

1

2

文件9个字段用户“:”分隔分别表示

用户名:加密后的密码:最后一个更改密码的天数(计算机元年至修改密码的时候):密码最短使用天数:密码最长使用天数:警告时间段:禁用期限:账户过期时间(从计算机元年开始计算):保留字段

三:用户和组管理命令

1:创建新用户的命令和用法

useradd [选项] 登录名

1

选项和参数说明:

-u:指定用户的UID

-s:指定用户的shell (系统可支持的shell在/etc/shells 下)

-r:创建一个系统用户(UID范围centos6为1-499,centos7为1-999可在/etc/login.defs中查看)

-c:关于登录时的简短描述 后跟描述的字符串

-d:自定义用户的家目录 后跟家目录路径

-e:用户账户将被禁用的期限格式为 YYYY-MM-DD

-f:表示过期后彻底禁用的天数 0表示马上禁止 -1表示禁用这个功能

-G[GROUP1],[GROUP2],… : 添加用户的附加组多个组用“,”隔开

-M:不创建用户的家目录 默认复制/etc/skel/目录下的文件到/home/USERNAME/下作为USERNAME的家目录 都是隐藏文件

-N;不创建同名的私有组

2:修改创建新用户的默认值:(D是default) 命令修改只对当前shell有效

useradd -D [选项]

1

注意:用 useradd -D 修改后的默认值只对当前shell进程,重启或重新登录无效永久生效需要修改配置文件/etc/default 或 /etc/login.defs 一般情况下linux系统下用命令行修改的设置都只对当前shell进程有

参数和选项说明:

useradd -D 不带选项:查看创建新用户的默认值

GROUP=100 #新用户添加到UID为100的公共组

HOME=/home #默认家目录路径

INACTIVE=-1 #过期后彻底禁用的天数 -1表示禁用此功能 0表示过期后马上禁止

1

2

3

4

5

EXPIRE= # 账户过期日期

SHELL=/bin/sh # 默认shell

SKEL= /etc/skel # 默认家目录的复制目录

CREATE_MAIL_SPOOL= #默认创建邮箱

1

2

3

4

5

带选项就是修改上面的默认参数

useradd -D -e 修改变量 EXPIRE=

useradd -D -f 修改变量 INACTIVE=

useradd -D -s 修改变量 SHELL

3:修改用户的信息

usermod [选项] 用户名

1

参数和选项说明:

-u:修改UID

-g:修改用户的基本组

-d:修改用户的家目录 原来的家目录文件不会转移至新目录 要想移动要与参数 -m 一起使用

-G:修改用户的附加组原来的附加组会被删除 要想追加附加组使用参数 -a

-c:修改注释信息

-e:修改过期日期

-f:修改过期后可使用的天数

4:删除用户

userdel [选项] 用户名

1

-r:删除用户一起删除其家目录

5:创建组

groupadd [选项] 组名

1

-r:创建系统组

-g:指定GID -f:如果指定GID重复 强制创建

6:修改组信息

groupmod [选项] 组名

1

-g:改UID

-n:改组名

7:删除组

groupdel [选项] 组名

1

8:更新用户密码和信息

passwd [选项] 用户名

1

参数和选项说明:

-d:删除密码

-l:锁定用户 机制是在/etc/shadow 文件中用户的密码字符串前加“!”

–stdin:与管道一起用将管道前输出字符串作为密码不需要与用户交互 用于脚本编写

示例:

[root@localhost ~]# echo "123456" | passwd --stdin zxs

1

更改用户 zxs 的密码 。

passwd:所有的身份验证令牌已经成功更新。

-u:解锁

-e:密码过期日期

-i:密码禁用期限

-n:密码最小年龄

-x:密码最长年龄

-w:密码警告日期

示例:

[root@localhost zxs]# echo "123456" | passwd -n 2 -x 6 -w 1 -i 3 --stdin zxs

1

调整用户密码老化数据zxs。

passwd: 操作成功

说明:假设在2号修改了用户的密码和其他日期设置

-n 2 (表示用户在这个改的密码至少要用到4号才能修改 2表天数为两天)

-x 6 (表示密码用户用到8号就到期了 使用天数为6)

-w 1 (表示用户密码到期之前的前一天也就是7号,系统会提示密码即将到期的消息提示用户修改密码,在到期之前用户可以登录系统)

-i 2 (表示账号密码过期后,到账号完全禁用锁定的天数,为宽限期3天,此期间用户必须修改密码才能登录系统,禁用后完全无法登录需用root 解锁用户)

9:给组添加密码 一般不需要 用户临时切换基本组需要提供组密码 没有密码不能切换

gpasswd [选项] 组名:

-a:组中添加用户

-d:组中删除用户

1

10:临时切换基本组 然后输入组密码

newgrp - [组名]

1

-:表示模拟重新初始化工作环境 同su -

11:显示用户信息

id [选项] [用户名]

1

-u 显示用户UID

-g 显示用户基本组的GID

-G 显示所有组的GID

-n 显示用户或组的名称

su:切换用户

-:重新读取用户的配置文件初始化其工作环境 就是切换至用户的家目录

1

pwck:检查用户密码文件

grpck:检查组密码文件

四:权限管理命令

三类用户:

uowns

ggroups

oothers

aall

1:赋权表示法即直接赋予某一类用户的所有权限

chmod u=

g=

o=

a=

2:授权表示法即修改某一类用户的一个权限位(比较常用比较安全)

chmod u+

g+

o+

a+(a可以省)

3:8进制数值修改权限方法 直接修改所有类型用户的权限

chmod 644

选项:

-R 修改目录权限时一并修改目录下的所有文件

注:此用法最好搭配授权表示法,为了安全起见文件最好不要拥有执行权限,目录最好不要有写权限

–reference FILE 写改文件的权限使与文件FILE一样

4:修改文件的属主和属组

chown [OPTION]... [OWNER][:[GROUP]] FILE...

1

例如

[root@localhost ~]# chown zxs:ftp text

[root@localhost ~]# ll text

-rw-r--r--. 1 zxs ftp 554 Apr 27 21:18 text

1

2

3

5:修改文件权限的反向掩码

umask默认为002

默认创建的文件的权限是664666-umask获得

默认创建的目录的权限是755777-umask获得

umask 掩码数字:修改掩码即修改创建文件和目录时的默认权限

6:install命令类似cp命令

-m 复制是设置文件权限默认为755

-o 复制时修改文件的属主

-g 复制时修改文件的属组

文章转/kk1946n/article/details/81875461

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