Linux運維day14
企業場景:用戶及密碼管理
1,密碼要複雜:8位以上字母數字特殊字元
2.大企業的用戶和密碼是統一管理的(活動目錄,openLDAP)
chage 設置或修改用戶密碼對應許可權
-d --lastday最近日期 將最近一次密碼設置時間設為「最近日期」
-h --help 顯示此幫助信息並退出
-I --inactive 失效密碼 在密碼過後過期多少天,用戶被禁掉,僅能以root操作
-l --list 顯示賬戶年齡信息
-m -mindays 最小天數 將兩次改變密碼之間相距的最小天數設為「最小天數」
-M --maxdays 最大天數 將兩次修改密碼之間相距的最大天數設為「最大天數」
-W -warndays 警告天數 將過期警告天數設為「警告天數」
小結
/etc/skel
/etc/login.defs
/etc/default/useradd
命令
useradd(/etc/passwd /etc/shadow /etc/group /etc/gshadow)
passwd (/etc/shadow)
groupadd (/etc/group)
chage (/etc/shadow)
useradd 刪除用戶
-r 連同家目錄一起刪除
一般不能確認用戶相關目錄有沒有重要數據就不能用-r。
刪除經驗:
1.vi/etc/passwd 注釋掉用戶,觀察一個月,出現問題還原。操作前備份
2.把登錄shell改成/etc/login。
3.ldap(類似活動目錄)賬號統一管理的,庫里幹掉用戶。全部都沒了
usermod 修改用戶信息
-l login_name 變更用戶login時的名稱login_name.其餘信息不變
-u uid 指定用戶uid值 除非接-o參數(如:usermod -u 505 -o oldboy)
-L 凍結用戶的密碼,使之無法登陸,實際上就是間接修改/etc/shadow密碼欄。
在密碼欄的開頭加上「!」號,即使之凍結。這個密碼凍結功能和usermod -e
useradd -e chage -E 或 passwd -I 等命令參數都有類似的功效,那就是讓用戶無法正常登陸
-U 取消凍結用戶的密碼。使之恢復,實際情況是修改/etc/shadow的密碼欄。在密碼欄的開頭取消「!」號,即表示恢復
w 顯示誰登陸,並且在做什麼
who 顯示誰登陸
last 顯示登錄的列表(查詢該文件/var/log/wtmp)
lastlog (/var/log/lastlog) 查詢所有計算機用戶最近登錄的情況
users 顯示一個用戶對應的組信息
groups 列印用戶在哪個組裡
su 切換用戶身份命令
-,-l,--login make the shell a login shell
是一個shell成為登錄的shell,如執行su-oldboy時,表示該用戶想改變身份為oldboy,並且使用oldboy
用戶使用oldboy用戶的環境變數配置,如:/home/oldboy.bash_profile等。
-c,--command=COMMAND 切換到一個shell下,執行一個命令,然後退出所切換的用戶環境
-m --perserve-environment 切換用戶時,不重置用戶環境變數,-p的功能同-m,這個參數為su的默認值,一般很少用
sudo 可以讓普通用戶可以擁有root許可權去執行命令
作用:
1.普通用戶必須知道root密碼才能切換到root,這樣root密碼就泄露了。
2.使用su命令切換身份,無法對切換後的身份做精細的控制,拿到超級許可權的人可以為所欲為。甚至可以改掉root密碼,
讓真正的管理員無法再擁有root許可權
流程:
普通用戶運行sudo-->檢查/var/db/sudo下是否有時間戳文件,並檢查是否已超過5分鐘-->如果時間戳已超過5分鐘-->輸入用戶自己的口令
-->如果時間戳未超過5分鐘-->檢查/etc/sudoers配置文件是否有運行
sudo和執行相應命令的許可權-->有許可權-->執行命令並返回結果-->退出sudo
-->無許可權-->退出sudo
visudo=vim /etc/sudoers(440最安全)
改98行
## Allow root to run any commands anywhere
用戶和組 機器=(授權角色) 可執行的命令
root ALL=(ALL) ALL
oldboy ALL=(ALL) /bin/sbin/useradd
如果只針對用戶組,則對應的授權命令如下:
%用戶組 機器=(授權使用哪個角色的許可權) /usr/sbin/useradd
visudo -c 檢查語法
/bin/sed 危險命令


TAG:King001工作室 |