用戶和組的管理

前言

服務器最主要的工作是提供可靠的服務,提供服務就必須對外開放自己的網絡,可靠就需要一定的機制來保證了。Linux中有一個3A的機制,首先是認證,就是我們經常聽到的一句話,怎么證明你就是你;其次是授權,管理一個服務器,每個管理員都有自己的職責,那么我們就只分配對應的權限給特定的人,這樣就可以明確事故的責任,從源頭甩鍋;最后是審計,總有一些黑客可以通過各種手段侵入我們的服務器,怎么保證我們所分配的權限沒有被越權,這里我們可以通過記錄管理員的操作,以保證權限的正確利用。

1組和用戶

既然要分配權限,就要確定分配權限的對象。先對用戶進行分門別類的劃分一下。

超級管理員,它擁有這個服務器的全部權限,掌管一切,就是服務器的上帝,它具有自殺的權限,他可以讓一切結束。其它用戶的權限都在它的管理范圍內。類似公司的老板,在linux中被定義為root。

一般用戶,具有一定的特殊權限。相當于員工。在linux被定義為普通賬號,可以登錄系統。有些大公司還有一些管理員,具有服務器大部分權利,有些管理員也可以控制著服務器自殺。類似公司的管理層,其本質還是員工,只不過root給他授予了更多的權限。

世界如此復雜總不能每個人都設定一個權限吧,號我們給用戶分門別類,把類似的用戶組織到一起分到一個組里,給這個組一個權限,這樣可以大大減少我們分配權限的難度。Linux是很多開源人士攢出來的一個系統,每個使用linux的人都是人中龍鳳。那好linux就設置了一種機制,默認在每個用戶創建的時候,給用戶創建一個與其同名的組,并且把這位人中龍鳳定義為這個組的管理員,他可以把其他人加入自己的組中,其實就是為了方便大家聯合開發和使用系統。

2用戶和組的配置文件

在思想綱領的引導下,我們怎么實現用戶和組的管理。Linux把創建的組和用戶的參數放在多個文件中,這些文件的內容都有什么?

了解這些配置文件前,我們必須先了解linux怎么實現3A機制的。才可以更好的了解這些配置文件的作用。

1)        首先用戶認證,linux怎么實現認證你就是你的,賬號密碼。賬號放置在/etc/passwd文件中,密碼放置在/etc/shadow文件中。

當一個用戶登錄時,系統拿到用戶名和密碼后首先遍歷/etc/passwd文件,找到文件中對應用戶的信息后,查看用戶信息,賬號沒過期接著查/etc/shadow文件,密碼正確就可以登錄了。

/etc/passwd文件的格式,以冒號為分隔符

第一個字段是用戶名

第二個字段是密碼,現在密碼不放在這個位置了,使用x代替

第三個字段是uid

第四個字段是gid

第五個字段是用戶注釋信息,可以沒有

第六個字段是用戶家目錄

第七個字段是用戶家目錄

示例tom:x:500:500::/home/tom:/bin/bash

/etc/shadow的文件格式,同樣是以冒號為分隔符

第一個字段是用戶名

第二個字段是密碼,這里的密碼是經過加密過的密文,加密算法采用的是sha512。密碼前面有!或??!,代表賬號被鎖定,此時這個賬號不能登錄系統。

第三個字段是用戶上一次更改密碼日期

第四個字段是用戶密碼最短使用時間,也就是幾天內不能連續更改密碼

第五個字段是密碼有效時間

第六個字段是密碼警告時間,提示用戶更改密碼

第七個字段是過期時間,用戶在過期時間內沒有更改密碼,賬號就會被鎖定,密碼字段最前面就會增加?。?,只有管理員解鎖才可以使用

第八個字段是賬號到期時間

/etc/group

第一個字段是用組名

第二個字段是密碼

第三個字段是gid

第四個字段是組內的其它用戶

/etc/gshadow

第一個字段是組名

第二個字段是密碼,與shadow一樣!和?。〈碣~號鎖定

第三個字段是組內管理者

第四個字段是組內的其它用戶

2)        權限

在下一篇學習

3)        審計

在下一篇學習

3用戶管理命令

1)        Useradd主要是用來添加用戶的命令(可以使用su切換用戶,會讀取用戶配置文件),命令格式如下

Useradd [option] username

-u #             指定uid,使用指定的uidid命令查看用戶id信息)

-o          不檢查uid的唯一性

-g #             指定gid

-G         指定附加組,附加組為多個時用,分割多個組

-N         不創建與用戶同名組,并使用users組做家目錄

-d          指定家目錄

-s          指定shell類型

-c          指定用戶附加信息

-r           創建系統組,和普通組沒有太大的區別,centos6的系統用戶小于500,7小于1000,這個只不過是約定俗成的規定,沒有硬性要求

2)        Usermod用來更改用戶信息(用戶信息可以使用finger username命令查看),命令格式如下

Usermod [option] username

-u #             更改uid,使用指定的uid

-g #             更改gid

-G         更改附加組,附加組為多個時用,分割多個組。直接填附加組的話,原本的附加組會被覆蓋。

-a          添加,一般與-G一起使用,給用戶添加附加組。

-e YYYY-MM-DD           指明過期日期

-s          更改shell類型

-c          更改用戶附加信息

-d          更改家目錄但不移動原家目錄內的文件,使用-m移動原家目錄文件

-l           更改名字

-L          鎖定

-U         解鎖

3)        Userdel用來刪除用戶

-r            刪除用戶的同時刪除該用戶的家目錄

4)        Passwd用來更改用戶密碼,直接使用更改當前用戶密碼

Passwd username更改指定用戶密碼

-l            鎖定用戶

-u           解鎖

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

-n           指定最短使用時間

-m          指定最大使用時間

-w          指定警告時間

-i            指定非活動時間

–stdin          從標準輸入接受密碼

5)        chage更簡單的修改的時間的命令

直接輸入chage進入提示模式

-m          最小使用時間

-M          最大使用時間

-W         警告時間

-I            過期時間

-E           停用時間

-d           修改時間

4組管理命令

1)        Groupadd添加組

-g           指定組gid

-r            創建系統組

2)        Groupmod更改組信息

-n           更改組名

-g           更改gid

3)        Groupdel刪除組

4)        Gpasswd給組設置密碼

-a           添加user進組

-d           刪除組內user

-A           指定user具有管理權限

5)        Newgrp         把某個用戶的組臨時切換到其它組,創建文件時組是臨時組。

總結

到生產環境中,我們將不會擁有root權限,我們手頭上的賬號可能只具有某個目錄的管理權限,那時我們只能在針尖上跳舞。當我們管理團隊的時候,責任的劃分將與用戶權限密切相關,管理好手下的人,先從用戶權限入手總不會錯。

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

(0)
mortimer2015mortimer2015
上一篇 2016-10-22 20:12
下一篇 2016-10-22 22:30

相關推薦

  • 查找、壓縮 隨記

     查找模塊 1. locate : 非實時查找(數據庫查找)     實時查找: find locate 查詢是建立在系統上預建的文件索引數據庫 /var/lib/mlocate/mlocate.db 索引的構建是在系統較為空閑時自動進行(周期性任務); 管理員手動更新數據庫(updatedb) 索引構建過程需要遍歷整個根文件系…

    Linux干貨 2016-08-15
  • 關于大型網站技術演進的思考(十四)–網站靜態化處理—前后端分離—上(6)

    原文出處: 夏天的森林  前文講到了CSI技術,這就說明網站靜態化技術的講述已經推進到了瀏覽器端了即真正到了web前端的范疇了,而時下web前端技術的前沿之一就是前后端 分離技術了,那么在這里網站靜態化技術和前后端分離技術產生了交集,所以今天我將討論下前后端分離技術,前后端分離技術討論完后,下一篇文章我將會以網站 靜態化技術的角度回過頭來…

    Linux干貨 2015-02-26
  • Linux下的LVM管理命令

    一. 何為LVM?     Logical Volume Manager的縮寫,它可以把多個分區、硬盤甚至RAID組合成一個存儲設備來使用,并可以擴展或縮減空間。LVM有三層組成組成:底層的PV,中間的VG,上層的LV,如圖所示         &n…

    Linux干貨 2015-12-06
  • N22-℡浮生.若夢 ╮第六周作業

    1、復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加#; cp /etc/rc.sysinit /tmp/rc.sysinit vim/tmp/rc.sysinit :%s@^[[:space:]]\+@#&@g 2、復制/boot/grub…

    Linux干貨 2016-10-29
  • N25-第二周總結

    linux bassic The second week of blogging 一、linux中的文件,及文件操作管理命令 1. 文件概念 存儲空間存儲的一段流式數據,對數據可以做到按名存取。 linux中的文件具有的特點是:可通過操作系統或者程序對外提供信息,也能對內輸入信息,可以被創建,刪除。linux中,文件有特別重要的意義,他們為操作系統和設備提供…

    Linux干貨 2016-12-11
  • nginx學習筆記

    深入理解Nginx 一、Nginx是什么? 二、為什么選擇Linux ? 三、Nginx生成的文件有哪些? 四、Nginx的配置詳解? 五、模塊功能詳解 六、虛擬主機配置詳解?                 一、Nginx是什么? Nginx(engine X)是一個高性能的H…

    Linux干貨 2017-03-15
欧美性久久久久