找回root口令:
遇到密碼丟失的情況,如果只是普通用戶的密碼丟失,那么可以讓管理員重新設定密碼。但是如果管理員用戶的密碼丟失,那該如何解決?
在 Linux環境中root 密碼忘記還是可以救回來的!只要能夠進入并且掛載 / , 然后重新設定一下root的密碼,就救回來啦!這是因為開機流程中,若強制進入runlevel 1 時, 默認是不需要密碼即可取得一個 root 的 shell 來救援的。詳細過程如下:
1. 重新啟動!
2. 在開機按任意鍵進入 grub 選單
根據提示,鍵入a 進入以下畫面:在quiet后加 1 或 single 或 S 或 s
回車后就會進入單用戶模式 runlevel 1,然后使用passwd命令來修改密碼,修改完成后重新啟動就可以了。
就是這么簡單,密碼就可以重置,帶來方便的同時,也有危險的存在。雖然一般情況下服務器都在機房放置。外人根本接觸不到,但是有些特定的情況下,會在外人接觸到的地方放置,如果這樣簡單就被破解了管理員密碼,那豈不是很危險,所以,我們不經要回破解密碼,還要會保護密碼!!
升級密碼保護:
講到密碼保護,就涉及到系統啟動時所需要的一個文件,我們可以在這里加一些設置,這樣就可以在系統啟動的時候,得到一些保護??!
這個文件就是/boot/grub/grub.conf,這是一個系統的配置文件,這個文件里有這樣一些內容(#后為上一行的注釋)
我們可以在這個文件里加上兩行代碼,實現修改內核的保護和系統的保護。
而我們加了兩行代碼,分別實現什么功能呢?
這兩行代碼,位置不同,所實現的功能就有所不同,第一個在啟動內核之前,所以他主要是啟動菜單編輯認證,第二個在內核設置之后,所以他是實現啟動選定的內核或操作系統時進行認證
重啟啟動進入 grub 選單,即可發現下方提示信息已經改變,需要輸入密碼,才能進行修改
輸入密碼,即可正常顯示,這時就可以修改密碼了。
這時輸入正確的密碼,系統就會開始正常啟動
密碼加密保護:
雖然這個配置文件的權限設置的比較嚴格:
但是,畢竟密碼在文件里是明文保存的,所以還是較為不安全,這時,我們就需要使用加密的密碼了
這里就需要使用命令“grub-md5-crypt”,就會生成加密的密碼
而配置文件里就需要經密碼那一行,更改為:
password [--md5] STRING
這樣就可以實現密碼更加安全。
思考:
這時就面臨一個情況,如果忘記啟動菜單編輯的密碼,只要記得進入系統的密碼,即可進入系統修改配置文件,實現找回啟動菜單編輯密碼。那么如果忘記進入系統的密碼,該怎么辦?
這是不要著急,只要還記得啟動菜單編輯的密碼,就還有的救。
進入grub選單時,輸入真確密碼,然后選擇"c",鍵入"c"后,會出現以下界面,輸入三行命令,節課實現,繞過內核啟動,所以不需要進入系統的密碼。
需要注意的是,要指定自己的內核文件,根目錄及虛擬系統文件,圖中參數切勿照抄,要根據自己實際情況進行編輯。
如果兩個密碼都忘了,這是可就麻煩了,只有進入救援模式了。。。
進入救援模式,請參考http://groot.blog.51cto.com/11448219/1841771
進入救援模式后:
首先切換根目錄,
然后把配置文件的設置密碼那行給修改或刪除,然后退出重啟,就可以了。
原創文章,作者:Groot,如若轉載,請注明出處:http://www.www58058.com/47833
寫的很好,圖文并茂,有自己的思考