linux用户管理(二)

用户信息的更改

方式:

usermod 参数 用户

-l 新用户名 原用户名 更改用户名

-u 更改用户uid

-g 更改用户gid

-G 更改用户附加组

-aG 添加多个用户附加组(系统默认只能有一个附加组)

-c 更改用户说明

-d 更改用户家目录

-s 更改用户shell

-L 冻结帐号(冻结后其他用户不能切换到被冻结的帐号)

-U 解锁帐号

实践:

新建用户userli

将用户名userli修改为studnet

[root@foundation74 kiosk]# usermod -l student userli

//在/etc/passwd下查看用户信息

student:x:1001:1001::/home/userli:/bin/bash    ##用户名被修改


将用户id改为1002

[root@foundation74 kiosk]# usermod -u 1002 student

//在/etc/passwd下查看用户信息

student:x:1002:1001::/home/userli:/bin/bash    ##用户id被修改

将用户组id修改为1000

[root@foundation74 kiosk]# usermod -g 1000 student

//在/etc/passwd下查看用户信息

student:x:1002:1000::/home/userli:/bin/bash    ##用户组id被修改

修改附加组id为1234

[root@foundation74 kiosk]# usermod -G 1234 student

//在/etc/group下查看用户组信息

groupli:x:1234:student    ##在1234的附加组下看到了student

为用户体添加多个附加组

[root@foundation74 kiosk]# usermod -G 1001 student    ##直接使用-g命令,会覆盖前面的附加组

[root@foundation74 kiosk]# id student

uid=1002(student) gid=1000(kiosk) groups=1000(kiosk),1001(userli)   ##1234被覆盖

使用 -aG 命令

[root@foundation74 kiosk]# usermod -aG 1234 student

[root@foundation74 kiosk]# id student

uid=1002(student) gid=1000(kiosk) groups=1000(kiosk),1234(groupli),1001(userli)  ##添加多个附加组成功

更改用户说明

[root@foundation74 kiosk]# usermod -c "hello world" student

//在/etc/passwd下查看用户信息

student:x:1002:1000:hello world:/home/userli:/bin/bash

修改用户家目录

[root@foundation74 kiosk]# usermod -d /home/userlee student

//在/etc/passwd下查看用户信息

student:x:1002:1000:hello world:/home/userlee:/bin/bash

修改用户shell

[root@foundation74 kiosk]# cat /etc/shells     ##首先查看用户shell

/bin/sh

/bin/bash

/sbin/nologin

/usr/bin/sh

/usr/bin/bash

/usr/sbin/nologin

/bin/tcsh

/bin/csh

修改shell

[root@foundation74 kiosk]# usermod -s /bin/sh student

student:x:1002:1000:hello world:/home/userlee:/bin/sh



2.给用户授权

意义:管理员作为特权用户,很容易误操作造成不必要的损失。所以健康的管理方法是在Linux服务架构好后,可授权普通用户协助完成日常管理。

过程:

1.以useradd命令为例,首先找到which useradd 命令在系统中的位置

2.在系统中超级用户可以下放给普通用户不能执行的操作给普通用户

下放权力的配置文件:/etc/sudoers

3.超级用户执行visudo进入编辑/etc/sudoers模式

## Allow root to run any commands anywhere

root    ALL=(ALL)      ALL                            ##找到root这一行

## Allows members of the 'sys' group to run networking, software,

## service management apps and more.

# %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS

//在root    ALL=(ALL)      ALL  后添加

kiosk foundation74.ilt.example.com = (root) NOPASSWD: /usr/sbin/useradd

1                                  2                                       3                                   4

字段1:获得权限的用户

字段2: 主机名= (获得到的用户身份)命名

字段3:NOPASSWD表示用户调用sudo命令是不需要自己的密码

字段4:赋予给用户的命令(命令的绝对路径)

配置完毕后,如果想知道哪些命令是你当前用户能够执行或禁止的,可以切换至该用户身份,然后通过sudo -l查看,切换到kiosk用户

[kiosk@foundation74 ~]$ sudo -l

Matching Defaults entries for kiosk on this host:

...

User kiosk may run the following commands on this host:

    (root) NOPASSWD: /usr/sbin/useradd    ##可以使用useradd命令

...

    /usr/local/bin/rht-vmctl, /usr/local/bin/rht-vmsetkeyboard

下面以kiosk身份执行useradd

[kiosk@foundation74 ~]$ sudo useradd newli           ##以kiosk的身份执行useradd

[kiosk@foundation74 ~]$ tail -n 1 /etc/passwd

newli:x:1006:1006::/home/newli:/bin/bash         ##成功Amazing!


3.用户认证信息的控制

1.查看用户认证信息:

cat /etc/shadow

2./etc/shadow 的内容分析:

以我的一个kiosk用户为例:

kiosk:$6$muzBVJVz$F8SHsxbuBAtgywfyrxyLogLzl9xeEc7v4GQvc6.WtjWv0/tuRpiHUBd6s9axR/FdZiWvC5oW0PwI2cR8KHwym.:17888:0:99999:7:::

/etc/shadow 文件的内容包括9个段位,每个段位之间用:号分割;我们以如下的例子说明:

第一字段:用户名(也被称为登录名),在/etc/shadow中,用户名和/etc/passwd 是相同的,这样就把passwd 和shadow中用的用户记录联系在一起;这个字段是非空的;

第二字段:密码(已被加密),如果是有些用户在这段是x,表示这个用户不能登录到系统;这个字段是非空的;

第三字段:上次修改口令的时间;这个时间是从1970年01月01日算起到最近一次修改口令的时间间隔(天数),您可以通过passwd 来修改用户的密码,然后查看/etc/shadow中此字段的变化;

第四字段:两次修改口令间隔最少的天数;如果设置为0,则禁用此功能;也就是说用户必须经过多少天才能修改其口令;此项功能用处不是太大;默认值是通过/etc/login.defs文件定义中获取,PASS_MIN_DAYS 中有定义;

第五字段:两次修改口令间隔最多的天数;这个能增强管理员管理用户口令的时效性,应该说在增强了系统的安全性;如果是系统默认值,是在添加用户时由/etc/login.defs文件定义中获取,在PASS_MAX_DAYS 中定义;

第六字段:提前多少天警告用户口令将过期;当用户登录系统后,系统登录程序提醒用户口令将要作废;如果是系统默认值,是在添加用户时由/etc/login.defs文件定义中获取,在PASS_WARN_AGE 中定义;

第七字段:在口令过期之后多少天禁用此用户;此字段表示用户口令作废多少天后,系统会禁用此用户,也就是说系统会不能再让此用户登录,也不会提示用户过期,是完全禁用;

第八字段:用户过期日期;此字段指定了用户作废的天数(从1970年的1月1日开始的天数),如果这个字段的值为空,帐号永久可用;

第九字段:保留字段,目前为空,以备将来Linux发展之用;

3.修改/etc/shadow的信息

方式:通过 chage 命令可以查看和修改 /etc/shadow 文件的第三个字段到第八个字段的密码状态

chage -m 6 username 最短有效期

chage -M 10 username 最长有效期

chage -W 2 username 警告期

chage -I 3 username 非活跃天数

chage -E '2018-1-1' username 帐号到期日期

chage -d 0 username 最后一次密码修改的时间

实践:

分别执行以下命令,并查看/etc/shadow文件

175 cat /etc/shadow

  176  chage -m 6 studnet              ## 修改最短有效期为6

  177  chage -m 6 student           

  178  chage -M 10000 student   ##修改最长有效期为10000

  179  chage -W 10 student          ##修改警告期为10天

  180  chage -I 3 student                ##修改非活跃天数为3天

  181  chage -E '2019-12-30' student       ##修改帐号到期日期为2019-12-30

  182  chage -d 0 student                ##修改最后一次密码修改的时间


//查看/etc/shadow文件

student:$6$N.Z7zZ10$BtzsxNmtPcw4mGf3keoybZYToqE/x3BGH9g1Gn5zqJGgR780OPbI/a.dSsF/

TAjFo.J0oGsx86x0l8Ww1z3MC1:17900:6:10000:10:3:18260:       ##对应信息都被改变

                                                              1       2     3         4  5    6

标注字段说明:

标注字段1(17900):从1970年01月01日算起至修改的天数间隔

标注字段2(6):修改最短有效期为6

标注字段3(10000):改最长有效期为10000

标注字段4(10):修改警告期为10天

标注字段5(3):修改非活跃天数为3天

标注字段6(18260):从1970年的1月1日开始至2019-12-30的天数


重点注意:chage -d 0 student 命令

##这个命令主要用于强制用户在第一次登录时必须修改密码。

从普通用户登陆该用户时,先输入之前的密码,系统在提示要修改密码,修改8为位密码,再次输入

[kiosk@foundation74 ~]$ su - student

Password:

You are required to change your password immediately (root enforced)   ##强制修改密码

Changing password for student.

(current) UNIX password:                          ##输入之前的密码

New password:                             ##输入新密码

Retype new password:

Last login: Fri Jan  4 11:13:36 CST 2019 on pts/3          

[student@foundation74 ~]$   ##切换成功

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342

推荐阅读更多精彩内容