Linux用戶和組的主要配置文件及其相關命令

Linux用戶和組的主要配置文件:

/etc/passwd:用戶及其屬性信息

/etc/shadow用戶密碼及其相關屬性

/etc/group組及其屬性信息

etc/gshadow組密碼及其相關屬性

/etc/passwd

1.用戶名:

2.密碼位:x

pwconv (默認) 將密碼映射到了/etc/shadow

pwunconv 將密碼保存到/etc/passwd中,刪除/etc/shadow文件

3.UID

每個用戶都有一個UID,UID0時,說明是管理員帳戶。

CentOS6 1-499為系統用戶,預留

CentOS7 1-999為系統用戶,預留

4.GID

主要組:每個有且僅有一個主要組,當用戶創建時,自動創建一個與用戶同名的組作為主要組。

輔助組:用戶可以有零個或多個輔助組。

5.描述位

chfn username 設置用戶的描述

Linux用戶和組的主要配置文件及其相關命令

getant passwd magedu 是截取passwd中有magedu的那一行

finger username (默認沒有安裝) 查看用戶的信息

Linux用戶和組的主要配置文件及其相關命令

      6.家目錄

usermod -d /home/magedunew magedu 修改家目錄

7.默認的登錄Shell

usermod -s /sbin/nologin magedu 修改shell

chsh -s /sbin/nologin magedu

magedu:x:500:500::/home/magedu:/bin/bash

用戶名  密碼 UID GID  描述位(可以為空) 家目錄  shell(用戶登錄獲取的)

 

/etc/shadow

getent shadow [username] 截取shadow中有usename的那一行 

1.username

2.密碼位: sha512 sha256 md5  $id$salt$password

   authconfig –passalgo=sha256 –update  改變密碼的算法為sha256

Linux用戶和組的主要配置文件及其相關命令

!!用戶被鎖定

usermod -L 鎖定用戶

usermod -U 解鎖用戶 -p password

3.密碼上一次的修改日期(從1970-1-1到修改的時間經過了多少天來表示)

4.密碼最小存活期

5.密碼最大存活期

6.密碼過期之前提前多少天提醒用戶(在正確登錄時)

7.密碼過期之后多少天帳戶過期(在正確登錄時)

8.帳戶過期時間(自1970-1-1到該天經過了多少天來表示)

9.保留位

 

        chage -l username 顯示帳戶的密碼信息

  -d 指定密碼的上次修改時間(yyyy-mm-dd)

  -d 0 則強制用戶下次登錄時必須修改密碼

  -E 指定賬戶的過期時間

  -I 密碼過期之后多少天帳戶過期

  -m 設置最小存活時間

  -M 設置最大存活時間

  -W 設置密碼過期前的提醒時間

chage username 交互式修改用戶的密碼策略

Shadow中用戶magedu的信息:

magedu:$6$o31piJ4ZyS6plnbG$TyznYJmxdGY3bPUxxrGimj2uiiW43nPA8tlbqIsfWxq5mrbB6Pjhyp9mPM5zoxAQb.AEPDelOhXyeH39l.7HP0:17367:0:99999:7:::

 

 

/etc/group

getent group [groupname]

1.groupname:組名

2.密碼位:x

3.gid:

CentOS6 1-499為系統組,預留

CentOS7 1-999為系統組,預留

4.組成員:將該組作為輔助組的成員列表。當成員先把該組當作輔助組,再轉成主要組時,不改變。當成員離開該組時,被刪除。

giduid 不一定一致 (我先創建一個組,此時該組就占用一個gid(比如1001)號,再創建一個用戶,該用戶就自動創建一個與用戶名同名的主要組,而該組的gid號就應為1002,uid號為1001.

 

/etc/gshadow

getent gshadow [groupname]

1.groupname:組名

2.密碼位:

gpasswd groupname設置組密碼

newgrp groupname(普通用戶)

當用戶不是該groupname的輔助組成員時,則需要輸入密碼,成功后臨時以主要組的身份加入該組。

當用戶是該groupname的輔助組成員時,無需輸入密碼,將臨時以主要組的身份加入該組,而其原有的主要組,臨時變為輔助組。

                       

Linux用戶和組的主要配置文件及其相關命令

查看app中的所有內容,我們可以看到目錄make的所屬組是admin,當前是在mage這個用戶下,他的主要組是magedu,所以不能進入make,而使用newgrp admin 后,就會臨時使magedu這個用戶的主要組變成admin,而原本的主要組magedu變成附加組,此時就能進入目錄make了。(當一個用戶想要進入一個文件時,先看這個文件的所屬組,若這個所屬組設有密碼時,當這個用戶的主要組或附加組和該文件的所屬組相同時,就能進入該文件,不相同時就不能進入該文件) newgrp groupname 進入臨時會話內容,不會記錄到文件中,此時id username  只能查看你登陸時的信息,不能查看修改之后的信息

     

  3.管理員:只能由root任命或撤銷,可以同時有多名,以,(逗號)為間隔。權利:可以修改組密碼,可以將用戶從該組(輔助組)當中添加或刪除。

任命 gpasswd -A xiaoqiao,luren admin 撤消所有管理員:gpasswd -A “” admin

gpasswd -a libai admin  往組中增加用戶

gpasswd -d libai admin  將用戶從組中刪除

gpasswd -r admin 刪除組密碼

gpasswd -R admin 限制非輔助組用戶可以通過newgrp admin獲取主組權限。當前密碼被刪除替換為!

gpasswd -M redhat,libai admin  設置輔助組的成員列表。

Linux用戶和組的主要配置文件及其相關命令

 

            groupmems 主要是對附加組的操作,加的是附加組

Linux用戶和組的主要配置文件及其相關命令

             groupmems -g admin -a libai (僅能一次加一個用戶到組中)

     groupmems -g admin -d libai  將指定成員從組中刪除

     groupmems -g admin -l 列出指定組的成員列表(輔助組) 等效

             getent group admin                   

             groupmems -p admin 消除指定組的所有成員。

     4. 組成員:將該組作為輔助組的成員列表。當成員先把該組當作輔助組,再轉成主要組時,不改變。當成員離開該組時,被刪除。

 

注意:groups username 查看指定用戶屬于哪些組

[root@centos7 etc]# groupmems -g administrator -l  查看administrator 組中的成員

change  libai  bajie  

[root@centos7 etc]# groups shaseng     查看大圣這個用戶屬于哪些組              

shaseng : shaseng yutu bajie

 

Linux用戶和組的主要配置文件及其相關命令

/etcpasswd , shadow , group, gshadow 各自的內容

 

useradd

-u uid username 創建用戶時指定uid(如不指定則Centos6:500-60000, Centos7: 1000-60000)

-o -u uid username 創建用戶時指定uid(可以與已存在用戶的uid相同)

-g groupname username 創建用戶時指定主組為某個已存在的組。(將不會再創建與用戶同名的組)

-c …  username  創建用戶時指定描述信息。

chfn … username

-d path username 指定用戶的家目錄(確保指定的家目錄所在的上級目錄要存在,且家目錄本身不能存在)(家目錄里的內容可以從/etc/skel中遞歸復制)

-s /sbin/nologin username 指定用戶的默認shell

-G group1[,group2] username 指定用戶的輔助組

-N username 設置用戶的主要組為默認組(users,uid=100)

-r username 創建系統用戶

 

/etc/default/useradd

/etc/login.defs

 

usermod

usermod -u newuid username 修改用戶的UID

-o -u newuid username 修改用戶的uid(可以與已存在用戶的uid相同)     -aG 加組名,可以追加輔助組而不用覆蓋之前的組

-G “” username  usermod -G primarygroup username 清空用戶所有的輔助組

-g groupname username 修改用戶的主組

-s /sbin/nologin username 修改用戶的默認shell

-c …  username 修改用戶時指定描述信息。

chfn … username

-d /…/path username 修改用戶的家目錄(不會創建,只修改/etc/passwd當中的家目錄信息)

-m -d /…/path username 修改用戶的家目錄信息,并將家目錄移動到目的目錄并改名。

-l newname oldname 修改用戶名

-L 給用戶/etc/shadow中的密碼位加!使用戶被鎖定

-U !拿掉。

-e yyyy-mm-dd 設置一個帳戶過期時間

-f days 指定密碼過期之后多少天帳戶過期

 

vipw = vim /etc/passwd

vipw -s = vim /etc/shadow

vigr = vim /etc/group

vigr -s = vim /etc/gshadow

pwck 檢查/etc/passwd /etc/shadow

grpck 檢查/etc/group /etc/gshadow

練習:

 1、創建用戶gentoo,附加組為binroot,默認shell

/bin/csh,注釋信息為“Gentoo Distribution”

useradd -G bin,root -c “Gentoo Distribution”  -s /bin/csh gentoo

2、創建下面的用戶、組和組成員關系

名字為admins 的組

用戶natasha,使用admins 作為附屬組

用戶harry,也使用admins 作為附屬組

用戶sarah,不可交互登錄系統,且不是admins 的成員,

natasha,harry,sarah密碼都是centos

groupadd admins

useradd -G admins natasha

useradd -G admins harry

useradd -s /sbin/nologin sarah

passwd natasha

passwd harry

passwd sarah

 

userdel [-r] username

刪除用戶時,加上-r連同其家目錄,mail一同刪除

  

id

id username

id -u 用戶的uid

id -un 用戶名

id -g  主要組的gid

id -gn 主要組的名字

Linux用戶和組的主要配置文件及其相關命令

 

 su switch user

su username 非登錄式切換,即不會讀取目標用戶的配置文件,不改變當前工作目錄

su – username 登錄式切換,會讀取目標用戶的配置文件,切換至家目錄,完全切換

-c ‘command’ 以用戶的身份執行命令而不登錄

Linux用戶和組的主要配置文件及其相關命令 

 

passwd

     usename 更改用戶的密碼 僅root用戶才有權限修改其他用戶的密碼

-l:鎖定指定用戶

-u:解鎖指定用戶

-e:強制用戶下次登錄修改密碼

-n mindays: 指定最短使用期限

-x maxdays:最大使用期限

-w warndays:提前多少天開始警告

-i inactivedays:非活動期限

–stdin:從標準輸入接收用戶密碼(可以批量創建用戶的密碼)

echo “PASSWORD” | passwd –stdin USERNAME

Linux用戶和組的主要配置文件及其相關命令

 

 

groupadd -g gid groupname 創建指定gid的組

Linux用戶和組的主要配置文件及其相關命令

 -r groupname 創建系統組

 

groupmod

-n newgrpname oldgrpname  修改組名

Linux用戶和組的主要配置文件及其相關命令

-g newgid groupname 修改gid

Linux用戶和組的主要配置文件及其相關命令

 

groupdel groupname 刪除組

 

 

 

 

 

原創文章,作者:fuming,如若轉載,請注明出處:http://www.www58058.com/82292

(0)
fumingfuming
上一篇 2017-07-22
下一篇 2017-07-22

相關推薦

  • 第一周作業

    # 1.計算機的基本組成和功能: – **存儲器**:  實現記憶功能的部件用來存放計算程序及參與運算的各種數據 – **運算器**:  負責數據的算術運算和邏輯運算即數據的加工處理 – **控制器**:  負責對程序規定的控制信息進行分析,控制并協調輸入,輸出操作或內存訪問 – **輸入設備**: 實現計算程…

    Linux干貨 2016-12-04
  • 馬哥教育網絡班21期+第六周博客作業

    1、復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加#; # cp -a /etc/rc.d/rc.sysinit /tmp/ # ls /tmp/ | grep rc.sysin…

    Linux干貨 2016-08-15
  • linux下NTP服務

    linnux NTP

    2017-10-18
  • bash特性之基礎

    bash shell 命令歷史history 環境變量: HISTSIZE :命令歷史記錄的條數 HISTFILE :~/.bash_history HISTFILESIZE: 顯示環境變量:echo    環境變量的修改:export  history history [-c] [-d&…

    Linux干貨 2016-11-22
  • shell腳本編寫-1練習題

    1、編寫腳本/root/bin/systeminfo.sh,顯示當前主機系統信息,包括主機名,IPv4地址,操作系統版本,內核版本,CPU型號,內存大小,硬盤大小 #!/bin/bash echo “the hostname is:`hostname`” echo “the ip address is:`ifconfig | sed –n ‘2p’ |sed…

    Linux干貨 2016-08-15
  • 第三周博客作業

    who useradd usermod groupadd

    Linux干貨 2017-12-17
欧美性久久久久