默認情況下root是沒有密碼的 需要設置密碼后才能開啟ssh
修改/etc/shadow文件:
root:$1$wEehtjxj$YBu4quNfVUjzfv8p/PBo5.:0:0:99999:7:::
密碼經過加密,密碼修改為admin
shadow文件里的字段格式和解釋:
{用戶名}:{加密后的口令密碼}:{口令最后修改時間距原點(1970-1-1)的天數}:{口令最小修改間隔(防止修改口令,如果時限未到,將恢復至舊口令):{口令最大修改間隔}:{口令失效前的警告天數}:{賬戶不活動天數}:{賬號失效天數}:{保留}
如果密碼字符串為*, 表示系統用戶不能被登入;
為!,表示用戶名被禁用;
為空,表示沒有密碼
可以用 $passwd -d 用戶名 清空一個用戶的密碼。
密碼加密算法,其實就是用明文密碼和一個叫salt的東西通過函數crypt()完成加密。
密碼域密文也是由三部分組成的,即:$id$salt$encrypted。
id為1時,采用md5進行加密;
id為5時,采用SHA256進行加密;
id為6時,采用SHA512進行加密。
在每次改寫密碼時,都會隨機生成一個這樣的salt。我們登錄時輸入的明文密碼經過上述的演化后與shadow里的密碼域進行字符串比較,以此來判斷是否允許用戶登錄。