/etc/passwd文件剖析

文件格式:

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

用户名:密码位:UID:GID[缺省组ID]:注释性的描述信息:宿主目录:shell[7部分]

Linux用户分类:

超级用户(root,UID=0)

普通用户(UID=500~60000) #最大值是可以更改的

伪用户/特殊用户(UID=1~499)

#因此,将一个用户的用户的UID改为0之后,其就成为了超级用户


伪用户特点


1、伪用户与系统和程序服务相关

如:bin、daemon、shutdown、halt等,任何Linux系统都默认含有这些伪用户

如:mail、news、games、apache、ftp、mysql及sshd等,与Linux 系统进程相关的伪用户

像MySQL是在安装时自动添加到配置文件中的。

2、伪用户通常不需要也或无法登录系统,因此,伪用户机制确保了系统的安全

3、可以没有宿主目录

用户组


1.每个用户都至少属于一个用户组

【在管理系统时,每个用户都应该隶属与自己的组,这样,每个用户才会“各司其职”,拥有自己所特有的权限,才不至于“天下大乱”】

2.每个用户组可以包括多个用户,一个用户可以同时隶属多个组

3.同一组的用户享有该组所共有的权限

4.如果在创建用户时没有指定用户组,则系统会创建一个与用户名相同的组,并将该用户加入该组

其他说明

注释性描述 #例如存放用户全名、该名用户所隶属的部门等信息,在添加用户是,最好书写这个一个描述,以便以后区分该用户的作用

宿主目录 #用户登录系统后的缺省目录

命令解释器 #用户使用的Shell,默认为bash

/etc/shadow文件剖析

文件格式:

root:$1$0HZuNsCv$URJuS1MRpjafAVcmYO0bI1:15957:0:99999:7:::

用户名:加密密码:最后一次修改时间:最小时间间隔[0表示不限制]:最大时间间隔:警告时间:帐号闲置时间:失效时间:标志【一般不使用】

其他信息说明:

如果密码位被清空,则登录该用户不再需要密码.

最小时间间隔:两次修改密码之间的最小天数

最大时间间隔:密码保持有效的最多天数,可以强行使用户修改密码

【查看/etc/shadow文件帮助信息: man 5 shadow】

/etc/shadow文件权限

Linux密码机制

将密码回写回去:pwunconv #商用UNIX并不提供该工具

此时/etc/shadow文件不存在了

密码转换 :pwconv

此时/etc/shadow又回来了

即-每当系统创建密码时,总是自动执行密码转换动作。

【验证用户名时检验/etc/passwd文件, 验证密码时校验:/etc/shadow】

【查看root密码信息 grep root /etc/passwd /etc/shadow】

/etc/login.defs简要分析


用户登录默认信息

CREATE_HOME yes #创建用户的同时,创建宿主目录

UMASK  077 #缺省用户创建文件或目录的权限

【各种选项都会在语句上面有详细的说明】

/etc/default/useradd简要分析

添加用户时的默认配置

INACTIVE=-1  #表示用户创建时默认是不被禁用的,0-默认禁用

EXPIRE=#帐号的失效时间

SHELL=/bin/shell  #用户默认shell,若为/sbin/nologin,则新用户默认无法登录

SKEL=/etc/skel #新添加用户的默认配置文件原来保存的位置

CREATE_MAIL_SPOOL=yes #添加用户时,是否创建保存用户邮件的文件

登录信息配置文件

/etc/motd 用户登录之后显示的信息,可以用于内部人员的通知信息[今日消息],只要登录,就能收到

/etc/issue  用户登录前显示的信息,但是不建议使用原来的内容,可以用来显示公共信息

实例:手工添加用户

1.编辑/etc/passwd文件,添加

xiaofang::502:502:test user:/home/xiaofang:/bin/bash

2.创建xiaofang的宿主目录:mkdir /home/xiaofang

3.改变该目录的所有者: chown tom /home/xiaofang

4.编辑/etc/shadow,添加

xiaofang::16023:0:99999:7:::

4.cp -rf /ect/skel/.* /home/xiaofang

#新用户信息文件:/etc/skel,这里面保存了新用户的一些配置文件,只要将其全部拷贝到/home/xiaofang下面,则该用户与useradd来的用户无异

5.passwd xiaofang #生成xiaofang的密码

此时

OK!

附-生成加密的密文

echo “123456” | md5sum

Linux用户配置文件(第二版)的更多相关文章

  1. Linux操作系统(第二版)(RHEL 8/CentOS 8)

    Linux操作系统(第二版)(RHEL 8/CentOS 8) http://www.tup.tsinghua.edu.cn/booksCenter/book_08172501.html Linux操 ...

  2. Linux操作系统(第二版)(RHEL 8/CentOS 8)——勘误表

    Linux操作系统(第二版)(RHEL 8/CentOS 8)--勘误表 http://www.tup.tsinghua.edu.cn/booksCenter/book_08172501.html 本 ...

  3. Linux用户配置文件

    一,用户信息文件 /etc/passwd 1,用户管理简介 1,越是对服务器安全性要求高的服务器,越需要建立合理的用户权限等级制度和服务器操作规范 2,在Linux中主要是通过用户配置文件来查看和修改 ...

  4. linux 用户配置文件及其相关目录

    用户配置文件及其相关目录: /etc/passwd 用户信息文件/etc/shadow 影子文件/etc/group 组信息文件/etc/gshadow 组密码文件邮箱目录模板目录 /etc/pass ...

  5. Linux用户配置文件、口令配置文件、组配置文件

    1.用户配置文件:保存用户信息 /etc/passwd 2.口令配置文件 /etc/shadow 每一行解释:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效 ...

  6. Linux进程管理(第二版) --计划任务

    计划任务 一.一次性计划任务 月11日) at 5:30pm at 17:30 [today] #today可省略 at now + 3 hours at now + 180 minutes at 1 ...

  7. Linux常用命令(第二版) --文件管理命令

    文件管理命令 并不建议:照着像命令大全这类的书来学! 常用命令大约有200个. 文件命名规则: a)除了'/'之外所有字符都合法! b)这些字符最好不用 1.空格符,制表符,退格符 2.连接符 3.特 ...

  8. GRUB与Linux系统修复(第二版)

    GRUB配置解析 配置文件保存在 /boot/grub/grub.conf[/boot分区最好应该单独划分出来] 软链接保存在 /etc/grub.conf 1.grub.conf文件分析 defau ...

  9. Linux文件系统构成(第二版)

    Linux文件系统构成 /boot目录: 内核文件.系统自举程序文件保存位置,存放了系统当前的内核[一般128M即可] 如:引导文件grub的配置文件等 /etc目录: 系统常用的配置文件,所以备份系 ...

随机推荐

  1. FORM开发两种方式实现动态LIST

    方法一:常规的,也是网上比较常见的 1.将目标ITEM的子类信息设置为List,不需要添加列表中元素,不需要初始值. 2.新建一个Procedure,代码如下: PROCEDURE basis_lis ...

  2. PGM:有向图模型:贝叶斯网络

    http://blog.csdn.net/pipisorry/article/details/52489270 为什么用贝叶斯网络 联合分布的显式表示 Note: n个变量的联合分布,每个x对应两个值 ...

  3. 学习Android路上的一些感慨和总结,慢慢来,比较快!

    学习Android路上的一些感慨和总结,慢慢来,比较快! 一直想对自己的学习路程做一个总结,来告别某一个阶段的过去,迎接某一个阶段的来临,一直抽不出时间来,于是零零散散的写了点-,到现在,也已经积攒了 ...

  4. scala模式匹配的使用

    Scala模式匹配 Tip1:模式总是从上往下匹配,如果匹配不到则匹配case_项(类似Java中的default) Tip2:与Java和C语言不同,不需要在每个分支末尾使用break语句退出(不会 ...

  5. Java实现内部类

    内部类是java中非常方便的一种机制,内部类所在的类称为宿主类,即内部类只能被它的宿主类使用,用这个特性,可以很好的控制类的可见性. 接下来看一个例子: package for_apro; impor ...

  6. 剑指offer面试题6 重建二叉树(java)

    注:(1)java中树的构建 (2)构建子树时可以直接利用Arrays.copyOfRange(preorder, from, to),这个方法是左开右闭的 package com.xsf.SordF ...

  7. FFmpeg源代码简单分析:av_write_trailer()

    ===================================================== FFmpeg的库函数源代码分析文章列表: [架构图] FFmpeg源代码结构图 - 解码 F ...

  8. Android软件设置自动检查更新

    如果让我推荐功能强大的第三方集成开发包,我一定会推荐友盟,有着强大的软件统计,分析功能(原谅我,我不是打广告). 这一篇介绍友盟的自动更新功能,但是首先你得拥有友盟. 友盟的集成步骤 1.1 导入SD ...

  9. Dalvik虚拟机

    Dalvik虚拟机是google专门为android平台开发的一个java虚拟机,但它并没有使用JVM规范.Dalvik虚拟机主要完成对象生命周期的管理.线程管理.安全和异常管理以及垃圾回收等重要功能 ...

  10. .so的封装调用

    .so的创建和调用有一个特点,我们要知道.so的调用并不一定必须在Activity中进行,那么制作时也并不一定要在Activity中,但是,一旦.so制作成功,那么再调用时,调用的java类就必须跟制 ...