前段时间公司项目中 , 需要给我们合作公司一个批量改数据的linux shell脚本 , 但是shell脚本是明文的代码 , 出于安全考虑(其实是不想让他们知道我们改的哪的数据) , 不能将明文脚本给合作公司 , 于是我找了两种给shell脚本加密的方法 , 现在分享给大家 。
![shell脚本明文不安全,这样做,两步安全加密](http://img.jiangsulong.com/220406/10510U305-0.jpg)
文章插图
gzexelinux系统一般自带一款加密工具gzexe , 但是这个工具可以还原出出加密后的shell脚本 。(不建议使用)
我们先创建一个简单的测试脚本test.sh , 输出1-5数字 , 内容如下:
![shell脚本明文不安全,这样做,两步安全加密](http://img.jiangsulong.com/220406/10510SS4-1.jpg)
文章插图
使用gzexe对脚本加密 , 我们先看下gzexe的帮助
![shell脚本明文不安全,这样做,两步安全加密](http://img.jiangsulong.com/220406/10510W054-2.jpg)
文章插图
【shell脚本明文不安全,这样做,两步安全加密】
从帮助可以看出加【-d】参数可以解密 , 我们先对 test.sh脚本进行加密 , 在当前目录会自动备份原来的脚本为 filename.sh~
#gzexe test.sh
![shell脚本明文不安全,这样做,两步安全加密](http://img.jiangsulong.com/220406/10510V0S-3.jpg)
文章插图
因为加密后的脚本会有乱码 , 我们用二进制对比下加密前和加密后的脚本 , 从打印看加密前后已经发生了变化 , 执行加密后的脚本可以顺利打印1-5数字 。
![shell脚本明文不安全,这样做,两步安全加密](http://img.jiangsulong.com/220406/10510W940-4.jpg)
文章插图
我们再还原看下效果:
#gzexe -d test.sh
![shell脚本明文不安全,这样做,两步安全加密](http://img.jiangsulong.com/220406/10510S152-5.jpg)
文章插图
- 从打印看已经还原了原来的脚本 , 并执行成功 。
推荐阅读
- 一篇文章让你读懂linux shell编程--基础篇
- 60行C代码实现一个shell
- 详解Linux Shell脚本编写技巧,附实例说明
- PHP脚本占用内存太多,解决方案
- 手把手教你在iPhone上创建Workflow脚本,简直不要太好玩
- Linux Shell编程
- Linux中bash shell环境变量
- 一套完整的直播带货流程文案脚本模板
- MySQL 运维常用脚本
- mysql命令行脚本