前言: 在實際生產(chǎn)環(huán)境之中,很多數(shù)據(jù)需要以加密形式進行存放,下面我們以tar打包壓縮/解包解壓命令來說明如何使用打包壓縮加密和解密解包解壓。加密使用 des3
-
進行打包壓縮加密
假設(shè)在/data
目錄下有一個目錄叫backup
需要進行打包壓縮并加密。
- 使用工具生產(chǎn)一串密鑰,這里使用openssl基于base64生成32位密鑰
[root@server data]# openssl rand -base64 32
LGgJ5R0zljjtvdEcaRgHegivnBw7UeBY0+Q7UYt0Epo=
[root@server data]#
- 進行打包壓縮加密
直接打包加密輸出
[root@server data]# tar -czvf - backup | openssl des3 -salt -k LGgJ5R0zljjtvdEcaRgHegivnBw7UeBY0+Q7UYt0Epo= -out backup.tar.gz
....
打包加密后使用dd
命令導(dǎo)出(文件后綴無所謂,des3為了記加密類型)
[root@server data]# tar -zcvf - backup | openssl des3 -salt -k LGgJ5R0zljjtvdEcaRgHegivnBw7UeBY0+Q7UYt0Epo= | dd of=backup.des3
...
-
進行解密解包解壓縮
- 如果沒有進行使用dd命令進行重新導(dǎo)出的,可以直接使用以下命令進行解
[root@server data]# openssl des3 -d -k LGgJ5R0zljjtvdEcaRgHegivnBw7UeBY0+Q7UYt0Epo= -salt -in backup.tar.gz | tar xzf -
...
???? 2. 如果使用dd命令,請使用以下命令進行
[root@server data]# dd if=backup.des3 | openssl des3 -d -k LGgJ5R0zljjtvdEcaRgHegivnBw7UeBY0+Q7UYt0Epo= | tar -zvxf -
...
注意:由于在命令行直接把密鑰寫進進行加密,所有一般系統(tǒng)在用戶的命令歷史里面會記錄了加密的密鑰,這樣進行加密后,需要清掉涉及的歷史記錄或在進行清空,或者在加密時候不要使用
-k
參數(shù)以及后面的密鑰,等詢問密鑰時候再進行輸入,這樣就不會泄漏密鑰。解密時候也一樣