歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 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> <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> <p># usermod -G softadm jack</p> <p># gpasswd -a mary softadm</p> <p># chgrp softadm /software</p> <p># chmod g+w /software

 


復制代碼代碼如下: # ls -ld /software</p> <p>drwxrwxr-x 2 root softadm 512 Jul 14 06:17 /software</p> <p># grep softadm /etc/group</p> <p>softadm::100:jack,mary

 

 

禁用和恢復用戶

禁用


復制代碼代碼如下: # usermod -L username</p> <p># passwd -l username

恢復


復制代碼代碼如下: # usermod -U username</p> <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> <p># chmod 4550 /bin/su</p> <p># chgrp sugroup /bin/su</p> <p># ls -l /bin/su</p> <p>-r-sr-x— 1 root sugroup 18360 Jan 15 2010 /bin/su

 

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


復制代碼代碼如下: # useradd helen</p> <p># passwd helen</p> <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> <p># cd john-1.7.6/run</p> <p># make

破解用戶ksharpdabu密碼


復制代碼代碼如下: # grep ksharpdabu /etc/passwd > /test/ksharpdabu.passwd</p> <p># grep ksharpdabu /etc/shadow > /test/ksharpdabu.shadow</p> <p># /test/john-1.6.6/run/unshadow /test/ksharpdabu.passwd</p> <p>/test/ksharpdabu.shadow > /test/ksharpdabu.john</p> <p># /test/john-1.6.6/run/john /test/ksharpdabu.john

Copyright © Linux教程網 All Rights Reserved