用戶可以在終端通過cat命令查看:cat /etc/shadow
網(wǎng)站的建設(shè)創(chuàng)新互聯(lián)專注網(wǎng)站定制,經(jīng)驗(yàn)豐富,不做模板,主營(yíng)網(wǎng)站定制開發(fā).小程序定制開發(fā),H5頁面制作!給你煥然一新的設(shè)計(jì)體驗(yàn)!已為成都砂巖浮雕等企業(yè)提供專業(yè)服務(wù)。
NIX/Linux的密碼文件原來采bai用/etc/passwd,共有7個(gè)字段。用戶的密碼加密后放在每一行的第二個(gè)字段里,這個(gè) /etc/passwd文件在一般情況下是所有用戶可讀,只有root用戶可寫的,這樣不良用戶就可能讀取加密后的密碼字串來取得密碼。
因?yàn)檫@個(gè)安全原因,設(shè)置一個(gè)/etc/shadow文件專門用于保存密碼且它的權(quán)限一般是root可讀,沒有其他權(quán)限。加密后的密碼文件就不能被普通用戶讀取。做法是把/etc/passwd對(duì)應(yīng)的密碼字段用*號(hào)表示,在/etc/shadow里對(duì)應(yīng)的一行,有用戶名和真正的密碼加密字串,其他的字段一般留空。
擴(kuò)展資料:
在Linux中普通文件和目錄文件保存在稱為塊物理設(shè)備的磁盤或者磁帶上。一套Linux系統(tǒng)支持若干物理盤,每個(gè)物理盤可定義一個(gè)或者多個(gè)文件系統(tǒng)。(類比于微機(jī)磁盤分區(qū))。每個(gè)文件系統(tǒng)由邏輯塊的序列組成,一個(gè)邏輯盤空間一般劃分為幾個(gè)用途各不相同的部分,即引導(dǎo)塊、超級(jí)塊、inode區(qū)以及數(shù)據(jù)區(qū)等。
參考資料來源:百度百科-Linux文件系統(tǒng)
1.
oppnssl
md5
加密字符串的方法
a.手動(dòng)輸入命令及過程如下:
代碼如下:
#openssl
//在終端中輸入openssl后回車。
OpenSSL
md5
//輸入md5后回車
123456
//接著輸入123456,不要輸入回車。然后按3次ctrl+d。
123456e10adc3949ba59abbe56e057f20f883e
//123456后面的就是密文了
解釋:為何在輸入123456后不回車呢?
是因?yàn)閛penssl默認(rèn)會(huì)把回車符當(dāng)做要加密的字符串中的一個(gè)字符,所以得到的結(jié)果不同。如果你輸入123456后回車,在按2次ctrl+d。得到的結(jié)果是:
代碼如下:
OpenSSL
md5
123456
f447b20a7fcbf53a5d5be013ea0b15af
//因?yàn)閛penssl不忽略回車符導(dǎo)致的
b.或者直接用管道命令
代碼如下:
#
echo
-n
123456
|
openssl
md5
//必須要有-n參數(shù),否則就不是這個(gè)結(jié)果了。
e10adc3949ba59abbe56e057f20f883e
解釋:為何要加-n這個(gè)參數(shù)?
-n就表示不輸入回車符,這樣才能得到正確的結(jié)果。如果你不加-n,那么結(jié)果和前面說的一樣為:
代碼如下:
f447b20a7fcbf53a5d5be013ea0b15af
//因?yàn)閛penssl不忽略回車符導(dǎo)致的
2.用openssl加密文件。
代碼如下:
#openssl
md
5
-in
1.txt
啟動(dòng)流程:
BIOS ——》 MBR(主引導(dǎo)記錄,找到系統(tǒng)在哪個(gè)分區(qū)) ——》 boot loader(grub) ——》kernel(內(nèi)核)——》進(jìn)入啟動(dòng)級(jí)別init
硬盤的最小讀取單位是一個(gè)扇區(qū),一個(gè)扇區(qū)大小是512字節(jié)
查看操作系統(tǒng)的版本:cat /etc/redhat-release
查看內(nèi)核版本:uname -r
查看內(nèi)核信息:uname -a
系統(tǒng)的啟動(dòng)級(jí)別:
init 0:關(guān)機(jī)
init 1:?jiǎn)斡脩裟J剑荒躵oot用戶登錄的模式,可以直接跳過密碼
init 2:多用戶模式,但是沒有NFS(network filesystem),即無網(wǎng)絡(luò)模式
init 3:完全多用戶模式,也是命令行模式
init 4:安全模式,一般開發(fā)者調(diào)試使用
init 5:圖形模式
init 6:重啟
更改系統(tǒng)啟動(dòng)級(jí)別:
vim /etc/inittab:在最后一行的?id 修改,如下圖
通過單用戶模式跳過用戶密碼登錄:
通過grub界面進(jìn)入內(nèi)核,操作參數(shù),改變啟動(dòng)級(jí)別,進(jìn)入單用戶模式
在系統(tǒng)讀秒時(shí),按任意鍵進(jìn)入grub界面,然后按 e 進(jìn)入kernel
選擇kernel,按 e 進(jìn)入
進(jìn)入之后,按 空格 進(jìn)入啟動(dòng)級(jí)別設(shè)置
輸入啟動(dòng)級(jí)別為 1 ,再按 enter 返回內(nèi)核,再按 b 進(jìn)入單用戶模式
grub加密:?
首先設(shè)置grub密碼:?
grub-md5-crypt
passwd:123456?
這里會(huì)得到一串加密字符串?
然后編輯grub的配置文件:
vim /etc/grub.conf
grub的配置文件內(nèi)容:
default=0:代表默認(rèn)使用第一個(gè)內(nèi)核
timeout=5:代表進(jìn)入系統(tǒng)時(shí)的讀秒時(shí)間,這里是5秒
hiddenmenu:隱藏它下面的內(nèi)容
password --md5:添加得到的grub密碼的加密字符串
title:內(nèi)核信息
將加密的字符串添加好之后,再通過grub進(jìn)入kernel時(shí)就需要輸入密碼
如果grub被加密了,可以進(jìn)入BIOS,通過外接光盤進(jìn)入救援安裝模式,然后進(jìn)入到系統(tǒng)中,
再 vi?/mnt/sysimage/etc/grub.conf,編輯配置文件,刪除grub加密,就可以再用單用戶模式跳過用戶密碼登陸
轉(zhuǎn)自 嘉為教育-rhce認(rèn)證_rhce培訓(xùn)_linux培訓(xùn)_linux認(rèn)證_linux考證
這里以字符串123456為例子,它的md5密文值為:e10adc3949ba59abbe56e057f20f883e
這里以1.txt為需要被加密的文件。
一、 用oppnssl md5 加密字符串和文件的方法。
1. oppnssl md5 加密字符串的方法
a.手動(dòng)輸入命令及過程如下:
#openssl //在終端中輸入openssl后回車。
OpenSSL md5 //輸入md5后回車
123456 //接著輸入123456,不要輸入回車。然后按3次ctrl+d。
123456e10adc3949ba59abbe56e057f20f883e //123456后面的就是密文了
解釋:為何在輸入123456后不回車呢?
是因?yàn)閛penssl默認(rèn)會(huì)把回車符當(dāng)做要加密的字符串中的一個(gè)字符,所以得到的結(jié)果不同。如果你輸入123456后回車,在按2次ctrl+d。得到的結(jié)果是:
OpenSSL md5
123456
f447b20a7fcbf53a5d5be013ea0b15af //因?yàn)閛penssl不忽略回車符導(dǎo)致的
b.或者直接用管道命令
# echo -n 123456 | openssl md5 //必須要有-n參數(shù),否則就不是這個(gè)結(jié)果了。
e10adc3949ba59abbe56e057f20f883e
解釋:為何要加-n這個(gè)參數(shù)?
-n就表示不輸入回車符,這樣才能得到正確的結(jié)果。如果你不加-n,那么結(jié)果和前面說的一樣為:
f447b20a7fcbf53a5d5be013ea0b15af //因?yàn)閛penssl不忽略回車符導(dǎo)致的
2.用openssl加密文件。
#openssl md 5 -in 1.txt
##################################################3
Openssl其他相關(guān)加密的命令參數(shù):引自:實(shí)用命令:利用openssl進(jìn)行BASE64編碼解碼、md5/sha1摘要、AES/DES3加密解密 收藏
一. 利用openssl命令進(jìn)行BASE64編碼解碼(base64 encode/decode)
1. BASE64編碼命令
對(duì)字符串‘a(chǎn)bc’進(jìn)行base64編碼:
# echo abc | openssl base64
YWJjCg== (編碼結(jié)果)
如果對(duì)一個(gè)文件進(jìn)行base64編碼(文件名t.txt):
# openssl base64 -in t.txt
2. BASE64解碼命令
求base64后的字符串‘YWJjCg==’的原文:
# echo YWJjCg== | openssl base64 -d
abc (解碼結(jié)果)
如果對(duì)一個(gè)文件進(jìn)行base64解碼(文件名t.base64):
# openssl base64 -d -in t.base64
二. 利用openssl命令進(jìn)行md5/sha1摘要(digest)
1. 對(duì)字符串‘a(chǎn)bc’進(jìn)行md5摘要計(jì)算:echo abc | openssl md5
若對(duì)某文件進(jìn)行md5摘要計(jì)算:openssl md5 -in t.txt
2. 對(duì)字符串‘a(chǎn)bc’進(jìn)行sha1摘要計(jì)算:echo abc | openssl sha1
若對(duì)某文件進(jìn)行sha1摘要計(jì)算:openssl sha1 -in t.txt
三. 利用openssl命令進(jìn)行AES/DES3加密解密(AES/DES3 encrypt/decrypt)
對(duì)字符串‘a(chǎn)bc’進(jìn)行aes加密,使用密鑰123,輸出結(jié)果以base64編碼格式給出:
# echo abc | openssl aes-128-cbc -k 123 -base64
U2FsdGVkX18ynIbzARm15nG/JA2dhN4mtiotwD7jt4g= (結(jié)果)
對(duì)以上結(jié)果進(jìn)行解密處理:
# echo U2FsdGVkX18ynIbzARm15nG/JA2dhN4mtiotwD7jt4g= | openssl aes-128-cbc -d -k 123 -base64
abc (結(jié)果)
若要從文件里取原文(密文)進(jìn)行加密(解密),只要指定 -in 參數(shù)指向文件名就可以了。
進(jìn)行des3加解密,只要把命令中的aes-128-cbc換成des3就可以了。
注:只要利用openssl help就可以看到更多的安全算法了。
###############################################
二、 利用php的md5函數(shù)加密字符串
#touch a.php //創(chuàng)建a.php文件
#vi a.php //用vi 編輯a.php文件
將?php echo md5(123456); ?輸入進(jìn)去后保存
#php a.php //運(yùn)行a.php文件
顯示:e10adc3949ba59abbe56e057f20f883e
三、 利用md5sum命令
A.在linux或Unix上,md5sum是用來計(jì)算和校驗(yàn)文件報(bào)文摘要的工具程序。一般來說,安裝了Linux后,就會(huì)有md5sum這個(gè)工具,直接在命令行終端直接運(yùn)行??梢杂孟旅娴拿顏慝@取md5sum命令幫助 man md5sum
#md5sum –help
有個(gè)提示:“With no FILE, or when FILE is -, read standard input.”翻譯過來就是“如果沒有輸入文件選項(xiàng)或者文件選項(xiàng)為 - ,則從標(biāo)磚讀取輸入內(nèi)容”,即可以直接從鍵盤讀取字符串來加密。
利用md5sum加密字符串的方法
# md5sum //然后回車
123456 //輸入123456.然后按兩次ctrl+d.
顯示:
123456e10adc3949ba59abbe56e057f20f883e 紅色代表加密后的值
還可以用管道命令:
#echo -n '123123' | md5sum
或者寫成md5加密腳本,名字叫md5.sh,
將以下內(nèi)容復(fù)制進(jìn)腳本里:
#!/bin/bash
echo -n $1 | md5sum | awk '{print $1}'
保存后,給腳本執(zhí)行權(quán)限。
#sh md5.sh 123456
顯示:e10adc3949ba59abbe56e057f20f883e
B.其實(shí)也可以將文本放入文本文件,然后用md5sum 加密改文本,也可以得到字符串加密的值。過程如下:
#touch a.txt
#echo -n 123456 a.txt //將123456寫進(jìn)文本文件,不能丟了 –n參數(shù),避免回車符干擾
#md5sum a.txt
顯示:e10adc3949ba59abbe56e057f20f883e a.txt
ctrl+d有兩個(gè)含義:
一是向程序發(fā)送文件輸入結(jié)束符EOF。
二是向程序發(fā)送exit退出指令。程序收到信號(hào)后具體動(dòng)作是結(jié)束輸入、然后等待,還是直接退出,那就要看該程序捕獲信號(hào)后是如何操作的了。
md5sum屬于第一個(gè)含義。兩次strl+d了,第一次讀取EOF指令,再次捕獲就會(huì)當(dāng)成exit指令。而shell一類的程序,會(huì)直接把ctrl+d解析為退出指令。
linux不能運(yùn)行程序是被加密了。要保證你安裝的是正確的,接著保證你的這個(gè)可執(zhí)行文件有當(dāng)前登錄賬號(hào)的執(zhí)行權(quán)限,可以用lsal查看一下。
Linux系統(tǒng)下,程序從安全的角度來考慮,是不允許以root用戶來啟動(dòng)的,這類程序一般會(huì)開放一個(gè)或多個(gè)端口,和其它程序或者外界進(jìn)行數(shù)據(jù)交換,或者其本身就存儲(chǔ)著重要數(shù)據(jù),比如MySQL。一但被攻破,入侵者會(huì)獲得root權(quán)限,從而掌握整個(gè)系統(tǒng)的所有權(quán)。
linux命令介紹
linux命令是對(duì)Linux系統(tǒng)進(jìn)行管理的命令。對(duì)于Linux系統(tǒng)來說,無論是中央處理器、內(nèi)存、磁盤驅(qū)動(dòng)器、鍵盤、鼠標(biāo),還是用戶等都是文件,Linux系統(tǒng)管理的命令是它正常運(yùn)行的核心,與之前的DOS命令類似。linux命令在系統(tǒng)中有兩種類型,內(nèi)置Shell命令和Linux命令。
首先介紹一個(gè)名詞控制臺(tái)console,它就是我們通常見到的使用字符操作界面的人機(jī)接口,例如dos。我們說控制臺(tái)命令,就是指通過字符界面輸入的可以操作系統(tǒng)的命令,例如dos命令就是控制臺(tái)命令。我們要了解的是基于Linux操作系統(tǒng)的基本控制臺(tái)命令。
有一點(diǎn)一定要注意,和dos命令不同的是,Linux的命令也包括文件名等等對(duì)大小寫是敏感的,也就是說,如果你輸入的命令大小寫不對(duì)的話,系統(tǒng)是不會(huì)做出你期望的響應(yīng)的。
合力天下LINUX防泄密系統(tǒng)概述
Linux具有天生秉承的優(yōu)勢(shì),越來越多的企業(yè)轉(zhuǎn)向了Linux的開發(fā)和應(yīng)用。使用Linux操作系統(tǒng)的單位多數(shù)都擁有自主知識(shí)產(chǎn)權(quán),如果有絲毫的泄露,都會(huì)造成巨大的損失。 基于多年的數(shù)據(jù)防泄漏防護(hù)經(jīng)驗(yàn),北京合力天下數(shù)碼信息技術(shù)有限公司自主研發(fā)了一套運(yùn)行在Linux平臺(tái)環(huán)境下,防止Linux系統(tǒng)中自主知識(shí)產(chǎn)權(quán)泄密的產(chǎn)品。該系統(tǒng)在不改變用戶使用習(xí)慣、計(jì)算機(jī)文件格式和編譯程序的情況下,對(duì)指定類型的代碼文件進(jìn)行實(shí)時(shí)、透明的加解密。所有通過非法途徑獲得的數(shù)據(jù),都將以亂碼文件形式表現(xiàn)。
合力天下LINUX防泄密系統(tǒng)是一款功能強(qiáng)大且易于使用的LINUX文檔加密軟件產(chǎn)品,該系統(tǒng)采用“驅(qū)動(dòng)層AES智能透明加密技術(shù)”對(duì)指定類型的文件進(jìn)行實(shí)時(shí)、強(qiáng)制、透明的加解密。在正常使用時(shí),計(jì)算機(jī)內(nèi)存中的文件是以受保護(hù)的明文形式存放,但硬盤上保存的數(shù)據(jù)卻處于加密狀態(tài),如果沒有合法的使用身份、訪問權(quán)限和正確的安全通道,所有加密文件都將以密文狀態(tài)保存。
合力天下LINUX防泄密系統(tǒng)穩(wěn)定可靠,并且具備良好的可擴(kuò)展性,能同時(shí)滿足企業(yè)其它應(yīng)用系統(tǒng)文檔加密需求,有效防止數(shù)據(jù)丟失或泄露,有助于更深入、更全面地實(shí)施數(shù)據(jù)保護(hù),從而確保企業(yè)機(jī)密數(shù)據(jù)的高度安全。
合力天下LINUX防泄密系統(tǒng)產(chǎn)品架構(gòu)
合力天下LINUX防泄密系統(tǒng)采用控制臺(tái)/服務(wù)器/代理(B/S/C)體系:服務(wù)器(Server)、客戶端代理(Agent)和控制臺(tái)(Management Console)三部分組成。
M/S/A三部分相互協(xié)調(diào)工作:管理員通過控制臺(tái)的WEB瀏覽器制訂靈活的安全策略;安全策略被保存在服務(wù)器上;終端計(jì)算機(jī)上安裝的代理主動(dòng)連接服務(wù)器;接收到網(wǎng)絡(luò)連接后,服務(wù)器把制訂好的策略下發(fā)到該終端計(jì)算機(jī);終端計(jì)算機(jī)代理的安全引擎執(zhí)行安全策略,進(jìn)行安全控制。
合力天下LINUX防泄密系統(tǒng)部署模式
合力天下LINUX防泄密系統(tǒng)功能特點(diǎn)
一 驅(qū)動(dòng)層透明加密
針對(duì)研發(fā)單位,可對(duì)JAVA、C、C++ 等各種源代碼文件進(jìn)行透明加密保護(hù);
針對(duì)手機(jī)、電子書等版權(quán)單位,可針對(duì)任何需要保護(hù)其版權(quán)的文檔類型進(jìn)行透明加密保護(hù);
針對(duì)辦公環(huán)境,可對(duì)任何文件類型加密。
二 編譯加密源代碼
針對(duì)研發(fā)單位,加密的源代碼文檔無需解密為明文,可直接通過編譯進(jìn)程進(jìn)行編譯。
編譯后的Image文件是明文,便于產(chǎn)品的測(cè)試與分發(fā)。
三 網(wǎng)絡(luò)通信安全隧道
加密文檔(如源代碼)需要通過文檔版本管理軟件(如CVS\SVN\GIT)通過網(wǎng)絡(luò)或文件系統(tǒng)進(jìn)行集中備份與共享。加密文件系統(tǒng)提供網(wǎng)絡(luò)安全隧道功能,保護(hù)網(wǎng)絡(luò)通信中的加密文件。
如加密文件需要保存到服務(wù)器上,既可以密文存儲(chǔ)到服務(wù)器上也可以明文存儲(chǔ)到服務(wù)器上。
如明文存儲(chǔ)到服務(wù)器上,加密系統(tǒng)的網(wǎng)絡(luò)安全隧道可與合力天下LINUX防泄密系統(tǒng)服務(wù)器數(shù)據(jù)保護(hù)網(wǎng)關(guān)聯(lián)動(dòng),實(shí)現(xiàn)加密文檔在上傳到服務(wù)器網(wǎng)關(guān)自動(dòng)解密,下載文件時(shí)網(wǎng)關(guān)自動(dòng)加密。如此既保障了文檔的可靠性、可用性,又保障文檔的安全性。
四 進(jìn)程合法性驗(yàn)證
對(duì)進(jìn)程進(jìn)行簽名認(rèn)證,驗(yàn)證通過的進(jìn)程,才是合法進(jìn)程,才能對(duì)加密文件行讀寫操作。
任何偽造進(jìn)程的方式都無法讀寫加密文檔。如更改進(jìn)程名稱、SVN多種協(xié)議讀寫加密文件等都無法解密文件。
五 自身安全強(qiáng)保護(hù)
系統(tǒng)具有自我保護(hù)能力,在自身受到破壞不完整時(shí)整個(gè)系統(tǒng)依然能夠保障數(shù)據(jù)的安全性。
粘貼/拷貝控制
系統(tǒng)具有防粘貼拷貝能力,不可信進(jìn)程可以拷貝任何數(shù)據(jù)到可信進(jìn)程;但可信進(jìn)程不允許拷貝數(shù)據(jù)到任何其它進(jìn)程,有效防止數(shù)據(jù)的泄露。
六 文件批量加密
可對(duì)明文文件批量加密,針對(duì)開源的文件很方便的合并到工程里面。
批量加密流程具有保護(hù)機(jī)制,防止已經(jīng)加密的文件再次加密,造成文件的損壞。
七 可離線工作
離線即客戶端網(wǎng)絡(luò)連接不上加密服務(wù)器所處的狀態(tài),如外出辦公等。
加密系統(tǒng)支持離線辦公,離線的安全策略為最近一次在線時(shí)的文件加密策略。
八 與Windows加密系統(tǒng)兼容
Linux加密系統(tǒng)與Windows加密系統(tǒng)相互兼容:Windows加密的文件在Linux下能夠操作,在Linux加密的文件在Windows下能夠操作。
合力天下linux防泄密系統(tǒng)加密規(guī)則
1.不可信進(jìn)程規(guī)則
不可信進(jìn)程創(chuàng)建、編輯的文件都是明文文件。
不可信進(jìn)程讀取的加密文件是亂碼,不可以使用。
2.可信進(jìn)程規(guī)則
可信進(jìn)程創(chuàng)建符合加密規(guī)則的文件是加密的文件。
可信進(jìn)程可以透明讀寫編輯加密文件。
原不加密但符合加密規(guī)則文件,一但可信進(jìn)程進(jìn)行了編輯,則原文件成為加密文件。
可信進(jìn)程在未創(chuàng)建、讀寫加密文件前,創(chuàng)建不符合加密規(guī)則的文件是明文的。
可信進(jìn)程在未創(chuàng)建、讀寫加密文件前,可以任意編輯明文文件,該文件不被加密。
可信進(jìn)程一旦創(chuàng)建、編輯了加密文件,則后續(xù)創(chuàng)建、編輯的所有文件都是加密的。
3.進(jìn)程間拷貝粘貼規(guī)則
可以自由的從不可信進(jìn)程中粘貼拷貝文字到可信進(jìn)程。
可以自由的從不可信進(jìn)程中粘貼拷貝文字到不可信進(jìn)程。
可信進(jìn)程的文字拷貝受到安全保護(hù),禁止隨意拷貝文字。
4.編譯器進(jìn)程規(guī)則
編譯器創(chuàng)建的二進(jìn)制文件是明文的,可以隨意燒到嵌入式設(shè)備中。
5.離線加密規(guī)則
支持離線文檔加密。
離線規(guī)則為最近一次上線的文檔加密規(guī)則。
6.文件批量加密
支持文件批量代碼加密轉(zhuǎn)化。
已經(jīng)加密的文件不會(huì)被二次加密。
合力天下LINUX防泄密系統(tǒng)功能表