Linux運維第4天:Linux權限及用戶管理

用戶,組,權限


安全上下文(secure context)


權限:r,w,x
    文件:
        r: 可讀,可以用類似cat的命令查看文件內容
        w: 可寫,可以編輯但不可以刪除文件
        x: 可以執行,eXacutable
    目錄:
        r: 可以對此目錄執行ls以列出內部的文件
        w: 可以在此目錄創建文件,刪除文件
        x: 可以使用cd切換到此目錄,也可以使用ls -l列出詳細信息
        
用戶:UID,/etc/passwd
組:GID,/etc/group


影子口令:
    用戶:/etc/shadow
    組:/etc/gshadow
    
用戶類別:
    管理員:0
    普通用戶:1-65535
    系統用戶:1-499
    一般用戶:500-60000
    
用戶組類別:
    管理員組:
    普通組:
        系統組:
        一般組:
        
用戶組類別:
    私有組:創建用戶時,如果沒有爲其指定所屬組,系統自動爲其創建一個與用戶名同名的組
    基本組:用戶的默認組
    附加組:額外組,默認以外的其它組
    
可執行程序運行後的身份是要求執行這個程序的用戶身份(發起者)


/etc/passwd:文件結構 man 5 passwd
login name:password:uid:gid:gecos:directory:shell
登錄名:密碼:UID:GID:註釋:用戶家目錄:shell


/etc/shadow:文件結構 man 5 shadow
login name:encrypted password:last change:min password age:max password age:password warning period:password inactivity period:account expiration date:reserved field
登錄名:加密密碼:上次更改日期:不能更改密碼時間:最大要改密碼時間:提醒更改密碼時間:強制修改密碼:過期時間:保留


在密碼加上兩個!!可以用戶禁止登錄


加密方法:
    對稱加密:加密和解密使用同一個密碼
    公鑰加密:每個密碼都是成對兒出現,一個爲私鑰(解密),一個爲公鑰(加密)
    單向加密,散列加密:提取數據特徵碼,常用於數據完整性校驗
        1.雪崩效應
        2.定長輸出
            MD5:Message Digest,128位定長輸出
            SHA1:Secure Hash Algorithm,160位定長輸出
            
useradd [options] USERNAME 相關文件 /etc/default/ /etc/login.defs /etc/skel/
    -u:uid
    -g:gid(基本組,必須存在)
    -G:gid...(附加組,可以不存在)
    -c:comment(註釋)
    -d:home directory
    -s:shell
    -m [-k]:強制創建家目錄(-k 拷貝 /etc/skel/下的文件)默認選項
    -M
    -r:添加系統用戶


id:查看用戶的基本信息
    -un
    -gn


userdel [option] USERNAME
    -r:刪除用戶所擁有的所有文件
    
finger:查看用戶賬號信息


修改用戶帳號信息:
usermod
    -u 
    -g
    -a -G gid (不使用-a選項,會覆蓋此前的附加組)
    -c
    -d [-m] (移動以前的家目錄文件到新目錄)
    -s
    -l:(修改用戶登錄名)
    -L:鎖定用戶帳號
    -U:解鎖用戶帳號


chsh: change shell


chfn: change finger


密碼管理:
passwd:
    --stdin:使用標準輸入更改密碼
    -l:鎖定帳號
    -u:解鎖帳號
    -d:刪除用戶密碼
    
pwck:檢查用戶帳號完整性


組管理:
創建組:
groupadd:
    -g
    -r:添加系統組
    
groupmod:
    -g
    -n groupname
    
gpasswd:爲組設置密碼


newgrp:切換到指定用戶組(登錄到一個新組,退出使用exit)




練習:
    1.創建一個用戶mandriva,其ID號爲2002,基本組爲distro(組ID爲3003),附加組爲linux;
    # groupadd -g 3003 distro
    # groupadd linux
    # useradd -u 2002 -g distro -G linux mandriva
    2.創建一個用戶fedora,其全名爲Fedora Community,默認shell爲tcsh;
    # useradd -c "Fedora Community" -s /bin/tcsh fedora
    3.修改mandriva的ID號爲4004,基本組爲linux,附加組爲distro和fedora;
    # usermod -u 4004 -g linux -G distro,fedora mandriva
    4.給fedora加密碼,並設定其密碼最短使用期限爲2天,最長爲50天;
    # passwd -n 2 -x 50 fedora
    5.將mandriva的默認shell改爲/bin/bash; 
    usermod -s /bin/bash mandirva
    6.添加系統用戶hbase,且不允許其登錄系統;
    # useradd -r -s /sbin/nologin hbase


chage:更改密碼過期信息
        -d:last day
        -E:expire date
        -m:min day
        -M:max day
        -W:warn day
        -l:list
        
權限管理:


chown:更改文件屬主(只有管理員纔可以使用此命令)
chown [username][(:|.)grpname] file,...
    -R:遞歸修改
    --reference=FILE file...(參考)
    
chgrp:更改文件屬組
    -R:
    --reference=FILE file...
    
chmod:更改文件權限(位數不夠時前面補零)
    --reference=FILE file...
    -R:
    chmod 755 test.txt
    
    修改某類用戶或某些類用戶權限      
    chmod  a=mode file...
    
            u 
            g 
    chmod   o +|-|= r,w,x file,...
            a 
            
    如果+|-|=之前沒有參數,默認爲a
    
練習:
    1.新建一個沒有家目錄的用戶openstack;
    2.複製/etc/skel/爲/home/openstack;
    3.改變/home/openstack及其內部文件的屬主組均爲openstack;
    4./home/openstack及其內部文件,屬組和其他用戶沒有任何訪問權限
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章