Shell 脚本常见的两种加密方式

老牛浏览 455评论 0发表于

这篇文章主要介绍 CentOS 下对 Shell 脚本加密的二种方法,本文介绍了 gzexe、shc 两款加密工具,并分别讲解了加密方法,需要的朋友可以参考下。

1. gzexe

这种加密方式不是非常保险的方法,但是能够满足一般的加密用途,可以隐蔽脚本中的密码等信息。

它是使用系统自带的 gzexe 程序,它不但加密,同时压缩文件。

代码如下:

bash
gzexe file.sh

它会把原来没有加密的文件备份为 file.sh~,同时 file.sh 被变成加密文件。

2. shc

使用 shc 对 Linux Shell 脚本加密。

shc 是一个专业的加密 Shell 脚本的工具。它的作用是把 Shell 脚本转换为一个可执行的二进制文件,这个办法很好的解决了脚本中含有 IP、密码等不希望公开的问题。

shc的 官网下载地址

安装:

bash
wget -O shc-3.8.9.tgz http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.9.tgz
tar xzvf shc-3.8.9.tgz
cd shc-3.8.9
mkdir -p /usr/local/man/man1

这步是必须的,不然安装过程中会报错,shc 将安装命令到 /usr/local/bin/ 目录下;将帮助文档存放在 /usr/local/man/man1/ 目录下,如果系统中无此目录,安装时会报错,可创建此目录后再执行安装:

bash
make install

这是要回答「yes」或者「y」,不能直接回车,否则会报错。

使用方法:

「-f」选项指定需要加密的程序

代码如下:

bash
shc -r -f script-name

运行后会生成两个文件:script-name.xscript-name.x.c。其中 script-name.x 是加密后的可执行的二进制文件;用 ./script-name 即可运行,script-name.x.c 是生成 script-name.x 的原文件(C 语言)。

另外 shc 还提供了一种设定有效执行期限的方法,可以首先使用 shc 将 shell 程序转化为二进制,并加上过期时间。

代码如下:

bash
shc -e 18/10/2016 -m " It's too late to run this script " -f script.s
点赞
收藏
暂无评论,快来发表评论吧~
私信
老牛@ilaoniu
老牛,俗称哞哞。单纯的九零后理工小青年。喜欢折腾,爱玩,爱音乐,爱游戏,爱电影,爱旅游...
最后活跃于