1. 程式人生 > >Linux下/etc/passwd和/etc/shadow檔案詳解

Linux下/etc/passwd和/etc/shadow檔案詳解

Linux系統中,所有使用者(包括系統管理員)的賬號和密碼都可以在/etc/passwd和/etc/shadow這兩個檔案中找到,(使用者和密碼就放在檔案中,不怕被其他人看的或者修改嗎?/etc/passwd只有系統管理員才可以修改的,其他使用者可以檢視,/etc/shadow其他使用者看不了)

[[email protected] Python-3.5.0]# vim /etc/shadow
[[email protected] Python-3.5.0]# ls -al /etc/passwd /etc/shadow
-rw-r--r--. 1 root root 2250 12月 14 00:17 /etc/passwd
----------. 1 root root 1263 12月 14 00:17 /etc/shadow

上面分別列出了passwd和shadow檔案的訪問許可權資訊,其中passwd儲存的是賬號,shadow儲存的是賬號的密碼等資訊,下面就具體看看這兩個檔案的內容:

/etc/passwd

通過指令 vi /etc/passwd  開啟passwd檔案來看看,下面列舉部分內容如下:

root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh

上面每一行都代表一個使用者,每一行又通過[:]分為七個部分。

  1、賬號名稱
  2、原先用來儲存密碼的,現在密碼都放在/etc/shadow中,所以這裡顯示x
  3、UID,也就是使用者ID。預設的系統管理員的UID為0,我們新增使用者的時候最好使用1000以上的UID,1-1000範圍的UID最好保留給系統用。
  4、GID,也就是群組ID
  5、關於賬號的一些說明資訊(暫時可以忽略)
  6、賬號的家目錄,家目錄就是你登陸系統後預設的那個目錄
  7、賬號使用的shell

/etc/shadow

 vi /etc/shadow

root:!:15324:0:99999:7:::
daemon:*:15259:0:99999:7:::
bin:*:15259:0:99999:7:::
letuknowit:$
1$cPf/cIvr$sCws95uSip2ljTK052DDB.:15400:5:60:7:2:15490:

這裡也是由[:]來進行分割,但是這裡一共分出來九個欄目,每個欄目的解釋如下:

  1、賬戶名稱(密碼需要與賬戶對應的嘛)
  2、加密後的密碼(總不能學CSDN放明文密碼,是吧),如果這一欄的第一個字元為!或者*的話,說明這是一個不能登入的賬戶,從上面可以看出,ubuntu預設的就不啟用root賬戶。
  3、最近改動密碼的日期(不是日期嗎,咋是一堆數字,別急,這個是從1970年1月1日算起的總的天數)。那怎麼才能知道今天距1970年1月1日有多少天呢?很簡單,你改下密碼,然後看下這個欄目中的數字是多少就可以了!
  4、密碼不可被變更的天數:設定了這個值,則表示從變更密碼的日期算起,多少天內無法再次修改密碼,如果是0的話,則沒有限制
  5、密碼需要重新變更的天數:密碼經常更換才能保證安全,為了提醒某些經常不更換密碼的使用者,可以設定一個天數,強制讓使用者更換密碼,也就是說該使用者的密碼會在多少天后過期,如果為99999則沒有限制
  6、密碼過期預警天數:如果在5中設定了密碼需要重新變更的天數,則會在密碼過期的前多少天進行提醒,提示使用者其密碼將在多少天后過期
  7、密碼過期的寬恕時間:如果在5中設定的日期過後,使用者仍然沒有修改密碼,則該使用者還可以繼續使用的天數
  8、賬號失效日期,過了這個日期賬號就不能用了
  9、保留的

以上面最後使用者letuknowit為例(15400對應的日期為2012年3月1日),其保護如下資訊:

  3、使用者letuknowit最近一次修改密碼的日期是2012年3月1日,
  4、在2012年3月6日之前不能再改動密碼了,
  5、在2012-3-1到2012-4-29期間letuknowit需要更改密碼,
  6、在2012-4-29之前的7天,letuknowit登陸系統的時候,系統會提示letuknowit其密碼即將過期,
  7、如果letuknowit一直到2012-4-29都沒有修改密碼,則其仍然可以繼續使用該賬戶2天,2天后該賬戶將不可用
  8、無論如何,到了2012年5月29日,該賬號都將失效

相關推薦

Linux/etc/passwd/etc/shadow檔案

Linux系統中,所有使用者(包括系統管理員)的賬號和密碼都可以在/etc/passwd和/etc/shadow這兩個檔案中找到,(使用者和密碼就放在檔案中,不怕被其他人看的或者修改嗎?/etc/passwd只有系統管理員才可以修改的,其他使用者可以檢視,/etc/shad

菜鳥學Linux之:用戶賬戶管理的/etc/passwd/etc/shadow

Linux、/etc/passwd用戶賬戶管理主要有如下幾個配置文件:/etc/passwd、/etc/shadow、/etc/group和用戶郵箱/var/spool/mail,今天著重要說明一下/etc/passwd和/etc/shadow兩個配置文件/etc/passwd:記錄了Linux系統上所有的帳

Linux賬號密碼檔案 /etc/passwd/etc/shadow

====================================================== Linux系統中,所有使用者(包括系統管理員)的賬號和密碼都可以在/etc/passwd和/etc/shadow這兩個檔案中找到,(使用者和密碼就放在檔案中,不怕被其他人看的或者修改嗎?/etc/p

關於MD5 32位16位的區別以及linux /etc/shadow 檔案

有人說md5,128位,32位,16位,到底md5多長? md5的長度,預設為128bit,也就是128個0和1的二進位制串。 這樣表達是很不友好的。 所以將二進位制轉成了16進位制,每4個bit表示一個16進位制, 所以128/4 = 32 換成16進製表示後

Linux中/etc/passwd /etc/shadows

賬號 nologin var game tcs 發布 文件中 用戶組 8K linux操作系統上的用戶如果需要登錄主機,當其輸入用戶名和密碼之後: 首先在/etc/passwd文件中查找是否有你的賬號,如果沒有無法登錄,如果有的話將該用戶的UID和GID讀出來,此外將此用

認識/etc/passwd/etc/shadow

oot LG bash 算法 pass /bin/bash 用戶名 AD 限制 認識/etc/passwd和/etc/shadow============================== /etc/passwd[root@aminglinux ~]# head -n

/etc/passwd/etc/group文件

color 超級用戶 sbin list UC mon usb use 表示 用戶管理 想要知道, 系統中有哪些用戶, 可以查看這個文件: /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sb

Linux Redis叢集安裝部署及使用(線上離線兩種安裝+相關錯誤解決方案)

一、應用場景介紹   本文主要是介紹Redis叢集在Linux環境下的安裝講解,其中主要包括在聯網的Linux環境和離線的Linux環境下是如何安裝的。因為大多數時候,公司的生產環境是在內網環境下,無外網,伺服器處於離線狀態(最近公司要上線專案,就是無外網環境的Linux,被離線安裝坑慘了,走了很多彎路,說多

Linux(CentOS)開機自動掛載與fstab檔案

摘要: Linux中我們分完區,並做好檔案系統格式化,掛載(mount)之後才可以使用磁碟裝置。/etc/fstab是用來存放檔案系統的靜態資訊的檔案, 當系統啟動的時候,系統會自動地從這個檔案讀取資訊,並且會自動將此檔案中指定的檔案系統掛載到指定的目錄。 Linux中我們分完區,並做

LinuxMysql的安裝及執行(

1、組及使用者建立: sudo groupadd mysql #新增組 sudo useradd -r -g mysql mysql #新增所建立組下的使用者 2、官方下載網址 wget http://downloads.mysql.com/archives/get/file/mysql-5

Linux驅動靜態編譯動態編譯方法

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Linux的crontab定時執行任務命令

   crontab命令常見於Unix和類Unix的作業系統之中,用於設定週期性被執行的指令。該命令從標準輸入裝置讀取指令,並將其存放於“crontab”檔案中,以供之後讀取和執行。該詞來源於希臘語 chronos(χρνο),原意是時間。通常,crontab儲存的指令被守護

Linux Redis叢集安裝部署及使用

一、應用場景介紹   本文主要是介紹Redis叢集在Linux環境下的安裝講解,其中主要包括在聯網的Linux環境和離線的Linux環境下是如何安裝的。因為大多數時候,公司的生產環境是在內網環境下,無外網,伺服器處於離線狀態(最近公司要上線專案,就是無外網環境的Linu

Linux普通使用者授予root許可權方法

宣告:此方法本人親自試驗過。 紅顏色位Linux命令,綠色為新增的內容 首先,建立一個使用者,沒有密碼 adduser work 其次,用root使用者,修改一下檔案  /etc/sudoers 檔案,找到下面一行,在root下面新增一行,如下所示: 命令是:vim

Hibernate之對映檔案主配置檔案

一、對映配置檔案(xxx.hbm.xml) <hibernate-mapping> <!-- 配置表與實體對映關係 --> <class name="com.mark.domain.Customer" table="cst_customer"&

linux的網絡卡eth0配置

第一步:啟用網絡卡   Linux系統裝好後預設的網絡卡是eth0,用下面的命令將這塊網絡卡啟用。 # ifconfig eth0 up 第二步:設定網絡卡進入系統時啟動      想要每次開機就可以自動獲取IP地址上網,就要設定網路服務在系統啟動時也啟動。Lin

Linux筆記(66)——nginx日誌檔案

                       

Linux的cron定時執行任務命令

部落格引用處(以下內容在原有部落格基礎上進行補充或更改,謝謝這些大牛的部落格指導): Linux下的crontab定時執行任務命令詳解 在LINUX中,週期執行的任務一般由cron這個守護程序來處理[ps -ef|grep cron]。cron讀取一個或多個配置檔案,這些配置檔案中包含了

Linux的計劃任務:crontab命令

前一天學習了 at 命令是針對僅執行一次的任務,迴圈執行的例行性計劃任務,linux系統則是由 cron (crond) 這個系統服務來控制的。Linux 系統上面原本就有非常多的計劃性工作,因此這個系統服務是預設啟動的。另外, 由於使用者自己也可以設定計劃任務,所以, Linux 系統也提供了使用者控制

Linux配置完整安全的DHCP伺服器

DHCP是動態主機配置協議。這個協議用於向計算機自動提供IP地址,子網掩碼和路由資訊。網路管理員通常會分配某個範圍的IP地址來分發給區域網上的客戶機。當裝置接入這個區域網時,它們會向 DHCP 伺服器請求一個 IP 地址。然後DHCP伺服器為每個請求的裝置分配一個地址,直到分