最近某個公家單位客戶提到該如何將 Solaris 上 Oracle DB cold backup 產出的 data files tar 檔案加密。該客戶目前做法是先將 DB 主機備份的 tar 檔傳輸到某 Windows 備份機器上後在使用 winrar 的密碼功能來進行加密,但這種作法往往要耗費掉客戶 6~7 個小時的時間。因此建議客戶使用 Unix OS command 在 server 端直接加密即可。
在此列出 Unix 下比較常見的幾個加密工具與用法:
* openssl 算是比較廣為人知的加密工具,並且提供了多種不同的加密演算法。
加密語法:openssl enc -e -des3 -in /tmp/passwd -out /tmp/passwd.cpt
解密語法:openssl enc -d -des3 -in /tmp/passwd.cpt -out /tmp/passwd
若要使用密碼檔,可先將密碼寫入至一檔案內,並在指令最後面加上 -k 密碼檔檔名,例如:
openssl enc -e -des3 -in /tmp/passwd -out /tmp/passwd.cpt -k key.cpt
openssl enc -d -des3 -in /tmp/passwd.cpt -out /tmp/passwd -k key.cpt
PS:在測試時發現,當來源檔過大時,可能會出現無法加密的錯誤訊息,或許後續版本已有修正。另外,該工具在非 linux 平台可能需要額外安裝。
* crypt 相較於 openssl,crypt 提供的加密演算法就沒有那麼豐富,但足以滿足 end-user 的需求。
加密語法:cat /tmp/passwd | crypt a12345 > /tmp/passwd.crypt
解密語法:cat /tmp/passwd.crypt | crypt a12345 > /tmp/passwd
其中的 a12345 為加解密密碼。
沒有留言:
張貼留言