用戶和組相關配置文件

1. /etc/passwd文件詳解


輸入vi /etc/passwd 可以查看此文件的內容

[root@localhost ~]# vi /etc/passwdroot:x:0:0:root:/root:/bin/bash
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

每行保存了一個用戶的詳細信息,查看此服務器有多少賬號:

[root@localhost~]> cat /etc/passwd | wc -l38

則代表本機一共有38個賬號

Passwd文件由許多條記錄組成,每條記錄占一行,記錄了一個用戶帳號的所有信息。每條記錄由7個字段組成,字段間用冒號“:”隔開,其格式如下:

username:password:User ID:Group ID:comment:home directory:shell

字段含義:

  • 1.username
    它唯一地標識了一個用戶帳號,用戶在登錄時使用的就是它。

  • 2.password
    加密之后的用戶密碼

  • 3.userId
    用戶id。0是系統管理員賬號,1-499是系統保留賬號,500+即一般賬號(centos6,cenos 7 為1000+)

  • 4.groupId
    用戶組id

  • 5.comment
    用戶相關注釋

  • 6.home directory
    用戶家目錄

  • 7.login command
    用戶登錄自動執行腳本。指定為系統的sbin/nologin時,用戶無法登陸

關于系統賬號:
系統中還有一些默認的帳號(1-500),如daemon、bin等。這些帳號有著特殊的用途,一般用于進行系統管理。這些帳號的口令大部分用(x)號表示,代表它們不能在登錄時使用。


/etc/shadow文件詳解

這個文件單獨保存用戶的密碼相關信息. 文件的大致形式如此:

wyf:$6$Jhodyovx$wgT7....Lf0:0:3:10:3:0::
ntp:!!:17092::::::
mysql:!!:17094::::::
natasha:!!:17095:0:99999:7:::
harry:!!:17095:0:99999:7:::

以:分割,有九個欄位:

  1. 用戶名

  2. 密碼
    用戶的真正密碼保存處。當這個欄位為‘*’或是'!'表示這個用戶不會被用來登陸,一般來說,‘*’代表系統服務用戶

  3. 最近更改密碼的日期
    這個欄位記錄了‘更動密碼的那一天’的日期。以 1970 年 1 月 1 日作為起始到如今的天數。

  4. 密碼不可被變動的天數
    如果為0,表示密碼隨時可以更動的意思。如果設定為 20 天的話,那么當你設定了密碼之后, 20 天之內都無法改變這個密碼。

  5. 密碼需要重新變更的天數
    必須要在這個時間之內重新設定你的密碼,否則這個帳號將會暫時失效。如果是99999,密碼則不需要重新變更。

  6. 密碼需要變更期限前的警告期限

  7. .密碼過期的恕限時間
    當密碼失效后,你還可以用這個密碼在 n 天內進行登入。如果過了這個期限還是沒有重新更改密碼,則賬號失效,無法登入。

  8. 帳號失效日期
    這個欄位表示: 這個帳號在此欄位規定的日期之后,將無法再使用。 這個欄位會被使用通常應該是在‘收費服務’的系統中, 你可以規定一個日期讓該帳號不能再使用

  9. 保留
    最后一個欄位是保留的,看以后有沒有新功能加入。

舉個離子:

dmtsai:$1$8zdAKdfC$XDa8eSus2I7nQL7UjRsIy/:13025:5:60:7:2:13125:

       1.最近一次更動密碼的日期是 2005/08/30 (13025);

       2.能夠修改密碼的時間是 5 天以后

       3. 使用者必須要在 2005/09/04 到 2005/10/29 之間的 60 天限制內去修改自己的密碼,若 2005/10/29 之后還是沒有變更密碼時,該帳號就會宣告失效;

       4.如果使用者一直沒有更改密碼,那么在 2005/10/29 之前的 7 天內,系統會警告 dmtsai 應該修改密碼的相關資訊

       5.如果該帳號一直到 2005/10/29 都沒有更改密碼,由于還有兩天的恕限時間,因此, dmtsai 還是可以在 2005/10/31 以前繼續登入

       6.如果使用者在 2005/10/29 以前變更過密碼,那么那個 13025 的日期就會跟著改變,因此, 所有的限制日期也會跟著相對變動

       7.無論使用者如何動作,到了 13125 ,大約是 2005/12/8 左右,該帳號就失效了


/etc/group文件詳解


Linux /etc/group文件與/etc/passwd和/etc/shadow文件都是有關于系統管理員對用戶和用戶組管理時相關的文件。linux /etc/group文件是有關于系統管理員對用戶和用戶組管理的文件,linux用戶組的所有信息都存放在/etc/group文件中。

將用戶分組是Linux系統中對用戶進行管理及控制訪問權限的一種手段。每個用戶都屬于某個用戶組;一個組中可以有多個用戶,一個用戶也可以屬于不 同的組。當一個用戶同時是多個組中的成員時,在/etc/passwd文件中記錄的是用戶所屬的主組,也就是登錄時所屬的默認組,而其他組稱為附加組。

用戶組的所有信息都存放在/etc/group文件中。此文件的格式是由冒號(:)隔開若干個字段,這些字段具體如下:

  • 組名
    祖名不能重復

  • 口令
    口令字段存放的是用戶組加密后的口令字。一般Linux系統的用戶組都沒有口令,即這個字段一般為空,或者是*。

  • 組標識號
    組標識號與用戶標識號類似,也是一個整數,被系統內部用來標識組。別稱GID

  • 組內用戶列表
    是屬于這個組的所有用戶的列表,不同用戶之間用逗號(,)分隔。這個用戶組可能是用戶的主組,也可能是附加組

文件內容:

[root@localhost test6]# cat /etc/grouproot:x:0:root,linuxsir
bin:x:1:root,bin,daemon
daemon:x:2:root,bin,daemon
sys:x:3:root,bin

/etc/group文件詳解


/etc/gshadow是/etc/group的加密資訊文件,比如用戶組(Group)管理密碼就是存放在這個文件。
/etc/gshadow和/etc/group是互補的兩個文件;對于大型服務器,針對很多用戶和組,定制一些關系結構比較復雜的權限模型,設置用戶組密碼是極有必要的。
比如我們不想讓一些非用戶組成員永久擁有用戶組的權限和特性,這時我們可以通過密碼驗證的方式來讓某些用戶臨時擁有一些用戶組特性,這時就要用到用戶組密碼。

[root@localhost~]> cat /etc/gshadow
root:::harry,root
bin:::bin,daemon
daemon:::bin,daemon
sys:::bin,adm

組名:口令:組管理者:組內用戶列表

  1. 組名

  2. 口令:用戶組密碼,這個段可以是空的或!,如果是空的或有!,表示沒有密碼

  3. 組管理者:這個字段也可為空,如果有多個用戶組管理者,用,號分割

  4. 組內用戶列表:如果有多個成員,用,號分割 ;

用戶組之間的切換,應該用 newgrp ,這個有點象用戶之間切換的su ;我先舉個例子:

[beinan@localhost ~]$ newgrp linuxsir
[beinan@localhost ~]$ mkdir lingroup
[beinan@localhost ~]$ ls -ld lingroup/
drwxr-xr-x 2 beinan linuxsir 4096 10月 18 15:56 lingroup/
[beinan@localhost ~]$ newgrp beinan
[beinan@localhost ~]$ mkdir beinangrouptest
[beinan@localhost ~]$ ls -ld beinangrouptest
drwxrwxr-x 2 beinan beinan 4096 10月 18 15:56 beinangrouptest

可以看到,切換分組之后,創建出來的文件所屬組發生了變化。

/etc/group文件詳解


在/etc/default/useradd文件為設置添加的用戶規則文件

[root@localhost~]> cat /etc/default/useradd# useradd defaults file#用戶組idGROUP=100#用戶家目錄路徑HOME=/home#是否啟用帳號過期停權,-1表示不啟用INACTIVE=-1#帳號終止日期,不設置表示不啟用。EXPIRE=#所用SHELL的類型SHELL=/bin/bash#默認添加用戶的目錄默認文件存放位置。也就是說,當用戶用useradd添加用戶時,用戶主目錄下的文件都是從這個目錄中復制的。SKEL=/etc/skel#是否創建用戶郵件緩沖,yes表示創建CREATE_MAIL_SPOOL=yes

/etc/gshadow文件詳解

etc/login.defs 是設置用戶帳號限制的文件。該文件里的配置對root用戶無效。

如果/etc/shadow文件里有相同的選項,則以/etc/shadow里的設置為準,也就是說/etc/shadow的配置優先級高于/etc/login.defs

# *REQUIRED* required
#  Directory where mailboxes reside, _or_ name of file, relative to the
#   home directory.  If you _do_ define both, MAIL_DIR takes precedence.
#   QMAIL_DIR is for Qmail
#
#QMAIL_DIR      Maildir
MAIL_DIR        /var/spool/mail
#創建用戶時,要在目錄/var/spool/mail中創建一個用戶mail文件
#MAIL_FILE      .mail

# Password aging controls:
#
#       PASS_MAX_DAYS   Maximum number of days a password may be used.
#       PASS_MIN_DAYS   Minimum number of days allowed between password changes.
#       PASS_MIN_LEN    Minimum acceptable password length.
#       PASS_WARN_AGE   Number of days warning given before a password expires.
#
PASS_MAX_DAYS   99999
#密碼最大有效期
PASS_MIN_DAYS   0
#兩次修改密碼的最小間隔時間
PASS_MIN_LEN    5
#密碼最小長度,對于root無效
PASS_WARN_AGE   7
#密碼過期前多少天開始提示
#
# Min/max values for automatic uid selection in useradd
#創建用戶時不指定UID的話自動UID的范圍
UID_MIN                   500
#用戶ID的最小值
UID_MAX                 60000
#用戶ID的最大值
#
# Min/max values for automatic gid selection in groupadd
#自動組ID的范圍
GID_MIN                   500
#組ID的最小值
GID_MAX                 60000
#組ID的最大值

#
# If defined, this command is run when removing a user.
# It should remove any at/cron/print jobs etc. owned by
# the user to be removed (passed as the first argument).
#
#USERDEL_CMD    /usr/sbin/userdel_local
#當刪除用戶的時候執行的腳本

#
# If useradd should create home directories for users by default
# On RH systems, we do. This option is overridden with the -m flag on
# useradd command line.
#
CREATE_HOME     yes
#使用useradd的時候是夠創建用戶目錄

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

# This enables userdel to remove user groups if no members exist.
#
USERGROUPS_ENAB yes
#用MD5加密密碼


原創文章,作者:21期王逸凡,如若轉載,請注明出處:http://www.www58058.com/53727

(0)
21期王逸凡21期王逸凡
【聽說要寫一篇文章,我覺得標題比較長的人一定特別帥?!?/span>
上一篇 2016-10-23 22:08
下一篇 2016-10-23 23:07

相關推薦

  • 第二周

    第二周 1. Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 cp 復制文件和目錄語法格式:cp [OPTION]… [-T] SOURCE DESTcp [OPTION]… SOURCE… DIRECTORYcp [OPTION]… -t DIRECTORY SOURCE&#8230…

    Linux干貨 2017-07-21
  • 如何實現本地yum源的共享

    上一篇關于Linux yum客戶端的配置的博客,介紹了如何通過修改本機yum配置文件來訪問網絡或者本地的yun sever, 本文就來介紹一下,如何把我們的本地RPM包像yum sever一樣通過http或ftp網絡方式共享出去。 一、準備好發行版光盤,包,元數據    CentOS-6.8-x86_64-bin-DVD1.iso二、準備…

    2017-06-17
  • 內核參數修改 內核編譯 第14天

    Linux內核:單內核,模塊化 內核的某些模塊 編譯進內核本體 [*] 編譯成內核模塊 [M] 不選擇使用     [ ] 內核的組成部分 /boot/vmlinuz-VERSION /lib/modules/VERSION/ *.ko 模塊間有可能有依賴關系 內核模塊管理 lsmod:顯…

    Linux干貨 2016-01-18
  • Linux網站架構系列之Mysql—-部署篇

    原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://nolinux.blog.51cto.com/4824967/1321079   MySQL是一個關系型數據庫管理系統,由瑞典MySQL AB公司開發,目前屬于Oracle公司。MySQL所使用的SQL語言是用于…

    Linux干貨 2015-04-01
  • 正則表達式30分鐘入門教程

    來園子之前寫的一篇正則表達式教程,部分翻譯自codeproject的The 30 Minute Regex Tutorial。 由于評論里有過長的URL,所以本頁排版比較混亂,推薦你到原處查看,看完了如果有問題,再到這里來提出. 一些要說的話: 如果你沒有正則表達式的基礎,請跟著教程“一步步來”。請不要大概地掃兩眼就說看不懂——以這種態度我寫成什么樣你也看不…

    2015-03-12
  • Linux干貨 2017-12-02
欧美性久久久久