zoukankan      html  css  js  c++  java
  • 用户和用户组管理

    用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。

    每个用户账号都拥有一个唯一的用户名和各自的口令。

    添加用户账号就是在系统中创建一个新账号,然后为新账号分配用户号、用户组、主目录和登录Shell等资源。刚添加的账号是被锁定的,无法使用。

    实现用户账号的管理,要完成的工作主要有如下几个方面:

    • 用户账号的添加、删除与修改。
    • 用户口令的管理。
    • 用户组的管理。

    添加用户:

    useradd 选项 用户名
    参数:
    • -c comment 指定一段注释性描述。
    • -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项
    • -g 用户组
    • -G 附加组
    • -s 登录shell
    • -u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
    # useradd -s /bin/sh -g group –G adm,root gem
    此命令新建了一个用户gem,该用户的登录Shell是 /bin/sh,它属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。

    增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他系统文件如/etc/shadow, /etc/group等。

    Linux提供了集成的系统管理工具userconf,它可以用来对用户账号进行统一管理。

    删除用户

    # userdel -r sam  常用的选项是 -r,它的作用是把用户的主目录一起删除。
    此命令删除用户sam在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录。

    修改账号

    usermod:

    参数与添加用户一多一个:

    有些系统可以使用选项:-l 新用户名

    这个选项指定一个新的账号,即将原来的用户名改为新的用户名。

    用户账号刚创建时没有口令,但是被系统锁定,无法使用

    用户口令管理 

    指定和修改用户口令的Shell命令是passwd超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。命令的格式为:  超级用户为用户指定口令时,就不需要知道原口令。

    passwd 选项 用户名
    参数;
    • -l 锁定口令,即禁用账号。  -l(lock) 选项锁定某一用户
    • -u 口令解锁。
    • -d 使账号无口令。
    • -f 强迫用户下次登录时修改口令。

    用户组管理:

    每个用户都有一个用户组:创建用户同时创建用户组

    用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。

    groupadd 选项 用户组
    -g GID 指定新用户组的组标识号(GID)
    -o 可以有相同GID

     groupadd group1  不指定GID则在原来最大上加一
    # groupadd -g 101 group2 指定GID

    删除用户组:

    groupdel 用户组


    修改用户组:
    groupmod 选项 用户组 -g    -o    
    # groupmod –g 10000 -n group3 group2
    此命令将组group2的标识号改为10000,组名修改为group3。

    ,使用命令newgrp切换到其他用户组,这个命令的参数就是目的用户组。切换 当前所在的用户组以便拥有相应权限

     newgrp root
    这条命令将当前用户切换到root用户组,前提条件是root用户组确实是该用户的主组或附加组

    1、/etc/passwd文件是用户管理工作涉及的最重要的一个文件。

    Linux系统中的每个用户都在/etc/passwd文件中有一个对应的记录行,它记录了这个用户的一些基本属性。

    sam:x:200:50:Sam san:/usr/sam:/bin/sh
    用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell

    是由于/etc/passwd文件对所有用户都可读,所以这仍是一个安全隐患。因此,现在许多Linux 系统(如SVR4)都使用了shadow技术,把真正的加密后的用户口令字存放到/etc/shadow文件中,而在/etc/passwd文件的口令字段中只存放一个特殊的字符,例如“x”或者“*”。

    用户标识号的取值范围是0~65 535。0是超级用户root的标识号,1~99由系统保留,作为管理账号,普通用户的标识号从100开始。在Linux系统中,这个界限是500。

    1)"用户名"是代表用户账号的字符串。

    2)“口令”一些系统中,存放着加密后的用户口令字。

    3)“用户标识号”是一个整数,系统内部用它来标识用户。

    4)“组标识号”字段记录的是用户所属的用户组。

    5)“注释性描述”字段记录着用户的一些个人情况。

    6)“主目录”,也就是用户的起始工作目录。

    7)用户登录后,要启动一个进程,负责将用户的操作传给内核,这个进程是用户登录到系统后运行的命令解释器或某个特定的程序,即Shell。

    8)系统中有一类用户称为伪用户(pseudo users)。

    这些用户在/etc/passwd文件中也占有一条记录,但是不能登录,因为它们的登录Shell为空。它们的存在主要是方便系统管理,满足相应的系统进程对文件属主的要求。

    常见的伪用户如下所示:

    伪 用 户 含 义 (拥有特殊文件)
    bin 拥有可执行的用户命令文件 
    sys 拥有系统文件 
    adm 拥有帐户文件 
    uucp UUCP使用 
    lp lp或lpd子系统使用 
    nobody NFS使用
    

     

    用户组的所有信息都存放在/etc/group文件中
    bin::2:root,bin 组名:口令:组标识号:组内用户列表
    组名:口令:组标识号:组内用户列表

    批量添加用户:

    。Linux系统提供了创建大量用户的工具,可以让您立即创建大量用户,方法如下:

    (1)先编辑一个文本用户文件。

    每一列按照/etc/passwd密码文件的格式书写,要注意每个用户的用户名、UID、宿主目录都不可以相同,其中密码栏可以留做空白或输入x号。一个范例文件user.txt内容如下:

    user001::600:100:user:/home/user001:/bin/bash
    user002::601:100:user:/home/user002:/bin/bash
    user003::602:100:user:/home/user003:/bin/bash

    以root身份执行命令 /usr/sbin/newusers

     newusers < user.txt

    将 /etc/shadow 产生的 shadow 密码解码,然后回写到 /etc/passwd 中,并将/etc/shadowshadow密码栏删掉。这是为了方便下一步的密码转换工作,即先取消 shadow password 功能。

    # pwunconv

    编辑每个用户的密码对照文件。

    范例文件 passwd.txt 内容如下:

    user001:密码
    user002:密码

    以root身份执行命令 /usr/sbin/chpasswd

    创建用户密码,chpasswd 会将经过 /usr/bin/passwd 命令编码过的密码写入 /etc/passwd 的密码栏。

    # chpasswd < passwd.txt
    user001::600:100:user:/home/user001:/bin/bash 
    us001:X:1000:1000::/home/us001:sbin/bash
    用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
     
     


    确定密码经编码写入/etc/passwd的密码栏后。

    执行命令 /usr/sbin/pwconv 将密码编码为 shadow password,并将结果写入 /etc/shadow

    # pwconv
  • 相关阅读:
    Azure PowerShell (2) 修改Azure订阅名称
    Windows Azure Platform Introduction (11) 了解Org ID、Windows Azure订阅、账户
    Azure PowerShell (3) 上传证书
    Azure PowerShell (1) PowerShell入门
    Windows Azure Service Bus (2) 队列(Queue)入门
    Windows Azure Service Bus (1) 基础
    Windows Azure Cloud Service (10) Role的生命周期
    Windows Azure Cloud Service (36) 在Azure Cloud Service配置SSL证书
    Android studio 使用心得(一)—android studio快速掌握快捷键
    android 签名、混淆打包
  • 原文地址:https://www.cnblogs.com/webcyh/p/11299080.html
Copyright © 2011-2022 走看看