---
# System prepended metadata

title: 更改密碼
tags: [devops]

---

---
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!    禁用行號

