linux用户,组管理

linux用户,组管理

用户的登陆过程:

用户要使用linux系统,必须先进行登陆,linux的登陆过程和Windows登陆过程类似,登陆的过程包括以下几个步骤

1.当linux系统正常引导启动完成后,系统就可以正常接纳用户登陆,用户界面会显示“login:”提示符。如果是图形界面就会显示用户登陆窗口

2.用户输入用户后系统会检查/etc/passwd是否有该用户,存在则进入下一步,不存在则退出

3.首先读取/etc/passwd中的用户id和组id,同时该用户的其他信息也会一并读取出来

4.用户输入密码以后,系统通过检查/etc/shadow来判断用户密码是否正确,如果密码校验正确则显示用户的默认shell完成登陆。用户shell的类型由?/etc/passwd文件来决定。

用户的类型

linux系统的用户类型分为三类

系统用户:正常运行系统所使用的账户,比如某一个进程 系统用户是不能登陆的

管理员用户:root用户,拥有系统的一切权限

普通用户:普通的使用者,能使用linux的大部分资源

linux会给每个用户一个二进制数字来标识用户:0-65535

各个不同用户类型使用不同段的id来标识:管理员的为0 普通用户为1-65635,其中系统用户为1-499这是centos7以下的版本,centos为1-999;普通用户为500-60000 centos7则为1000-60000

linux系统用户的认证方式是事先存储然后登陆时进行比对信息是否一致.这里会分别对用户的id和密码在/etc/passwd和/etc/shadow文件

/etc/passwd

该文件为纯文本格式,只有root用户能读取 每个字符段用:号隔开。一共分七个字段

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

分别对应的是:用户名:密码:UID:GID: 相关注释:家目录:使用的shell

(如果用户第一行为*的话表示该用户为禁用)

/etc/shadow

该文件也为文本格式,也只有root用户能读取到;和/etc/passwd文件相似分为九个字段

root:$6$9zNMhBI08X3AD3wE$Urd3TwfeedV0IZI2hlyy54RRikcemVQ1z6lme1w7GQja9tb74DwGIgFwA5EUhQ0LJGDFBCIYK7S90CjQesrVc/::0:99999:7:::

每个字段分别对应的是:用户名:加密后的密码:上次修改密码的时间:密码最短使用天数:密码的最长使用天数:密码警告期:过期期限:保留字段

密码的使用策略:

1、使用随机密码;

2、最短长度不要低于8位;

3、应该使用大写字母、小写字母、数字和标点符号四类字符中至少三类;

4、定期更换;

用户组

用户组是用户的容器每个用户都有一个属于自己的私有组。

用户组的分类有三种

1.按权限:管理员组,普通用户组(包含有登陆组和系统组)

2.按组的类别:用户的基本组,用户的附加组(用户可以属于一个基本组和多个附加组)

3.类别:私有组(组名和用户名相同,且之包含一个用户),公共组(组内包含了多个用户)

用户组的文件也有两种:/etc/group,/etc/gshadow

/etc/group:

保存用户组的所有信息,格式同上,只有四个字段

root:x:0:

对应的是:用户组名:用户组密码:用户组标识:组内用户列表

密码的加密算法

linux用户的密码的加密算法是属于单向加密,只能加密不能解密,释以提取数据特征码的形式进行加密的。密码常见的算法有MD5,sha,sha224,sha256…..

linux用户和组的管理命令

用户管理命令

useradd:创建用户
    sueradd [选项]  登陆名
    -u:指定UID
    -g:指定GID
    -G:指明用户的附加组,多个附加组之间用逗号隔开
    -c:指明注释信息
    -d:以指定路径为用户的家目录,通过复制/etc/skel此目录并重命名实现,指定的家目录如果实现存在则不会为用户复制配置环境文件
    -s:为用户指定默认shell,可用的shell列表存储在/etc/shells文件中
    -r:创建系统用户
    -D:显示创建用户的默认配置
sueradd -D 选项:修改默认选项的值
注意:创建用户是的诸多默认设定配置文件为/etc/login.defs

usermod:修改用户属性
    usermod [选项] 登录名
    -u:修改用户id为此处指定的新id
    -g:修改用户所属的基本朱
    -G [GROUP1] [GROUP2]:修改用户所属的附加组,原来的附加组会被覆盖
    -a:与-G一同使用,表示为用户追加附加组
    -c:修改注释信息
    -d:自该用户的家目录,用户原有文件不会被转移覆盖
    -m:只能与-d一同使用,用于将原来的家目录移动为新的家目录
    -l:修改用户名
    -s:修改用户默认shell
    -L:锁定用户密码,即在用户原来的密码字符串之前添加一个!
    -U:锁定用户的密码

suerdel:删除用户
    userdel [选项] 登录名
    -r:删除用户时一并删除其家目录

passwd:修改密码
    passwd:修改用户自己的密码
    passwd USERNAME:修改指定用户的密码,只有root有此权限
    -l,-u:锁定和解锁用户
    -a:清楚用户密码串
    -e DAYS:过期期限
    -i DAYS:非活动期限
    -n DAYS:密码的最短使用期限
    -x DAYS:密码的最长使用期限
    -w DAYS:警告期限
    --stdin:echo “PASSWORD” | passwd --stdin USERNAME

gpasswd:修改组密码
    gpasswd [选项] GROUP
    -a USERNAME:向组中添加用户
    -d USERNAME:从组中移除用户

newgrp:临时切换到指定的组为基本组
    newgrp [-] [group]
    -:会模用户重新登录以实现初始化其工作环境

chage:更改用户密码过期信息
    cheage -[d E W m M] 登录名

id:显示用户的组和有效id
    id [OPTION] ....[USER]
    -u:仅显示有效的UID
    -g:仅显示有效的GID
    -G:仅显示用户所属的所有组ID
    -n:显示名字而非ID

su:用户切换
    登录式切换:会通过读取目标用户的配置文件来重新初始化
    su - USERNAME
    su -l USERNAME
    非登录式切换:不会读取用户配置信息进行初始化
    注:管理员可屋密码切换至任何用户
    -c ‘COMAND’:以指定用户的身份运行此处指定的命令

练习1:创建用户gentoo,UID为4001,基本组为gentoo,附加组为distro(GID为5000)和peguin(GID为5001);

groupadd -g 5000 distro

groupadd -g 5001 peguin

useradd -u 4001 -G distro,peguin

练习2:创建用户fedora,其注释信息为"Fedora Core",默认shell为/bin/tcsh;

useradd -c Fdeora -s tash

练习3:修改gentoo用户的家目录为/var/tmp/gentoo;要求其原有文件仍能被用户访问;

usermod -d /var/tmp/gentoo gentoo

练习4:为gentoo新增附加组netadmin;

usermod -Ga netadmin gentoo

原创文章,作者:N24-执念,如若转载,请注明出处:http://www.178linux.com/64216

(0)
N24-执念N24-执念
上一篇 2016-12-19
下一篇 2016-12-19

相关推荐

  • 如何成为一名软件架构师

    Daniel Mohl是一名专业的软件工程师/架构师,他的兴趣包括理解各种复杂的编程语言、企业应用架构以及如何搭建业务与技术,他通晓F#、C#、CoffeeScript、JavaScript、Erlang、ASP.NET、MVC、WPF、WCF、Sliverlight、SQL Server等技术。有着多年的软件开发经验。 他经常会被一些有潜力和有前途的程序员…

    Linux干货 2016-03-22
  • linux基础学习第十天(文件查找与压缩)

    2016-08-12 授课内容: shell的流程控制 文件查找和压缩 shell的流程控制: 过程式编程语言: 顺序执行 选择执行 循环执行(未讲) 顺序执行: if语句: 单分支 if 判断条件; then 条件为真的分支代码 fi 双分支 if 判断条件; then 条件为真的分支代码 else 条件为假的分支代码 fi 多分支 if CONDITIO…

    Linux干货 2016-08-15
  • 千里眼–用NFS和Samba实现共享网页文件

     目的:使用网络文件系实现LAMP的分步式资源共享 配置过程– 搭建nfs服务器:(centos 6.8) 安装yum install mysql-server nfs-utils httpd #这里安装httpd是为了方便后面共享文件的属主属组定义 启动nfs服务 #service nfs start  mkdir /dat…

    2017-04-30
  • Gdevops 2017全球敏捷运维峰会【北京站】限时免费!

    Introduction 全球敏捷运维峰会 打造敏捷与运维领域标杆峰会! 2017年全球敏捷运维峰会(Gdevops, Global Devops Summit)将于2017年在成都、上海、北京、广州四城全面启动,本次Gdevops 2017全球敏捷运维峰会【北京站】由上海市经济和信息化委员会指导,上海市云计算产业促进中心、DBAplus社群主办,数十家媒体…

    Linux干货 2017-08-02
  • N25-第二周博客作业

    第二周博客作业 1.Linux上的文件管理类命令都有哪些,其常用的使用方法和演示 2.bash的工作特性之命令执行状态返回值和命令行展开所涉及内容演示及其实例 3.请使用命令行展开功能完成以下练习;    (1)创建/tmp的目录下a_c,a_d,b_c,b_d     (2) 创建/tmp/mylinux目录下的 4…

    Linux干货 2016-12-11
  • 利用keepalived实现主/从和主/主模式的高性能负载均衡集群

    要求: 1、使用nginx的反向代理功能实现负载均衡 2、keepalived实现高可用        第一组的虚拟地址为172.16.1.100             D设备的优先级高        第二组的虚拟地址为172.16.1.110             E设备的优先级高 3、分别实现主/从和主/主两种配置 集群拓扑:       第一种:主…

    2017-06-25