--- tags: devops --- # 更改密碼 ## 新增密碼(直接新增使用者與密碼) ``` useradd u11016038 -p u11016038 ``` ## 在已有使用者的情況下新增密碼 ``` sudo passwd u11016038 ``` ## 強迫使用者修改密碼 ``` sudo passwd -e u11016038 ``` ## 查看現在使用者 ``` whoami ``` ## 切換使用者 ``` su u11016038 ``` ## 密碼設定(是否需要?) 設定密碼複雜度 ``` sudo apt install libpam-pwquality vim /etc/pam.d/common-password password requisite pam_pwquality.so -> password requisite pam_pwquality.so retry=? minlen=? maxrepeat=? difok=? ucredit=? lcredit=? dcredit=? ocredit=? reject_username enforce_for_root ``` 1. retry=3 代表輸入密碼時最多嘗試次數,當密碼輸入超過 3 次就會產生錯誤。 2. minlen=15 設定最短的密碼長度為 15。 3. maxrepeat=3 密碼中相同的字元最多只能連續出現 3 個,若超過則密碼就會被拒用,例如:maxrepeat=3,表示不接受 pwwwwd 為密碼。如果設為 0,則不檢查。 4. difok=4 新密碼中必須有 4 個字元要與舊密碼不同。若設定為 0 則不檢查,只要新舊密碼不要完全一樣即可。 5. ucredit=-1、lcredit=-1、dcredit=-1、ocredit=-1 ucredit=0、lcredit=0、dcredit=0、ocredit=0,這個例子就是所有類別都不算額外貢獻,直接看密碼長度。 6. reject_username 拒絕包含正、反向的 username。 7. enforce_for_root 設定 root 管理者亦需遵守密碼規定。 ## 設定更換密碼天數(是否需要?) 只適用於新使用者身上 ``` vim /etc/login.defs PASS_MAX_DAYS ? PASS_MIN_DAYS ? PASS_MIN_LEN ? PASS_WARN_AGE ? ``` 1. PASS_MAX_DAYS:密碼效期,以天計算 2. PASS_MIN_DAYS:兩次密碼更換至少間隔天數 3. PASS_MIN_LEN :密碼最小長度 4. PASS_WARN_AGE:密碼到期前幾天通知使用者 ## 對於現有使用者的額外指令 ``` sudo apt install chage sudo chage --maxdays (天數) u11016038 sudo chage --mindays (天數) u11016038 sudo chage --warndays (天數) u11016038 ``` ## vi 指令 1. command mode → insert mode : i o a 2. insert mode → command mode : esc 3. command mode → last line mode: ':' 4. last line mode → command mode : error 01. :w 存檔 02. :q 離開 03. :q 強制離開(不儲存) 04. :wq 儲存並離開 05. :e[filename] 開啟某個檔案 06. :{number} 跳掉第幾行 07. :!{cmd} 執行Shell命令 08. yy 複製一行 09. dd 剪下一行 10. x 剪下一個字 11. p 貼上剪貼簿的內容 12. v 選取(之後可以複製、剪下) 13. . 重複執行剛剛執行過的指令 14. u 回復(undo) 15. :set number 行號 16. :set number! 禁用行號