1. 程式人生 > >初識linux之給我一個家

初識linux之給我一個家

don 名稱 收回 內容 個人 永久 su - 初識linux ash

用戶管理
1.用戶/組基本概念
查看當前登錄的用戶信息:id
查看文件的owner:LL可以看到文件的所屬者
查看運行進程:ps aux | less,分屏顯示當前進程
用戶和組的存儲文件 /etc/passwd
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
用戶名:X是密碼占位符: 第一個42用戶ID:第二個42是組ID:描述符:家目錄:shell
/etc/shadow
xirui:$6$TpjODU.qcR3mlKv6$HeVvjKy/kUbGQJd.0kFUeFT6YUsD6mJEvz9mZCKxxWrR64FCcXg4HExRhiSsi88Vw405F8KHpO7XwjMZGb6nf.:17547:0:99999:7:::
登錄名:加密口令:最後一次修改時間:最小時間間隔(過多少天之後能改密碼):最大時間間隔(多少天之後必須要改密碼):警告時間:不活動時間(是到達警告時間以後的一個時間段,會強制修改密碼[彈性]可無限重復):失效時間(是一個點,到達這個時間以後,權限被收回[硬性收回]):標誌
/etc/group 組
組名:密碼占位符,gid,組成員
2.用戶/組管理
創建用戶,未指定選項
useradd+用戶名:未指定用戶的主組,附加組,home,shell,UID
創建用戶,執行選項
-u 指定uid useradd -u 1001 user01
-d 指定用戶家目錄 useradd user02 -d /aaa
-s 設置用戶登錄的shell useradd user05 -s /sbin/nologin //創建用戶並指定shell
-G 指定附加組
-M 不指定家目錄
usermod -G 1001 user03 //將user03加到1001組裏,如果之前有其他附加組,則會覆蓋,可通過命令usermod -aG 1003 user03 通過-a追加添加
刪除用戶
userdel -r user02 完全刪除用戶的郵箱與家目錄等
用戶密碼
通過passwd更改密碼,普通用戶只能更改自己的密碼
echo 123456 |passwd --stdin maomao100 //stdin是標準輸入,由標準輸入管道給passwd,並標準輸入到maomao100這個選項
組成員管理
用戶組分為基本組以及附加組
創建用戶時默認會生成一個與用戶相同的組
usermod -g(基本組) -G(附加組) 1001 user01
其他選項管理
3.提權
永久提權,用su,直接切換到su - root
臨時提權,用sudo,以root身份授權普通用戶,配置文件在 vim /etc/sudoers
%wheel ALL = (ALL) NOPASSWD:ALL
wheel是一個特殊組,在這個組裏的用戶,可以執行sudo,需要將用戶添加一個附加組wheel。

4.擴展知識

對稱 非對稱 哈希算法加密
原內容,與密鑰結合,生成密文
迪福赫爾曼算法
shadow加密口令裏面會有$$,兩個$之間的數字意義。分開加密算法和結果的
linux元年:1970年1月1日
看明白shadow串各個時間
man手冊 man 5 passwd shadow group man 3 crypt

useradd maomao100
echo 123456 |passwd --stdin maomao100 //輸出定向到maomao100的密碼
chage -d 0 maomao100 //更改密碼策略

useradd的一些參數
-b, --base-dir BASE_DIR 新賬戶的主目錄的基目錄
-c, --comment COMMENT 新賬戶的 GECOS 字段
-d, --home-dir HOME_DIR 新賬戶的主目錄
-D, --defaults 顯示或更改默認的 useradd 配置
-e, --expiredate EXPIRE_DATE 新賬戶的過期日期
-f, --inactive INACTIVE 新賬戶的密碼不活動期
-g, --gid GROUP 新賬戶主組的名稱或 ID
-G, --groups GROUPS 新賬戶的附加組列表
-h, --help 顯示此幫助信息並推出
-k, --skel SKEL_DIR 使用此目錄作為骨架目錄
-K, --key KEY=VALUE 不使用 /etc/login.defs 中的默認值
-l, --no-log-init 不要將此用戶添加到最近登錄和登錄失敗數據庫
-m, --create-home 創建用戶的主目錄
-M, --no-create-home 不創建用戶的主目錄
-N, --no-user-group 不創建同名的組
-o, --non-unique 允許使用重復的 UID 創建用戶
-p, --password PASSWORD 加密後的新賬戶密碼
-r, --system 創建一個系統賬戶
-R, --root CHROOT_DIR chroot 到的目錄
-s, --shell SHELL 新賬戶的登錄 shell
-u, --uid UID 新賬戶的用戶 ID
-U, --user-group 創建與用戶同名的組
-Z, --selinux-user SEUSER 為 SELinux 用戶映射使用指定 SEUSER

下面是一個小循環
18個人,1800臺服務器
#!/bin/bash
PASSWD=linux1801
for i in {1..100}
do
useradd user$i
echo "$PASSWD" |passwd --stdin user$i
done

初識linux之給我一個家