一、用户的管理
在Linux系统中,由于保存用户名的文件/etc/passwd对于众多用户都有可读的权限,为了保障系统用户的安全信息,是以在Linux系统中,将用户名和密码进行分开存放在不同文件中,密码文件/etc/shadow除root用户外,任何用户都无法访问。
1.用户名文件/etc/passwd的简介
[root@localhost ~]# 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
...
cisco:x:500:500:cisco:/home/cisco:/bin/bash
huawei:x:501:501::/home/huawei:/bin/bash
named:x:25:25:Named:/var/named:/sbin/nologin
[root@localhost ~]#
每一行对应一个账号的信息,用:隔开,共有七个选项
1.1.用户名
1.2.在早期的UNIX版本中,用户和密码放在一起的,用户名在第一个选项位,密码在第二 个选项位,后来出于账户安全的考虑,对此进行了改进,将密码另外存放,并用字符x占用第二个密码选项位
1.3.用户名的UID,
其中0表示系统管理员ROOT账户,
1-499用于系统内置账户,如nobody,bin等
500-65535普通系统本地账户,系统安装完成后,由ROOT用户创建分配给有需要接入Linux主机的使用者使用。
如果因为需要,可以将普通系统本地账户的UID改为0,就样该用户就有了ROOT用户一样的权限了,但不建议这样设置。
1.4.用户组的GID,用户组名保存在/etc/group文件中,有时为了便于权限的分配,可以将多个用户加入到同一个用户组中,对用户组分配相应权限,这样该用户组中的所有用户都同时获得了相同的权限,可以简化对每一个用户来分配权限。
将用户加入其它用户组中的操作可以在/etc/group文件中的用户组名后批量添加相应的用户名称便可,不需要在此进行修改。
1.5.用户的全名信息,或描述等内容
1.6.用户的宿主目录
1.7.用户登陆后使用的shell,其中/sbin/nologin为限制用户登陆系统
2.用户密码文件/etc/shadow的简介
[root@localhost ~]# cat /etc/shadow
root:$1$hMREZfvX$yyhQ.0IyP09/PUVi2fExB1:15586:0:99999:7:::
bin:*:14790:0:99999:7:::
daemon:*:14790:0:99999:7:::
adm:*:14790:0:99999:7:::
lp:*:14790:0:99999:7:::
...
cisco:$1$fIx6lyRH$tjIc7LJepTMc48vTW.imz1:15586:0:99999:7:::
huawei:$1$nyZEieSo$8gm1dP5LMSYqCKTzElza61:15592:0:99999:7:::
named:!!:15592::::::
[root@localhost ~]#
密码文件共使用了八个选项来定义其中的内容
2.1 用户名
2.2 经过加密码后的密码信息
2.3 最近改动密码的日期,该日期参数是以1970年1月1日作为第1天而累加计算出的
2.4 密码不可改动的天数,由选项3中的日期为第1天,如果该选项参数为0,表示随时可以更改
2.5 密码需要改动的天数,即强制用户每多少天修改密码,密码过期后需要更新密码后才可以登陆
2.6 密码快要到期的前多少天提示警告信息
2.7 密码到期后可以宽限的天数,密码过期后,在此时间内通过更改密码后,并登陆来重新激活账号
2.8 账号失效日期,在一些收费使用系统的应用中,可以设置此选项内容.
2.9 预留选项,未使用
3.对用户的管理操作
useradd 添加新用户
userdel 删除系统中的用户
usermod 修改用户属性,可更改passwd和shadow文件中用户的相关属性
[root@localhost ~]# usermod --help
Usage: usermod [options] LOGIN
Options:
-c, --comment COMMENT new value of the GECOS field
-d, --home HOME_DIR new home directory for the user account
-e, --expiredate EXPIRE_DATE set account expiration date to EXPIRE_DATE
-f, --inactive INACTIVE set password inactive after expiration
to INACTIVE
-g, --gid GROUP force use GROUP as new primary group
-G, --groups GROUPS new list of supplementary GROUPS
-a, --append append the user to the supplemental GROUPS
mentioned by the -G option without removing
him/her from other groups
-h, --help display this help message and exit
-l, --login NEW_LOGIN new value of the login name
-L, --lock lock the user account
-m, --move-home move contents of the home directory to the
new location (use only with -d)
-o, --non-unique allow using duplicate (non-unique) UID
-p, --password PASSWORD use encrypted password for the new password
-s, --shell SHELL new login shell for the user account
-u, --uid UID new UID for the user account
-U, --unlock unlock the user account
-Z, --selinux-user new SELinux user mapping for the user account
[root@localhost ~]#
更改用户的密码,使用passwd [用户名],普通本地用户只能修改自己的密码信息,不能对其它用户的密码进行更改。
二、用户组的管理
1.用户组文件/etc/group的简介
[root@localhost ~]# cat /etc/group
root:x:0:root
bin:x:1:root,bin,daemon
daemon:x:2:root,bin,daemon
……
cisco:x:500:
huawei:x:501:
named:x:25:
用户组的选项内容只有四个,其选项意义如下:
1.1 用户组名
1.2 用户组密码,同样经改进后,用户组密码不再保存在用户组名文件中,另存放在/etc/gshadow文件中,此选项使用字符x占位
1.3 用户组GID
1.4 用户组中包含的用户名,默认只含有同用户组名的用户,如需往用户组中添加多个用户名,可以在此选项中添加,并用逗号隔开
[root@localhost ~]# groups
root bin daemon sys adm disk wheel
[root@localhost ~]#
以上操作,表示用户名root同时属于root,bin,daemon,sys,adm,disk,wheel等用户组中
2.用户组密码文件/etc/gshadow的简介
[root@localhost etc]# cat gshadow
root:::root
bin:::root,bin,daemon
daemon:::root,bin,daemon
……
cisco:!::
huawei:!::
named:!::
用户组密码文件中的内容和用户组名文件中的内容几乎一样,因为一般很少用到需要对用户组设置密码等的操作
2.1 群组名称
2.2 密码栏,同样的,开头为 ! 表示无合法密码,所以无群组管理员
2.3 群组管理员的帐号 (相关资讯在 gpasswd 中介绍)
2.4 该群组的所属帐号 (与 /etc/group 内容相同!)
3.对用户组的管理操作
groupadd 添加用户组,一般新建用户时,就会自动生成一个同名同ID(UID=GID)的用户组
groupdel 删除用户组
一般直接通过usermod命令来更改用户的相关属性(包括用户组属性),没有groupmod这个命令的操作
三、文件和目录的属主、属组以及访问权限的管理
在Linux系统中,对每个文件和目录都有定义相应的属主和属组,以用来管理用户对文件和目录的访问和操作
chown [用户名][文件或目录] 更改文件或目录的所有者(用户),即属主
chgrp [用户组名][文件或目录] 更改文件或目录所属的用户组,即属组
也可以使用“chown 用户名:用户组名(用户名.用户组名) 文件或目录”直接对文件或目录的用户和用户组进行修改
chmod [ugoa][+-=][rwx] 文件或目录名,更改用户和用户组对目录或文件的访问权限,
其简化操作为 chmod 755 /home/user01/ = chmod u=rwx /home/user01|chmdo g=rw /home/user01|chmod o=rw /home/user01
四、文件或目录权限的简介
[root@localhost home]# ls -l
total 32
drwxr-xr-x. 30 cisco cisco 4096 Sep 10 03:52 cisco
drwx------. 4 huawei huawei 4096 Sep 8 18:54 huawei
drwx------. 2 root root 16384 Sep 3 05:17 lost+found
drwxr-xr-x. 4 nobody nobody 4096 Sep 9 20:39 samba
drwxr-xr-x. 2 root root 4096 Sep 9 01:24 share
[root@localhost home]#
1. 第一个选项代表这个档案是‘目录、档案或连结档等等’:
2. 当为[ d ]则是目录,
当为[ - ]则是档案,
若是[ l ]则表示为链接文件(link file),目录的快捷方式
若是[ b ]则表示为装置档里面的可供储存的周边设备(可随机存取装置);
若是[ c ]则表示为装置档里面的序列埠设备,例如键盘、滑鼠(一次性读取装置)。
2.表示快捷方式指向本文件或目录的数,最少是一个
3.目录或文件的所有者用户
4.目录或文件的所有组
5.目录或文件的大小,目录大小都为4096,文件大小为实际大小
6.目录或文件的最近修改日期
7.目录或文件的名称