Linux Shell 加密解密方法(shc/gzexe)

前言

Linux Shell加密解密有两种方法。

系统自带gzexe

gzexe无需安装任何软件是Linux自带的功能使用只需要执行命令即可我们可以利用wget将文件放在root目录下也可以通过sftp放在root目录也可以直接利用cd命令选择目录一切随意

加密方法

假如说我们这个脚本名字叫vpsps.sh

那我们就执行

Bash
gzexe vpsps.sh

原来的文件就加密了之后会在目录产生一个vpsps.sh~的文件这个就是原来文件的备份

解密方法

假如说我们这个脚本名字叫vpsps.sh

那我们就执行

Bash
gzexe -d vpsps.sh

原来的文件就加解密了放在目录里面

加密软件shc

shc是Linux的一款加密脚本的插件东西比较安全我们可以利用wget将文件放在root目录下也可以通过sftp放在root目录也可以直接利用cd命令选择目录一切随意

shc官网:https://www.datsi.fi.upm.es/%7Efrosal/

安装方法

Bash
wget https://www.datsi.fi.upm.es/%7Efrosal/sources/shc-3.8.9.tgz
tar vxf shc-3.8.9.tgz
cd shc-3.8.9
make test
make strings
make install

发现报错的情况比较严重

如果报错内容如下

Bash
*** Installing shc and shc.1 on /usr/local
*** ?Do you want to continue? y
install -c -s shc /usr/local/bin/
install -c -m 644 shc.1 /usr/local/man/man1/
install: target `/usr/local/man/man1/' is not a directory: No such file or directory
make: *** [install] Error 1

请创建 mkdir -p /usr/local/man/man1/ ,然后运行 make install

也可以直接无视,一般没什么影响,只是少了对应的帮助文档。

常用参数:

-e date (指定过期日期)

-m message (指定过期提示的信息)

-f script_name(指定要编译的Shell的路径及文件名)

-r Relax security. (可以相同操作系统的不同系统中执行)

-v Verbose compilation(编译的详细情况)

加密方法

假如说我们这个脚本名字叫vpsps.sh

那我们就执行

Bash
shc -v -f vpsps.sh

-v 是现实加密过程

-f 后面跟需要加密的文件

abc.sh.x为二进制文件,赋予执行权限后,可直接执行。更改名字mv vpsps.sh.x vpspscom.sh

abc.sh.x.c 是c源文件。基本没用,可以删除

过期加密法

另shc还提供了一种设定有效执行期限的方法,过期时间,如:

# shc -e 14/09/2016 -m -f vpsps.sh

选项“-e”指定过期时间,格式为“日/月/年”;选项“-m”指定过期后执行此Shell程序的提示信息。

如果在过期后执行,则会有如下提示:

# ./abc.sh.x
./abc.sh.x: has expired!(文件已经过期)

使用以上方法要注意,需防止用户更改系统时间,可以通过在程序中加入自动更新系统时间的命令来解决此问题。

测试都已通过,请放心使用!

解密方法

利用这个脚本来解密

下载地址:https://github.com/yanncam/UnSHc

声明:本文为原创,作者为 Svlik,转载时请保留本声明及附带文章链接:https://www.svlik.com/163.html