使用shc工具加密shell脚本详解

前端之家收集整理的这篇文章主要介绍了使用shc工具加密shell脚本详解前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

这篇文章主要介绍了使用shc工具加密shell脚本详解,Shc可以用来对shell脚本进行加密,可以将shell脚本转换为一个可执行的二进制文件,需要的朋友可以参考下

Shc可以用来对shell脚本进行加密,可以将shell脚本转换为一个可执行的二进制文件。经过shc对shell脚本进行加密后,会同时生成两种个新的文件,一个是加密后的可执行的二进制文件文件名以.x结束),另一个是C语言的原文件文件名以.x.c结束)。

下面就说明一下shc的安装,参数,以及使用示例:
下载安装:
(官网下载地址: http://www.datsi.fi.upm.es/~frosal/sources/)

  1. #wgethttp://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.7.tgz
  2. #cdshc-3.8.7
  3. #make
  4. #makeinstall
(仅用make就可以完成安装,运行shc时要指出绝对路径;用make install,将shc安装到/usr/local/bin下,可以直接运行)

常用参数:

copy

-edate
  • Expirationdateindd/mm/yyyyformat[none](指定过期日期)
  • -mmessage
  • messagetodisplayuponexpiration["Pleasecontactyourprovider"](指定过期提示的信息)
  • -fscript_name
  • Filenameofthescripttocompile(指定要编译的shell的路径及文件名)
  • -rRelaxsecurity.
  • Makearedistributablebinarywhichexecutesondifferentsystemsrunningthesameoperat-ingsystem.(可以相同操作系统的不同系统中执行)
  • -vVerbosecompilation(编译的详细情况)

  • 使用示例:

    [root@centos54 tmp]# /usr/local/src/shc-3.8.7/shc -e 20/10/2010 -m "lianxi aaa@163.com" -v -r -f ./ex.sh

    -e:指定过期时间为2010年10月20日
    -m:过期后打印出的信息;
    -v: verbose
    -r: 可在相同
    操作系统的不同主机上执行
    -f: 指定源shell

    方法:

    shc -r -f script-name

    注意:要有-r选项,-f 后跟要加密的脚本名.
    运行后会生成两个文件,script-name.x 和 script-name.x.c
    script-name.x是加密后的可执行的二进制文件.
    ./script-name.x 即可运行.
    script-name.x.c是生成script-name.x的原文件(c语言)

    说明:

    测试,相同在操作系统,shc后的可执行二进制文件直接可以移植运行,但不同操作系统可能会出现问题,如我将源shell在CentOS5.4上加密后移到redhat as5u4上不能运行,出现“Floating point exception”错误提示,但移到另一台CentOS5.4上直接运行没问题。

    猜你在找的Bash相关文章