iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 26
0

Linux帳號管理

在管理時,操作者可以藉由id指令查詢使用者所加入的次要群組支援,得以了解使用者對於某檔案的權限。主要的檔案紀錄是使用者的UID和GID。

UID與GID

系統紀錄UID和GID的檔案位於:

  • UID:/etc/passwd
  • GID:/etc/passwd與/etc/group


然而"/etc/passwd"的權限是"rw- r-- r--"每人都能讀取,重要的檔案居然每人都能看?所以後來的演進,記錄帳號的登入密碼不能再放在那,而另放到他的影子下,影子檔就叫"/etc/shadow"。

/etc/passwd

那/etc/passwd又記載著甚麼,"/etc/passwd"每一列的格式是固定的,用 head 和 tail 來讀取頭尾觀察:

"/etc/passwd"的內容每一列用符號" : "間隔,共記錄 7 個資訊格式為:

  1. 帳號名稱:
    這個欄位記錄帳號的名稱,一般Superuser的帳號會排在第一個,接下來為"系統帳號"(系統帳號為預設的,主要執行系統的一些服務和指令),最後是使用者帳號。

  2. 密碼
    密碼都移到了/etc/shadow裡,所以這裡都顯示"x"

  3. UID
    使用者 ID,Ubuntu的 UID 範圍為

    • ID=0:
      Superuser
    • ID=1~499,65534:
      系統帳號
    • ID >= 1000:
      一般的帳號
  4. GID
    群組 ID,類似 UID,只是由 User 改 Group。

  5. 使用者資訊說明欄

  6. 家目錄所在

  7. 預設登入時取得的shell名稱

/etc/shadow

他有不同的權限:

內容:

  1. User Name (帳號):
    帳號和"/etc/passwd"是相同的。
  2. Password (密碼):
    帳號的密碼是放到此,但密碼用 ASCII"明碼編暗碼",除非是解碼高手不然要還原 user 真正的帳號密碼也沒那麼容易。
    如果此欄空白,登入時不用輸入密碼,如果此欄前加"!"或"!!",表示此帳號不能登入。
  3. Last (密碼更動的時間):
    此欄記錄帳號密碼最後一次被更動的時間,但並非直接記錄日期,是表示距 UNIX 時間元年過了 xxxxx 天。
  4. May (密碼不可修改天數):
    表示更改或建立密碼後一定要間隔xx天數才可再變更密碼,"0"表示隨時可改密碼。
  5. Must (密碼的有效天數):
    要求一定時間內變更密碼,否則就會失效。"99999",代表密碼永久有效。
  6. Warn (密碼快失效前發出警告訊息):
    如第 5 項有設密碼的有效天數,則此欄記錄密碼快失效前 x 天系統會向使用者發出密碼快失效的警告訊息。
  7. Expire (過期容許時間):
    如第 5 項有設密碼的有效天數,此欄容許過了有效 y 天內還可使用或使用者可自行變更其密碼,如不使用則保持空白。
  8. Disable (失效時間):
    此項的設定和第 3 項一樣是用"UNIX 時間元年"相距的天數,時間一到帳號就失效,如不使用則保持空白。
  9. Reserved (保留):
    目前保留未使用。

參考

http://wanggen.myweb.hinet.net/ach1/ach1.html


上一篇
Day 25 學習日誌
下一篇
Day 27 學習日誌
系列文
Linux 30天學習日誌30

尚未有邦友留言

立即登入留言