Linux基礎之用戶和權限(一)


用戶,組,權限

安全上下文

權限
r,w,x

文件:
r:可讀,可使用相似cat等命令查看文件內容
w:可寫,能夠編輯或刪除此文件
x:可執行,能夠命令提示符下看成命令提交給內核運行

目錄:
r:能夠對此目錄執行ls以列出內部的全部文件
w:能夠對此目錄建立文件
x:可使用cd切換進此目錄,也可使用ls-l查看內部


r:4
w:2
x:1

三類用戶
u:屬主
w:屬組
o:其餘用戶

用戶:UID,/etc/passwd
組:GID /etc/group

影子口令
用戶:/etc/shadow
組:/etc/gshadow

用戶類型
管理員:0
普通用戶:1-65535
    系統用戶:1-499
    通常用戶:500-60000

用戶組類別:
管理員組:
普通組:
    系統組
    通常組

用戶組類別:
    基本組:用戶的默認組
    私有組:建立用戶時,若是沒有爲其指定所屬的組,系統會自動爲其建立一個與用戶名同名的組
    附加組,額外組:默認組之外的組

cat /etc/passwd
用戶名,登陸密碼,uid,gid,註釋,家目錄,用戶默認shell

cat /etc/shadow
登陸名,加密密碼,

cat /etc/group
 組名,密碼站位符,組id,以這個組爲附加組的用戶列表
加密方法
    對稱加密:加密和解密使用同一個密碼
    公鑰加密:每一個密碼都成對出現,一個爲私鑰(secret key),一個爲公鑰(public key)
    單項加密:散列加密,提取數據特徵碼
cat /etc/shells
指定了當前系統中可用的安裝shell

用戶管理:
    useradd userdel usermod passwd chsh chfn finger id chage
組管理
    groupadd groupdel groupmod gpasswd
權限管理
    chown chgrp chmod umask

    
    
useradd
        -u UID
        -g GID(基本組)
        -G GID,...  (附加組)
        -c "COMMENT"  指定註釋信息
        -d /path/to/somedirectory   指定家目錄
        -s shell 環境變量
        -M 建立時不建立家目錄
        -r
環境變量:
        PATH
        HISTSIZE
        SHELL
    
    
    
useradd -G mygroup user3
tail -l /etc/passwd
tail /etc/group    
    
#useradd -M user7
#su - user7
-bash-3.2$ pwd
/root    
    
    
    
userdel
        後加用戶名,不會刪除其家目錄
    -r    刪除用戶的同時刪除家目錄
    
    
    
id
        -nu 用戶的用戶名
        -ng 用戶組的組名
        -nG 每個組的組名
    



修改用戶帳號屬性
usermod
    -u UID
    -g GID
    -a -G GID 爲用戶在原有附加組的狀況下,添加附加組。不適用-a會覆蓋此前的附加組
    -c
    -d -m;指定新家目錄的位置,也要移動此前的文件到新的家目錄中
    -s
    -l更改用戶名
    -L 鎖定帳號
    -U 解鎖帳號
    
    
    
    
finger:用戶帳號信息
finger username    
chsh:修改用戶的默認shell
chfn:修改信息
finger,chsh,chfn這三者互用。





密碼管理:
passwd
    --stdin  不用交互使用    
    -l            鎖定
    -u            解鎖
    -d            刪除密碼
    
echo '123' |passwd --stdin user3

pwck:檢查用戶帳號完整性

groupadd
    -g GID
    -r 添加一個系統組,系統用戶沒有家目錄
    
    
groupmod
    -g GID
    -n 指定新的組名
    
groupdel

gpasswd 組名   :給組設定密碼


newgrp 組名  :登陸到新組,而後退出用exitlinux

 


練習:
1 建立用戶mandriva,id爲2002,基本組distro(組id3003),附加組Linux
# groupadd -g 3003 distro
#groupadd linux
#useradd -u 2002 -g distro -G linux mandriva

2 建立用戶fedora,全名Fedora COMMENT,默認shell爲tcsh
# useradd -c "Fdora 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 fedorashell


5 將mandriva的默認shell改成/bin/bash
#usermod -s /bin/bash mandirva安全


6 添加系統用戶hbase,且不容許其登陸系統
# useradd -r -s /sbin/nologin hbase


chage
    -d 最近一次修改的時間
    -E 過時時間
    -I 非活動時間
    -m 最短使用期限
    -M 最長使用期限
    -W 警告時間



三類用戶
u:屬主
w:屬組
o:其餘用戶

chown:改變文件屬主(管理員使用此命令)
    -R:修改目錄及其內部文件的屬主
    --reference=/path/to/somfile file
將/tmp/abc屬性改成和/tmp/dfe 屬性一致
chown --reference=/tmp/abc /tmp/dfe

chmod :修改文件權限
    -R
    --reference=/path/to/somefile file    
    
修改某類用戶或者某些類用戶權限,某位或某些位權限
u,g,o,a    + ,—

站在用戶登陸角度說,SHELL的類型:
登陸式shell:
    正常登陸某終端登陸
    su - username
    su - l username

非登陸式shell
    su USERNAME
    圖形終端下打開命令窗口
    自動執行shell腳本
    
    
bash的配置文件
全局配置
    /etc/profile, /etc/profile.d/*.sh, /etc/bashrc
我的配置
    ~/.bash_profile, ~/.bashrc
    
profile類的文件:
    設定環境變量
    運行命令或者腳本(一登陸)

bashrc類是文件:
    設定本地變量
    定義命令別名

    
登陸式shell如何讀取配置文件:
/etc/profile--> /etc/profile.d/*.sh --> ~/.bash_profile --> ~/.bashrc --> /etc/bashrc

非登陸式shell如何配置文件:
~/.bashrc --> /etc/basrc --> /etc/profile.d/*.sh



bash

相關文章
相關標籤/搜索