重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
Linux的密碼分為用戶密碼及grub啟動密碼,讓我分別來講解一下.
創新互聯-專業網站定制、快速模板網站建設、高性價比尖山網站開發、企業建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式尖山網站制作公司更省心,省錢,快速模板網站建設找我們,業務覆蓋尖山地區。費用合理售后完善,10余年實體公司更值得信賴。
用戶密碼破解過程:
開機來到grub系統引導界面
clip_image002
倒數結束前按”e”鍵進入下面畫面
clip_image004
再次按”e”鍵進入下層界面
clip_image006
選中間一行然后再次按”e”鍵進入編輯模式,在后面輸入 single 后回車確認
clip_image008
回到上層界面后第二行后面多了single 有了他我們就能使用單用戶模式啟動系統了,好了按”b”鍵繼續啟動系統
clip_image010
進入單用戶模式后我們就能使用編輯器來修改用戶密碼文件或是修改shandow密碼信息文件了,用vi編輯器打開passwd文件(這里就不講vi編輯器的使用了)
clip_image012
去掉對應用戶的密碼標志位(注意是兩個冒號間的x兩邊的”:”還是要保留的,然后后存盤退出
clip_image014
或者也可以修改shadow密碼信息文件
clip_image016
修改對應用戶的密碼信息位(去掉紅框中的字符信息,同樣注意保留兩邊的”:”)然后存盤就可以存盤退出了
clip_image018
退出后用reboot命令重啟系統,此時剛才更改的root用戶已經就成空密碼了,再次進入系統后記得用命令”passwd 用戶名”修改用戶密碼,
這里以字符串123456為例子,它的md5密文值為:e10adc3949ba59abbe56e057f20f883e\x0d\x0a這里以1.txt為需要被加密的文件。\x0d\x0a\x0d\x0a一、用oppnsslmd5加密字符串和文件的方法。\x0d\x0a1.oppnsslmd5加密字符串的方法\x0d\x0aa.手動輸入命令及過程如下:\x0d\x0a#openssl//在終端中輸入openssl后回車。\x0d\x0aOpenSSLmd5//輸入md5后回車\x0d\x0a123456//接著輸入123456,不要輸入回車。然后按3次ctrl+d。\x0d\x0a123456e10adc3949ba59abbe56e057f20f883e//123456后面的就是密文了\x0d\x0a解釋:為何在輸入123456后不回車呢?\x0d\x0a是因為openssl默認會把回車符當做要加密的字符串中的一個字符,所以得到的結果不同。如果你輸入123456后回車,在按2次ctrl+d。得到的結果是:\x0d\x0aOpenSSLmd5\x0d\x0a123456\x0d\x0af447b20a7fcbf53a5d5be013ea0b15af//因為openssl不忽略回車符導致的\x0d\x0ab.或者直接用管道命令\x0d\x0a#echo-n123456|opensslmd5//必須要有-n參數,否則就不是這個結果了。\x0d\x0ae10adc3949ba59abbe56e057f20f883e\x0d\x0a解釋:為何要加-n這個參數?\x0d\x0a-n就表示不輸入回車符,這樣才能得到正確的結果。如果你不加-n,那么結果和前面說的一樣為:\x0d\x0af447b20a7fcbf53a5d5be013ea0b15af//因為openssl不忽略回車符導致的\x0d\x0a2.用openssl加密文件。\x0d\x0a#opensslmd5-in1.txt\x0d\x0a\x0d\x0a##################################################3\x0d\x0aOpenssl其他相關加密的命令參數:引自:實用命令:利用openssl進行BASE64編碼解碼、md5/sha1摘要、AES/DES3加密解密收藏\x0d\x0a一.利用openssl命令進行BASE64編碼解碼(base64encode/decode)\x0d\x0a1.BASE64編碼命令\x0d\x0a對字符串‘abc’進行base64編碼:\x0d\x0a#echoabc|opensslbase64\x0d\x0aYWJjCg==(編碼結果)\x0d\x0a如果對一個文件進行base64編碼(文件名t.txt):\x0d\x0a#opensslbase64-int.txt\x0d\x0a2.BASE64解碼命令\x0d\x0a求base64后的字符串‘YWJjCg==’的原文:\x0d\x0a#echoYWJjCg==|opensslbase64-d\x0d\x0aabc(解碼結果)\x0d\x0a如果對一個文件進行base64解碼(文件名t.base64):\x0d\x0a#opensslbase64-d-int.base64\x0d\x0a二.利用openssl命令進行md5/sha1摘要(digest)\x0d\x0a1.對字符串‘abc’進行md5摘要計算:echoabc|opensslmd5\x0d\x0a若對某文件進行md5摘要計算:opensslmd5-int.txt\x0d\x0a2.對字符串‘abc’進行sha1摘要計算:echoabc|opensslsha1\x0d\x0a若對某文件進行sha1摘要計算:opensslsha1-int.txt\x0d\x0a三.利用openssl命令進行AES/DES3加密解密(AES/DES3encrypt/decrypt)\x0d\x0a對字符串‘abc’進行aes加密,使用密鑰123,輸出結果以base64編碼格式給出:\x0d\x0a#echoabc|opensslaes-128-cbc-k123-base64\x0d\x0aU2FsdGVkX18ynIbzARm15nG/JA2dhN4mtiotwD7jt4g=(結果)\x0d\x0a對以上結果進行解密處理:\x0d\x0a#echoU2FsdGVkX18ynIbzARm15nG/JA2dhN4mtiotwD7jt4g=|opensslaes-128-cbc-d-k123-base64\x0d\x0aabc(結果)\x0d\x0a若要從文件里取原文(密文)進行加密(解密),只要指定-in參數指向文件名就可以了。\x0d\x0a進行des3加解密,只要把命令中的aes-128-cbc換成des3就可以了。\x0d\x0a注:只要利用opensslhelp就可以看到更多的安全算法了。\x0d\x0a###############################################\x0d\x0a\x0d\x0a二、利用php的md5函數加密字符串\x0d\x0a#toucha.php//創建a.php文件\x0d\x0a#via.php//用vi編輯a.php文件\x0d\x0a將輸入進去后保存\x0d\x0a#phpa.php//運行a.php文件\x0d\x0a顯示:e10adc3949ba59abbe56e057f20f883e\x0d\x0a三、利用md5sum命令\x0d\x0aA.在linux或Unix上,md5sum是用來計算和校驗文件報文摘要的工具程序。一般來說,安裝了Linux后,就會有md5sum這個工具,直接在命令行終端直接運行。可以用下面的命令來獲取md5sum命令幫助manmd5sum\x0d\x0a#md5sum_help\x0d\x0a有個提示:“WithnoFILE,orwhenFILEis-,readstandardinput.”翻譯過來就是“如果沒有輸入文件選項或者文件選項為-,則從標磚讀取輸入內容”,即可以直接從鍵盤讀取字符串來加密。\x0d\x0a利用md5sum加密字符串的方法\x0d\x0a#md5sum//然后回車\x0d\x0a123456//輸入123456.然后按兩次ctrl+d.\x0d\x0a顯示:\x0d\x0a123456e10adc3949ba59abbe56e057f20f883e紅色代表加密后的值\x0d\x0a還可以用管道命令:\x0d\x0a#echo-n'123123'|md5sum\x0d\x0a\x0d\x0a或者寫成md5加密腳本,名字叫md5.sh,\x0d\x0a將以下內容復制進腳本里:\x0d\x0a#!/bin/bash\x0d\x0aecho-n$1|md5sum|awk'{print$1}'\x0d\x0a\x0d\x0a保存后,給腳本執行權限。\x0d\x0a#shmd5.sh123456\x0d\x0a顯示:e10adc3949ba59abbe56e057f20f883e\x0d\x0aB.其實也可以將文本放入文本文件,然后用md5sum加密改文本,也可以得到字符串加密的值。過程如下:\x0d\x0a#toucha.txt\x0d\x0a#echo-n123456a.txt//將123456寫進文本文件,不能丟了_n參數,避免回車符干擾\x0d\x0a#md5suma.txt\x0d\x0a顯示:e10adc3949ba59abbe56e057f20f883ea.txt\x0d\x0a\x0d\x0actrl+d有兩個含義:\x0d\x0a一是向程序發送文件輸入結束符EOF。\x0d\x0a二是向程序發送exit退出指令。程序收到信號后具體動作是結束輸入、然后等待,還是直接退出,那就要看該程序捕獲信號后是如何操作的了。\x0d\x0amd5sum屬于第一個含義。兩次strl+d了,第一次讀取EOF指令,再次捕獲就會當成exit指令。而shell一類的程序,會直接把ctrl+d解析為退出指令。
openssl是可以加解密,但是你的要求是創建用戶并輸入密碼,據我所知,linux的passwd命令好象只能用鍵盤交互,沒法用腳本預設的。有個可用的法是:用useradd命令創建完用戶后,再用腳本修改/etc/shadow(這個文件是真正存放用戶密碼的地方)里的密碼段,這個密碼段是用hash算法加密的,好象是sha256還是sha512之類的吧,例如'000000',加密后是$6$7z4nJy/C69Wj$A65GjO61mBtErCbGNxIt1IUumPs/YUmeu1Zb7jElxNU/5TNmIDNx/YY0cA5CBBlgbjKyQlNpyofDL2k0UtKft1/etc/shadow的權限只有root用戶可以修改,因此這個腳本要由root來執行。
GNU Privacy Guard(GnuPG或GPG)是一種加密軟件,它是PGP加密軟件的滿足GPL的替代物。GnuPG依照由IETF訂定的OpenPGP技術標準設計。GnuPG用于加密、數字簽名及產生非對稱鑰匙對的軟件。
首先安裝GPG
sudo apt install gnupg
gpg --gen-key
Real name: 輸入用戶名
Email address: 輸入郵箱
Change (N)ame, (E)mail, or (O)kay/(Q)uit? O
最后查看
gpg --list-keys