您好,登錄后才能下訂單哦!
這篇文章主要介紹“linux中給用戶加密碼的命令是哪個”,在日常操作中,相信很多人在linux中給用戶加密碼的命令是哪個問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”linux中給用戶加密碼的命令是哪個”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
linux中給用戶加密碼的命令是“passwd”。passwd命令是用來更改用戶密碼的,語法為“passwd [選項] 用戶名”;當只省略“選項”參數時可以設置指定用戶的密碼,當省略“選項”和“用戶名”數時可以設置當前用戶的密碼。passwd命令還可配合“-n 天數”選項參數,設置用戶修改密碼后,多長時間不能再次修改密碼;配合“-x 天數”選項參數,設置用戶的密碼有效期。
本教程操作環境:linux7.3系統、Dell G3電腦。
使用useradd命令創建新用戶時,并沒有設定用戶密碼,因此還無法用來登陸系統。那么怎么給用戶加密碼呢?
在linux中,可以使用passwd命令給用戶設置密碼。
passwd 命令的基本格式如下:
passwd [選項] 用戶名
如果只省略“選項”參數時可以設置指定用戶的密碼
如果省略“選項”和“用戶名”數時可以設置當前用戶的密碼
例如,我們使用 root 賬戶修改 lamp 普通用戶的密碼,可以使用如下命令:
[root@localhost ~]#passwd lamp Changing password for user lamp. New password: <==直接輸入新的口令,但屏幕不會有任何反應 BAD PASSWORD: it is WAY too short <==口令太簡單或過短的錯誤!這里只是警告信息,輸入的密碼依舊能用 Retype new password: <==再次驗證輸入的密碼,再輸入一次即可 passwd: all authentication tokens updated successfully. <==提示修改密碼成功
例如,我們登陸 lamp 用戶,并使用 passwd 命令修改 lamp 的登陸密碼,執行過程如下:
[root@localhost ~]#passwd #passwd直接回車代表修改當前用戶的密碼 Changing password for user vbird2. Changing password for vbird2 (current) UNIX password: <==這里輸入『原有的舊口令』 New password: <==這里輸入新口令 BAD PASSWORD: it is WAY too short <==口令檢驗不通過,請再想個新口令 New password: <==這里再想個來輸入吧 Retype new password: <==通過口令驗證!所以重復這個口令的輸入 passwd: all authentication tokens updated successfully. <==成功修改用戶密碼
注意,普通用戶只能使用 passwd 命令修改自己的密碼,而不能修改其他用戶的密碼。
可以看到,與使用 root 賬戶修改普通用戶的密碼不同,普通用戶修改自己的密碼需要先輸入自己的舊密碼,只有舊密碼輸入正確才能輸入新密碼。不僅如此,此種修改方式對密碼的復雜度有嚴格的要求,新密碼太短、太簡單,都會被系統檢測出來并禁止用戶使用。
passwd 命令還提供了一些選項,用于實現不同功能:
-S:查詢用戶密碼的狀態,也就是 /etc/shadow 文件中此用戶密碼的內容。僅 root 用戶可用;
-l:暫時鎖定用戶,該選項會在 /etc/shadow 文件中指定用戶的加密密碼串前添加 "!",使密碼失效。僅 root 用戶可用;
-u:解鎖用戶,和 -l 選項相對應,也是只能 root 用戶使用;
--stdin:可以將通過管道符輸出的數據作為用戶的密碼。主要在批量添加用戶時使用;
-n 天數:設置該用戶修改密碼后,多長時間不能再次修改密碼,也就是修改 /etc/shadow 文件中各行密碼的第 4 個字段;
-x 天數:設置該用戶的密碼有效期,對應 /etc/shadow 文件中各行密碼的第 5 個字段;
-w 天數:設置用戶密碼過期前的警告天數,對于 /etc/shadow 文件中各行密碼的第 6 個字段;
-i 日期:設置用戶密碼失效日期,對應 /etc/shadow 文件中各行密碼的第 7 個字段。
【例 1】
#查看用戶密碼的狀態
[root@localhost ~]# passwd -S lamp lamp PS 2013-01-06 0 99999 7 -1 (Password set, SHA512 crypt.) #上面這行代碼的意思依次是:用戶名 密碼 設定時間(2013*01-06) 密碼修改間隔時間(0) 密碼有效期(99999) 警告時間(7) 密碼不失效(-1),密碼已使用
"-S"選項會顯示出密碼狀態,這里的密碼修改間隔時間、密碼有效期、警告時間、密碼寬限時間其實分別是 /etc/shadow 文件的第四、五、六、七個字段的內容。 當然,passwd 命令是可以通過命令選項修改這幾個字段的值的,例如:
#修改 lamp的密碼,使其具有 60 天變更、10 天密碼失效 [root@localhost ~]# passwd -x 60 -i 10 lamp [root@localhost ~]# passwd -S lamp lamp PS 2013-01-06 0 60 7 10 (Password set, SHA512 crypt.)
但我個人認為,還是直接修改 /etc/shadow 文件簡單一些。
這里顯示 SHA512 為密碼加密方式,CentOS 6.3 加密方式已經從 MD5 加密更新到 SHA512 加密,我們不用了解具體的加密算法,只要知道這種加密算法更加可靠和先進就足夠了。
【例 2】
#鎖定 lamp 用戶 [root@localhost ~]# passwd -I lamp Locking password for user lamp. passwd:Successg #用"-S"選項査看狀態,很清楚地提示密碼已被鎖定 [root@localhost ~]# passwd -S lamp lamp LK 2013-01-06 0 99999 7 -1 (Password locked.) [root@localhost ~]# grep "lamp" /etc/shadow lamp:!! $6$ZTq7o/9o $lj07iZ0bzW.D1zBa9CsY43d04onskUCzjwiFMNt8PX4GXJoHX9zA1S C9.i Yzh9LZA4fEM2lg92hM9w/p6NS50.:15711:0:99999:7::: #可以看到,鎖定其實就是在加密密碼之前加入了"!!",讓密碼失效而已
暫時鎖定 lamp 用戶后,此用戶就不能登錄系統了。那么,怎么解鎖呢?也一樣簡單,使用如下命令即可:
#解鎖 lamp 用戶 [root@localhost ~]# passwd -u lamp Unlocking password for user lamp. passwd:Success [root@localhost ~]# passwd -S lamp lamp PS 2013-01-06 0 99999 7 -1 (Password set, SHA512 crypt.) #可以看到,鎖定狀態消失 [root@localhost ~]# grep "lamp" /etc/shadow lamp: $6$ZTq7cV9o $lj07iZ0bzW.D1zBa9CsY43d04onskUCzjwiFMNt8PX4GXJoHX9zA1S C9.iYz h9LZA4fEM2lg92hM9w/p6NS50.:15711:0:99999:7::: #密碼前面的 "!!" 刪除了
到此,關于“linux中給用戶加密碼的命令是哪個”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。