用户管理相关

安全3A:
    资源分配:
  •       authentication:认证
  •       authorization 授权
  •       accouting|audition 审计

用户分为(centos7):
  管理员:root 0
  普通用户:1-65535
    系统用户:1-999
    登录用户:1000+

linux用户组分为(centos7):
  管理员组:root 0
  普通用户:1-65535
    系统组:1-999
    登录组:户1000+

linux安全上下文
  运行中的程序:进程 process,以进程发起者的身份运行:
    root:/bin/cat
    mage: /bin/cat
    进程以对资源的访问权限,取决于进程的发起者对该资源的权限。

 linux用户的组类别
     用户的主要组
     用户必须属于一个有且只有一个主组
     组名同名用户名,且仅包含一个用户:私有组
     用户的附加组
     一个用户可以属于零个或多个辅助组

用户和组的配置文件
  /etc/passwd(文件格式)·(用户信息)
    switch(用户名):x(密码占位符):1000(UID):1000(GID):switch(用户注释):/home/switch(用户家目录):/bin/bash(默认bash路径)
  /etc/shadow(用户密码)
    switch(用户名):$6$HMuW0SHkt2GFTHNn$QQxeMA2wWgCnN3igW9WmBuFxDH1gehX21fH.3ePnqGLmxdViOBTbR6u20UEdLby0sYiE7AHupa.cXX0GE8BIJ/(加密的密码:第一个$与第二个$之间的数字代表加密算法:1MD5 2sha1 3sha160 4sha224 5sha384 6sha512;第二$和第三$之间代表加密随机数最后的才是加密的秘法):(距离上次修改密码有多少时间,天,):0(最短使用期限):99999(最长使用期限):7(警告期限):(禁用期限):(过期期限):
  /etc/group(组信息)
    switch(组名):x(组密码占位符):1000(组ID
    ):switch(此组的用户列表)
  /etc/gshadow(组密码)
    switch(用户名):!!(密码字段!!代表密码段不可用)::switch(此组用户列表)

pwunconv:把密码存储文件改为/etc/passwd
pwconv:把密码存储文件改为/etc/shadow

chfn username 添加用户的相关描述信息
finger usr 显示用户的描述信息
chsh -s  /shells类型 username 修改shell
getent passwd username: 查看指定用户的/etc/passwd信息(也可查看/etc/shadow,/etc/group,/etc/gshadow内容)

密码的复杂性策略:
  •   使用数字、大写字母、小写字母以及特殊字符中至少3种
  •   密码足够长
  •   使用随机密码
  •   定期更换:不要使用曾经使用过的密码

chage [options] username:  查看或修改用户的密码策略(直接跟用户名,修改密码策略)
  options:
  •     -l 查看策略
  •     -d 设置最近一次修改密码的时间相对于1970-1-1
  •     -E 设置过期时间
  •     -I 设置inactive 禁用时间
  •     -m 设定最小使用天数
  •     -M 设定最大使用天数
  •     -W 设置警告期限



passwd 设定用户密码

gpasswd 设定组密码


newgrp groupname:临时切换基本组,若该用户属于该组成员,则不需要密码

新建用户的相关文件
  •   /etc/default/useradd
      创建用户的默认设定值配置文件
      useradd -D 显示默认添加用户的配置信息
      useradd -D -s shell 修改默认shell类型
      useradd -D -b dir 修改默认家目录创建位置
      useradd -D -g group 修改默认组
  •   /etc/skel/*
    :新建用户的模版文件夹,新建用户的家目录会默认从该处拷贝相关文件。
  •   /etc/login.defs


useradd [options] username 添加用户
  options:
  •     -u:指定UID,
  •     -o:不检查ID的唯一性
  •     -g:指明用户的基本组
  •     -c:用户的注释信息
  •     -s 指明用户默认shell类型
  •     -d 指定特定家目录
  •     -r 创建系统用户
  •     -N 不创建私有组做主组,指定特定的组为主组
  •     -G 指明附加组
  •     -M 不创建家目录


newusers usrlist
    批量新建用户,需要提前准备文件(按照/etc/passwd文件格式写)(仅仅创建用户,而邮件,家目录相关/etc/skel的文件并没有创建)

id [options] username:查看用户的信息
   -u:UID
   -g:GID
   -G:显示所有组
   -n:显示名称而不显示ID号,配合-u,-g等使用


usermod [options]  username 修改用户属性
  options:
  •     -u uid:修改uid
  •     -g GID:修改GID
  •     -G group:修改附加组,原附加组被覆盖
  •     -a 追加,和-G联合使用,追加附加组,不覆盖原附加组
                     (删除附加组;usermod -G “” username删除附加组)
  •     -d homedir 修改用户家目录,但原家目录内容不移动到新文件中。
  •     -m 移动用户原家目录内容到新目录, 和-d搭配使用
  •     -l  修改用户名
  •     -L  锁定用户
  •     -U  解锁用户
  •     -e 指定用户的过期日期
  •     -f 设定inactive禁用期限

passwd [options] username:更改用户的密码等信息,仅root权限
  options:
  •     -l:锁定指定用户
  •     -u:解锁用户
  •     -e:强制用户下次登录修改密码*
  •     -n mindays:指定最短使用天数
  •     -x 指定最大使用天数
  •     -w 设定警告期限
  •     -i 设定非活动期限
  •     –stdin 从标准输入接受密码

chpasswd ( cat passwdfile | chpasswd)(批量修改用户密码)
   passwdfile格式
     username:passwd

userdel [options] username 删除用户信息
  options:
  •     -r 一并删除用户家目录
    注意:正在登陆的用户不能删除

vipw:编辑/etc/passwd文件

pwck
  验证用户相关文件的完整性

su [options] [-] username
  切换用户的方式:
    登录式切换: 
      su – userame
      读取用户的配置文件,改变当前的工作目录,切换至指定用户的家目录,完全切换
    非登录式切换:
      su username
      不会读取用户的配置文件,不改变当前工作目录
    su [-] username -c `command`:以特定用户的身份执行某一条命令

chfn: 修改用户的特定信息
finger 查看用户的信息
chsh:修改用户的shell类型

groupadd [options] grpname 创建组
  -g GID:指明GID
  -r 创建系统组

groupmod [options] grpname:修改组属性
  options:
    -n grpname 修改组名
    -g GID     修改组ID

groupmems [options] [actions]
   options:
     -g grpname 更改为指定组
  actions:
    -a:指定用户加入组
    -d:从组中删除特定成员
    -p:删除所有组成员
    -l:显示组成员列表
    例 groupmems  -a wang -g 666

gpasswd [options] grpname(不带选项即修改组密码)
  •   -a user:将特定用户添加到特定组中
  •   -d user:将某用户从某组中删除
  •   -A user1,user2…设定有管理权限的用户,即设定组管理员

newgrep grpname临时切换基本组

groups  [username]:查看用户所属组列表

groupdel grpname:删除特定组
  注意: 组删除:主组不能删除


vigr:编辑/etc/group文件

grpck:验证组相关文件的完整性

/var/spool/mail 邮件文件夹存放位置

openssl rand -base64 20(位数)
  自动生成随机口令

原创文章,作者:switch,如若转载,请注明出处:http://www.178linux.com/70033

(0)
switchswitch
上一篇 2017-02-25 15:41
下一篇 2017-02-25 15:44

相关推荐

  • MySQL 字符集乱码及解决方案

    1、简介         字符集是一套符号和编码的规则,不论是在oracle数据库还是在mysql数据库,都存在字符集的选择问题,而且如果在数据库创建阶段没有正确选择字符集,那么可能在后期需要更换字符集,而字符集的更换是代价比较高的操作,也存在一定的风险,所以,我们推荐在应用开始阶段,就按…

    Linux干货 2015-09-27
  • 使用iptables缓解DDOS及CC攻击

    缓解DDOS攻击 防止SYN攻击,轻量级预防 iptables -N syn-flood iptables -A INPUT -p tcp –syn -j syn-flood iptables -I syn-flood -p tcp -m limit –limit 3/s –limit-burst 6 -j RETURN iptables -A syn-fl…

    Linux干货 2015-02-09
  • bonding

    boding制作        问题:一个网卡一个IP没有容错性     bonding是LINUX中将多网卡绑定虚拟成一块网卡,实现多网卡共同拥有一个IP,这项技术早在Sun和Cisco中被称为Trunking和Etherchannel技术。   …

    2017-03-22
  • 02Linux上终端的类型

    一、终端的概念 所谓终端就是在一个连接主机的端子上面接入鼠标、键盘、显示器等所组成的一个组合。终端用于用户与主机之间的交互。早期的时候,在大型主机上,想使用主机的用户很多,但是主机却只有一个,也不能实现人手一台。于是为了让一台主机给多个用户使用,便产生了多个终端和多个用户,这样每个用户只要有一个终端变可以与主机交互了。 二、终端的种类 终端的类型有四类:物理…

    Linux干货 2016-10-14
  • Linux中的shell脚本编程——基础篇

    概述:       shell脚本在Linux系统管理员的运维工作中非常重要。shell脚本能够帮助我们很方便的管理服务器,因为我们可以指定一个任务计划,定时的去执行某一个脚本以满足我们的需求。本篇将从编程基础、脚本基本格式、变量、运算、条件测试这几个方面详细介绍shell脚本编程的基础内容,也是我们必须要掌握熟练的内容。 一、…

    Linux干货 2016-08-15
  • 用PHP编写Hadoop的MapReduce程序

    Hadoop流 虽然Hadoop是用java写的,但是Hadoop提供了Hadoop流,Hadoop流提供一个API, 允许用户使用任何语言编写map函数和reduce函数.Hadoop流动关键是,它使用UNIX标准流作为程序与Hadoop之间的接口。因此,任何程序只要可以从标准输入流中读取数据,并且可以把数据写入标准输出流中,那么就可以通过Hadoop流使…

    Linux干货 2015-04-13