Linux系统的登录方式是通过账号和密码。每一个登录账号都有一个主组可能有附加组。Linux内的文件和目录都有所有者和属组,只有相应权限的账户可以对其进行操作,下面我对用户权限相关内容进行了总结。
1、 用户ID,每个用户具有相应的ID号码,主要分为两类:系统ID和用户ID,在Centos6中系统ID为1-499,用户ID >500;在Centos7中系统ID为1-1000,用户ID>1000。root账户的ID都为0.
2、 组ID,在账户创建时会自动创建与账户名相同的组名和组ID,默认与用户ID相同。
3、 每个账号必须有一个主组,0个或者多个辅助组。
4、 Centos里有四个与用户和组信息存储文件,他们是/etc/shadow /etc/passwd /etc/gshadow /etc/group
其中/etc/passwd中存储了账号相关信息,每行中的内容以冒号分割:
分别表示用户名、密码、用户ID、组ID、用户描述、家目录和shell类型
/etc/shadow中存放了账号密码和密码有效期等:
分别为:用户名、以sha6加密过的密码、密码更改距1970.1.1的天数、密码最短修改日期、最长修改日期、提前提醒密码过期的天数、密码超期作废的天数、账户可使用的天数、最后一位保留。
/etc/group存放了组相关信息
分别为:组名、密码、组ID和包含的用户名。
/etc/gshadow存放了组的密码信息
包括:组名、sha6加密过的密码、组ID和包含的用户名。
5、 配置文件
A、/etc/login.defs文件里包含了全局控制参数
MAIL_DIR /var/spool/mail #邮箱目录
PASS_MAX_DAYS 99999 #密码最长存续时间
PASS_MIN_DAYS 0 #更改密码的最短时间
PASS_MIN_LEN 5 #密码的最短位数
PASS_WARN_AGE 7 #提前几天提醒密码过期
UID_MIN 500 #用户ID的起始编号
UID_MAX 60000 #用户ID的终止编号(用户可以手动设置大于此编号的ID)
GID_MIN 500 #组ID的其实编号
GID_MAX 60000 #组ID的终止编号(上同)
CREATE_HOME yes #是否创建家目录
UMASK 077 #家目录的掩码
USERGROUPS_ENAB yes#是否启用用户组
ENCRYPT_METHOD SHA512 #密码的加密方式
B、/etc/default/useradd文件存放了创建用户时的缺省设置:
# useradd defaults file
GROUP=100 #可创建普通组
HOME=/home #家目录位置
INACTIVE=-1 #账号过期后是否停用
EXPIRE= #账号的终止日期
SHELL=/bin/bash #默认shell
SKEL=/etc/skel #家目录文件模板
CREATE_MAIL_SPOOL=yes #是否创建邮箱
C、/etc/skel目录内存放了新创建家目录所需要的配置文件
6、 用户、组的相关操作命令
A、 查看
a、getent :从/etc/nsswitch.conf包含的管理数据库里获得相关信息。默认定义的参数有
passwd: files
shadow: files
group: files
hosts: files dns
bootparams: nisplus [NOTFOUND=return] files
ethers: files
netmasks: files
networks: files
protocols: files
rpc: files
services: files
netgroup: nisplus
publickey: nisplus
automount: files nisplus
aliases: files nisplus
b、chage -l username :显示账户密码的相关时间设置
c、pwck:检查用户信息
d、grpck:检查组信息
e、id:查看用户id,主组id,辅助组id等
f、finger:查看登录名、用户名、家目录、shell类型、登录时间、终端类型、Ip等
g、groupmems –l :显示组内所有成员列表
B、 增加
a、 charg username:交互式增加当前用户的时间设置;
b、 useradd:增加用户
c、 groupadd:增加组
C、 修改
a、 chsh –s 修改某用户的shell类型
b、 chfn指定用户个人信息包括:用户名称、办公室地址、办公电话、住宅电话
c、 authconfig –passalgo=sha3 –update 更改密码的加密算法
d、 chage {-d,-e,-I,-m,-M,-R,-W} 命令更改账号密码时间
e、 vipw以vi方式修改/etc/passwd
f、 vigr以vi方式修改/etc/group
g、 usermod:修改用户信息
h、 groupmod:修改账户信息
i、 passwd:修改用户密码
j、 gpasswd:向组中添加、删除用户,设置有管理权限的用户列表
k、 newgrp:临时切换基本组
l、 groupmems{-g,-a,-d,-p}更该组名、加入用户、删除用户、清空组内用户
D、 删除
a、 userdel:删除用户
b、 groupdel:删除组
原创文章,作者:realmaster,如若转载,请注明出处:http://www.178linux.com/69810