zoukankan      html  css  js  c++  java
  • shell加密工具shc的安装和使用

    shell加密工具shc的安装和使用

    1)工具说明
      shell脚本是可读写的, 很有可能会泄露敏感信息, 如用户名/密码/路径/IP等. 同样在shell脚本运行时会也泄露敏感信息. shc是一个加密shell脚本的工具, 它的作用是把shell脚本转换为一个可执行的二进制文件. 这就很好的解决了上述问题.


    2)下载安装
      下载: http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.6.tgz(非官方地址)
     安装:
      # mkdir -p /home/upall/shc
      # mkdir /usr/local/man/man1/ //install时会把man文件放入该目录,如果该目录不存在需提前建好
      # tar -zvxf shc-3.8.6.tgz -C /home/upall/shc && cd /home/upall/shcshc-3.8.6
      # make test
      # make strings
      # make install
       ***     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/
      # 
     用法:
      # which shc //查找程序在哪,也可以用“whereis shc”
       /usr/local/bin/shc
      # shc //查看帮助可以用shc -h或shc --help,不过参数错的话,程序会自动把使用说明能你,不过不全。
       shc parse(-f): No source file specified
       shc Usage: shc [-e date] [-m addr] [-i iopt] [-x cmnd] [-l lopt] [-rvDTCAh] -f script

    3) 加密脚本
      # shc -v -f test.sh //“加密”文件“test.sh”。
          -v是verbose模式, 输出更详细编译日志; 
          -f 指定脚本的名称.
      $ ll test* //查看文件详细信息,这个命令的原型是“ls -l”。
       -rwxr-xr-x  1 oracle oinstall   1178 Aug 18 10:00 test.sh
       -rwx--x--x  1 oracle oinstall   8984 Aug 18 18:01 test.sh.x
       -rw-r--r--  1 oracle oinstall  14820 Aug 18 18:01 test.sh.x.c
      $ file test.sh.x //查看文件“test.sh.x”的文件类型
       test.sh.x: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.5, dynamically linked(uses shared libs), stripped
      可以看到生成了动态链接可执行二进制文件test.sh.x和C源文件testup.sh.x.c, 注意生成的二进制文件因为是动态链接形式, 所以在其它平台上不能运行.

    4) 生成静态链接的二进制可执行文件
      可以通过下面的方法生成一个静态链接的二进制可执行文件:
      $ CFLAGS=-static shc -r -f test.sh
      $ file testup.sh.x

    5) 通过sch加密后的脚本文件很安全吗?
      一般来说是安全的, 不过可以使用gdb和其它的调试工具获得最初的源代码. 如果需要更加安全的方法, 可以考虑使用wzshSDK. 另外shc还可以设置脚本的运行期限和自定义返回信息:

      $ shc -e 09/05/2010 -m "the mysql backup scrīpt is now out of date." -f test.sh
          -e表示脚本将在2010年9月5日前失效, 并根据-m定义的信息返回给终端用户.
      说明:关于MySQL可以参考我的“MySQL管理”中的备份操作或者“Crontab”文末的备份脚本例子。

    补充:Win下转为二进制并且可以在命令行下执行的工具名为“bat2exe”。

    <完>

  • 相关阅读:
    nyoj 164&amp;&amp;poj2084 Game of Connections 【卡特兰】
    1、Cocos2dx 3.0游戏开发找小三之前言篇
    hibernate一级缓存,二级缓存和查询缓存
    WCF服务端调用client.
    优化中的subgradient方法
    Xsolla和Crytek合作,对游戏战争前线推出全新支付方式
    CNZZ站点流量统计原理简析
    分数加减法
    【jvm】windows下查看java进程下多线程的相关信息
    【面试 docker+k8s+jenkins】【第二十篇】docker+k8s+jenkins相关面试
  • 原文地址:https://www.cnblogs.com/youlechang123/p/4227000.html
Copyright © 2011-2022 走看看