[转]Linux中Shell脚本的加密与解密

我们写的shell脚本里面通常会包含帐号密码等信息或者你不想让别人看到的信息,那么把写好的shell脚本进行简单的加密显得有些必要了。
常用的shell加密方法有四种,分别是通过gzexe加密、通过shc加密,通过UPX加密和通过openssl加密。
这篇博客就针对这四种加密算法做一个简单的简介。
1.GZEXE压缩算法
这个算法不是很高级,主要是为了压缩代码而使用的。严格意义上来说不算是加密工具,只不过是直接打开显示的是乱码的,有很多人对此很无奈,我也就简单简介下。
gzexe一般为系统自带,需要加密的时候只需要写:

  1. gzexe

就可以把原来的脚本进行压缩处理,生成个类似于gz格式的压缩脚本。解压缩此类加密的脚 本也很简单,只需要运行

  1. gzexe –d 脚 本.sh

就可以解开,回复成原有脚本了。
2.SHC加密算法
这算是个稍微高档一点的算法,是真正意义上的加密。
SHC安装方法:

  1. wget http://www.datsi.fi.upm.es/%7Efrosal/sources/shc-3.8.9.tgz
  2. tar vxf shc–3.8.9.tgz
  3. cd shc–3.8.9
  4. make test
  5. make strings
  6. make install

使用方法:

  1. shc –v –f 脚 本名称.sh

-v 是现实加密过程
-f 后面跟需要加密的文件
解密方法也很简单,只需要安装 Unshc 软件,安装:

  1. wget –N —no–check–certificate –O /usr/local/bin/unshc https://raw.githubusercontent.com/yanncam/UnSHc/master/latest/unshc.sh && chmod +x /usr/local/bin/unshc

使用:

  1. unshc 脚 本名称.sh

3.UPX加密算法
UPX实际上也是一款轻量级的压缩工具,下载就可以使用,UPX下载直通车
在Linux系统中记得给UPX权限
加壳命令:

  1. ./upx 脚 本名称.sh

脱壳命令:

  1. ./upx –d 脚 本名称.sh

4.openssl加密
简介:想使用OpenSSL对文件进行加密,其实就跟对消息进行加密一样简单。唯一的区别在于,我们不是使用echo命令,而是使用-in选项,后面跟以我们想进行加密的实际文件,并使用-out选项,这会指令OpenSSL将经过加密的文件存储到某个名称的文件中:
加密:

  1. $ openssl enc –aes–256–cbc –in /etc/services –out services.dat

解密:

  1. $ openssl enc –aes–256–cbc –d –in services.dat > services.txt
  2. enter aes–256–cbc decryption password:

推荐站内搜索:cn域名价格、shopex空间、查询ip、com域名注册1元、php空间推荐、代理服务ip、域名如何备案、国外服务器、php空间租用、google永久免费的服务器、