萬盛學電腦網

 萬盛學電腦網 >> 服務器教程 >> Linux系統中基本的用戶管理方法

Linux系統中基本的用戶管理方法

   用戶管理的配置文件

  用戶信息文件:/etc/passwd

  密碼文件:/etc/shadow

  用戶組文件:/etc/group

  用戶組密碼文件:/etc/gshadow

  用戶配置文件:

  /etc/login.defs

  /etc/default/useradd

  新用戶信息文件:/etc/ske1

  登陸信息:/etc/motd /etc/issue

  /etc/passwd文件格式

2015730175159219.jpg (927×322)

  用戶類型

  Linux用戶分為三種:

  超級用戶(root UID=0)

  普通用戶(UID 500-60000)

  偽用戶(UID 1-499)

  注意:root不一定是超級用戶,但是UID=0的用戶一定是超級用戶。

  偽用戶

  偽用戶與系統和程序服務相關

  bin daemon shutdown halt等,任何linux系統默認都有這些偽用戶

  mail news games apache ftp mysql及sshd等,與linux系統的進程相關

  偽用戶通常不需要或無法登陸系統

  可以沒有宿主目錄

  用戶組

  每個用戶都至少屬於一個用戶組

  每個用戶組可以包括多個用戶

  同一個用戶組的用戶享有該組共有的權限

  /etc/shadow文件格式

2015730175220429.jpg (944×420)

  /etc/group文件格式

2015730175239259.jpg (931×215)

  手工添加用戶

  分別在/etc/passwd 、/etc/group 和/etc/shadow文件中添加一筆記錄

  創建用戶宿主目錄

  在用戶宿主目錄中設置默認的配置文件

  設置用戶初始密碼

  SetUID

  思考:為什麼普通用戶可以更改密碼?

  SetUID的定義:當一個可執行程序具有SetUID權限,用戶執行這個程序時,將以這個程序所有者的身份執行。

  范例:1.將touch命令授予SetUID權限

  2.當vi命令呗授予SetUID權限

  3.查找SetUID程序:

  代碼如下:

  Find / -perm -4000 –o –perm -2000

  添加用戶

  useradd設置選項 用戶名 -D 查看缺省參數

  u:UID

  g:缺省所屬用戶組GID

  G:指定用戶所屬多個組

  d:宿主目錄

  s:命令解釋器shell

  c:描述信息

  e:指定用戶失效時間

  代碼如下:

  #useradd ksharpdabu //添加ksharpdabu這個賬號

< p>#passwd ksharpdabu /修改ksharpdabu的密碼

 

  或者熟悉系統文件的,可以直接手動添加用戶

  用戶組管理命令

  添加用戶組groupadd

  代碼如下:

  groupadd -g 888 webadmin

  創建用戶組webadmin ,其GID為 888

  刪除用戶組:groupdel 組名

  代碼如下:

  #groupdel webuser //刪除webuser這個組

  修改用戶組星系 :groupmod

  代碼如下:

  #groupmod -n apache webadmin

  修改webadmin組名為apache

  用戶組管理命令

  Gpasswd設置組密碼及管理組內成員

  -a添加用戶到用戶組

  -d 從用戶組中刪除用戶

  -A設置用戶組管理員

  -r刪除用戶組密碼

  -R禁止用戶切換為該組

  修改用戶信息

  usermod

  代碼如下:

  #usermod -G softgroup ksharpdabu

  將用戶ksharpdabu添加到softgroup用戶組中

  代碼如下:

  #usermod -l ksharpdabu -d /home/samlee –g webadmin Tom

  將用戶Tom的登陸用戶名改為ksharpdabu,加入wenadmin組中,用戶目錄改為/home/ ksharpdabu

  用戶管理命令

  pwk 檢測/etc/passwd文件(鎖定文件)

  vipw 編輯/etc/passwd文件

  id 查看用戶id和組信息

  finger 查看用戶詳細信息

  su 切換用戶(su –環境變量切換)

  passwd –S 查看用戶密碼狀態

  who、w 查看當前登錄用戶信息

  用戶組管理命令

  groups 查看用戶隸屬於哪些用戶組

  newgrp 切換用戶組

  grpck 用戶組配置文件檢測

  chgrp 修改文件所屬組

  vigr 編輯/etc/group文件(鎖定文件

  用戶組授權實例

  授權用戶jack和mary對目錄/software有寫權限

  代碼如下:

  # groupadd softadm

< p># usermod -G softadm jack

 

< p># gpasswd -a mary softadm

 

< p># chgrp softadm /software

 

< p># chmod g+w /software

 

  代碼如下:

  # ls -ld /software

< p>drwxrwxr-x 2 root softadm 512 Jul 14 06:17 /software

 

< p># grep softadm /etc/group

 

< p>softadm::100:jack,mary

 

  禁用和恢復用戶

  禁用

  代碼如下:

  # usermod -L username

< p># passwd -l username

 

  恢復

  代碼如下:

  # usermod -U username

< p># passwd -u username

 

  刪除用戶

  userdel –r 用戶名

  -r:刪除用戶目錄

  手工刪除:

  使用find命令查找屬於某個用戶或者用戶組的文件

  Find選項-user、-uid、-group、-gid

  對需要保留的文件進行移動和備份

  對不需要的文件進行刪除

  清除用戶文件中的相關表項

  清除用戶宿主目錄

  用戶管理命令

  change設定密碼

  -l 查看用戶密碼設置

  -m 密碼修改最小天數

  -M 密碼修改最大天數

  -d 密碼最後修改的日期

  -l 密碼過期後,鎖定賬戶的天數

  -E 設置密碼的過期日期,如果為0,代表密碼立即過期;如果為-1,代表密碼永不過期

  -W 設置密碼過期前,開始警告的天數

  啟動或停用shadow功能

  pwconv/pwunconv

  grpconv/grpunconv

  system-config-users

  authconfig /etc/sysconfig/authconfig

  批量添加用戶

  newusers命令 導入用戶信息文件

  pwunconv命令 取消shadow password功能

  chpasswd命令 導入密碼文件(密碼文件格式: 用戶名:密碼)

  pwconv命令 將密碼寫入shadow文件

  實例:一次批量添加10個用戶

  限制用戶su為root:

  代碼如下:

  # groupadd sugroup

< p># chmod 4550 /bin/su

 

< p># chgrp sugroup /bin/su

 

< p># ls -l /bin/su

 

< p>-r-sr-x— 1 root sugroup 18360 Jan 15 2010 /bin/su

 

  設定後,只有sugroup組中的用戶可以使用su切換為root

  代碼如下:

  # useradd helen

< p># passwd helen

 

< p># usermod -G sugroup helen //為helen增加su的權限

 

  用sudo替代su:

  在執行sudo命令時,臨時成為root

  不會洩露root口令

  僅向用戶提供有限的命令使用權限

  配置文件:/etc/sudoers,編輯配置文件命令visudo

  普通用戶使用命令sudo。

  格式:用戶名(組名) 主機地址=命令(絕對路徑)

  系統弱密碼測試工具John the ripper的使用方法;

  代碼如下:

  # tar -xzvf john-1.7.6.tar.gz

< p># cd john-1.7.6/run

 

< p># make

 

  破解用戶ksharpdabu密碼

  代碼如下:

  # grep ksharpdabu /etc/passwd > /test/ksharpdabu.passwd

< p># grep ksharpdabu /etc/shadow > /test/ksharpdabu.shadow

 

< p># /test/john-1.6.6/run/unshadow /test/ksharpdabu.passwd

 

< p>/test/ksharpdabu.shadow > /test/ksharpdabu.john

 

< p># /test/john-1.6.6/run/john /test/ksharpdabu.john

copyright © 萬盛學電腦網 all rights reserved