tar 打包压缩加密和解密解包解压

前言: 在实际生产环境之中,很多数据需要以加密形式进行存放,下面我们以tar打包压缩/解包解压命令来说明如何使用打包压缩加密和解密解包解压。加密使用 des3

  • 进行打包压缩加密
    假设在 /data 目录下有一个目录叫 backup 需要进行打包压缩并加密。
  1. 使用工具生产一串密钥,这里使用openssl基于base64生成32位密钥
[root@server data]# openssl rand -base64 32
LGgJ5R0zljjtvdEcaRgHegivnBw7UeBY0+Q7UYt0Epo=
[root@server data]#
  1. 进行打包压缩加密

直接打包加密输出

[root@server data]# tar -czvf - backup | openssl des3 -salt -k LGgJ5R0zljjtvdEcaRgHegivnBw7UeBY0+Q7UYt0Epo= -out backup.tar.gz  
....

打包加密后使用dd命令导出(文件后缀无所谓,des3为了记加密类型)

[root@server data]#  tar -zcvf - backup | openssl des3 -salt -k LGgJ5R0zljjtvdEcaRgHegivnBw7UeBY0+Q7UYt0Epo= | dd of=backup.des3
...

  • 进行解密解包解压缩
    1. 如果没有进行使用dd命令进行重新导出的,可以直接使用以下命令进行解
[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 -
...

注意:由于在命令行直接把密钥写进进行加密,所有一般系统在用户的命令历史里面会记录了加密的密钥,这样进行加密后,需要清掉涉及的历史记录或在进行清空,或者在加密时候不要使用 -k 参数以及后面的密钥,等询问密钥时候再进行输入,这样就不会泄漏密钥。解密时候也一样
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,010评论 19 139
  • WinRAR - 最新版本的更新 版本 5.50 1. WinRAR 和命令行 RAR 默认使用 RAR ...
    王舒璇阅读 2,417评论 0 2
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,148评论 1 32
  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,611评论 9 467
  • 前两天发了条朋友圈,如下: 邻居评论问我是不是摄影师,夸我拍的照片真好看。我回复说:不是摄影师,喜欢用自己的视角拍...
    黄慧云yun阅读 208评论 0 3