Chinaunix首页 | 论坛 | 博客
  • 博客访问: 617047
  • 博文数量: 204
  • 博客积分: 5172
  • 博客等级: 上校
  • 技术积分: 2092
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-08 21:48
个人简介

一个毫无毅力之人的自勉

文章分类

全部博文(204)

文章存档

2014年(1)

2013年(54)

2012年(50)

2011年(94)

2010年(3)

2009年(3)

分类: LINUX

2011-07-06 23:56:16

原文地址:Linux 账户和密码 作者:ville_lee

一. 账户和密码
        对Linux而言有两种账户的概念,一个是用户的账户,一个是组账户。

1.1 用户的账户和密码
        用户的账户,主要是用户登录系统后的一个标示,主要的相关文件有:
                /etc/passwd 和 /etc/shadow
        两个文件。其中/etc.passwd中存放的用户名等信息,/etc/shadow中主要存放加密之后
        的用户密码。用户名信息存储在 /etc/passwd文件中:
        ville:x:500:500:ville lee:/home/ville:/bin/bash
        root       :     x     :       0      :      0      :      root      :      /root                :      /bin/bash
        用户名  :密码 :  用户ID :   组ID  :    注释    :    起始工作目录   :   使用的shell
       
        bin:x:1:1:bin:/bin:/sbin/nologin
        其中的nologin是防止bin用户登录的一种手段。


        用户的密码已经转移到一个单独的文件中,/etc/passwd文件中。
  1. ville:$6$rpT.H4FMfUL59v8n$82PMHgMr0Z7i2S7FYQ8wY13jnc62Sb5jFd7UT5XpP1RkOJ9xhwIpE9JzgNXYTab3mkUKpZmLO6tgsHnJSmXrz0:15090:0:99999:7:::
  2. root:$6$FvqT7ZW6QH39hST7$bPtMWodjtQX9Bk4KWHJ3OMiXyJzyF7bAiOUFYoy0t8zMt1hCU.p2kUFq/rGFgcYGsOxlj80Vb57FkeslCN28H0:15090:0:99999:7:::
        其中各个字段的意义:
        用户名:用户的帐户名

        口令:用户的口令,是加密过的

        最后一次修改时间:从1970年1月1日起,到用户最后一次更改口令的天数

        最小时间间隔:从1970年1月1日起,到用户可以更改口令的天数

        最大时间间隔:从1970年1月1日起,到用户必须更改口令的天数(99999表示不需要变更)

        警告时间:在用户口令过期之前多少天提醒用户更新

        不活动时间:在用户口令过期之后到禁用帐户的天数

        失效时间:从1970年1月1日起,到帐户被禁用的天数

        标志:保留位


   

  1. useradd :添加用户
  2. adduser :添加用户
  3. passwd :为用户设置密码
  4. usermod :修改用户命令,可以通过usermod 来修改登录名、用户的工作目录等等;
  5. pwcov :同步用户从/etc/passwd 到/etc/shadow
  6. pwck :pwck是校验用户配置文件/etc/passwd 和/etc/shadow 文件内容是否合法或完整;
  7. pwunconv :是pwcov 的立逆向操作,是从/etc/shadow和 /etc/passwd 创建/etc/passwd ,

  8. 然后会删除 /etc/shadow 文件;
  9. finger :查看用户信息工具
  10. id :查看用户的UID、GID及所归属的用户组
  11. chfn :更改用户信息工具
  12. su :用户切换工具




1.2 组的账户和密码

        /etc/group主要用来标识

        root       :        x       :         0         :        root

        组名称         密码            GID               组成员

        一个用户可以属于多个组,但是之前看到,在/etc/passwd中,一个用户只是绑定了一个组ID。

        这个组叫做默认组,也就是用户登录系统之后,默认所属于的组,当用户需要其他组权限去访问文件

        的时候,就需要使用newgrp命令更改自己当前的用户组来获得权限。


        同上面一样,组的密码也保存在另外一个加密过的文件中 /etc/gshadow文件中。

        root       :            :                       :     root

        组名称      密码       管理员帐号       组成员

      

    groupadd  :添加用户组;
    groupdel  :删除用户组;
    groupmod  :修改用户组信息
    groups    :显示用户所属的用户组


二.  用户的工作目录模板

       /etc/skel 是在Red Hat系列的Linux中的默认用户工作目录的模板。

      
  1. [root@localhost etc]# ls -al /etc/skel/
  2. total 36
  3. drwxr-xr-x. 4 root root 4096 Apr 27 01:12 .
  4. drwxr-xr-x. 124 root root 12288 Jul 4 21:07 ..
  5. -rw-r--r--. 1 root root 18 Jun 22 2010 .bash_logout
  6. -rw-r--r--. 1 root root 176 Jun 22 2010 .bash_profile
  7. -rw-r--r--. 1 root root 124 Jun 22 2010 .bashrc
  8. drwxr-xr-x. 2 root root 4096 Sep 29 2010 .gnome2
  9. drwxr-xr-x. 4 root root 4096 Apr 27 00:47 .mozilla

       当管理员需要手工创建用户工作目录的时候,可以直接将其复制。


三. 创建用户时的默认规则

        /etc/login.defs文件,就是创建用户时的规则模板。root用户可以更改它。
        比对着之前的/etc/passwd文件,可以很容易看出其中的含义:
  1. # *REQUIRED*
  2. # Directory where mailboxes reside, _or_ name of file, relative to the
  3. # home directory. If you _do_ define both, MAIL_DIR takes precedence.
  4. # QMAIL_DIR is for Qmail
  5. #
  6. #QMAIL_DIR Maildir
  7. MAIL_DIR /var/spool/mail
  8. #MAIL_FILE .mail

  9. # Password aging controls:
  10. #
  11. # PASS_MAX_DAYS Maximum number of days a password may be used.
  12. # PASS_MIN_DAYS Minimum number of days allowed between password changes.
  13. # PASS_MIN_LEN Minimum acceptable password length.
  14. # PASS_WARN_AGE Number of days warning given before a password expires.
  15. #
  16. PASS_MAX_DAYS 99999
  17. PASS_MIN_DAYS 0
  18. PASS_MIN_LEN 5
  19. PASS_WARN_AGE 7

  20. #
  21. # Min/max values for automatic uid selection in useradd
  22. #
  23. UID_MIN 500
  24. UID_MAX 60000

  25. #
  26. # Min/max values for automatic gid selection in groupadd
  27. #
  28. GID_MIN 500
  29. GID_MAX 60000

  30. #
  31. # If defined, this command is run when removing a user.
  32. # It should remove any at/cron/print jobs etc. owned by
  33. # the user to be removed (passed as the first argument).
  34. #
  35. #USERDEL_CMD /usr/sbin/userdel_local

  36. #
  37. # If useradd should create home directories for users by default
  38. # On RH systems, we do. This option is overridden with the -m flag on
  39. # useradd command line.
  40. #
  41. CREATE_HOME yes

  42. # The permission mask is initialized to this value. If not specified,
  43. # the permission mask will be initialized to 022.
  44. UMASK 077

  45. # This enables userdel to remove user groups if no members exist.
  46. #
  47. USERGROUPS_ENAB yes

  48. # Use SHA512 to encrypt password.
  49. ENCRYPT_METHOD SHA512

通过useradd 添加用户时的规则文件;/etc/default/useradd
  1. # useradd defaults file
  2. GROUP=100
  3. HOME=/home           ##在/home目录下创建目录
  4. INACTIVE=-1
  5. EXPIRE=
  6. SHELL=/bin/bash
  7. SKEL=/etc/skel       ##将/etc/skel目录中的内容作为创建用户工作目录的模板
  8. CREATE_MAIL_SPOOL=yes
阅读(1202) | 评论(0) | 转发(0) |
0

上一篇:VIM+Ctags

下一篇:void概述

给主人留下些什么吧!~~