A. 如何用shell脚本对文件内容加密
使用OPENSSL命令吧
Plain Text code?
1
2
3
4
5
#加密
openssl enc -e -aes-256-cbc -in 要加密的文件 -out 要解密的文件 -pass pass:密码
#解密
openssl enc -d -aes-256-cbc -in 要解密的文件 -out 要加密的文件 -pass pass:密码
B. 怎样给shell执行文件加密
第一种方法(gzexe):
这种加密方式不是非常保险的方法,但是能够满足一般的加密用途,可以隐蔽脚本中的密码等信息。
它是使用系统自带的gzexe程序,它不但加密,同时压缩文件。
使用方法:
gzexe file.sh
它会把原来没有加密的文件备份为 file.sh~ ,同时 file.sh 即被变成加密文件;
第二种方法(shc):
使用 shc 对 Linux shell 脚本加密.
shc是一个专业的加密shell脚本的工具.它的作用是把shell脚本转换为一个可执行的二进制文件,这个办法很好的解决了脚本中含有IP、密码等不希望公开的问题.
shc的下载地址:
http://download.chinaunix.net/download/0010000/9479.shtml
安装:
tar zxvf shc-3.8.tgz
cd shc-3.8
make test
make
make test
make strings
make install
使用方法:
shc -r -f script-name
运 行后会生成两个文件,script-name.x 和 script-name.x.c. 其中script-name.x是加密后的可执行的二进制文件;用./script-name即可运行,script-name.x.c是生成 script-name.x的原文件(c语言).
C. 妈的终于知道怎么解密shc加密的shell脚本了
SHELL脚本是被/bin/sh执行的,如果加密,自然/bin/sh无法解析。但也有方法可以达到你的目的,你讲SHELL加密,写一个可执行文件,可执行文件解密你的SHELL,然后fork进程去执行你的SHELL文件。
D. 如何将Linux Shell程序使用shc编译加密
第一步非常简单,就是获取到
shc
程序的源码文件,这个可以从官方站点(现在视乎无法访问)下载,或者从参考资料里面提供的地址下载。
2
下载到源文件后,先要解压出来,使用Tarball工具进行解压,命令时
tar
-xvf
shc.tar
这样就能得到解压后的文件,。
3
这时候我们自己编译shc得到可以使用的可执行程序,过程如下:
make
make
install
等待系统完成即可,我这里因为权限问题,帮助文件安装出了些问题,但整体还是没有问题的。
4
我们准备一个程序,这里就使用简单的显示语句,文件名
test.sh
echo
"
this
is
a
shell"
然后
sch
-f
test.sh
完成编译操作,会发现目录下多出如下图所示的文件
5
这里是编译完成后的目录内容,可以看到
.x
的已经编译后的二进制可执行文件,而
.x.c
的是转化的C语言源文件。
6
这里显示的是经过转化过的C语言源文件,可以在同一目录下看到,内容已经经过处理,字符串都进行了编码处理。
7
我们直接执行对应的编译后的二进制程序,可以看到,效果和shell文件是一样的,但是这样源代码隐藏了起来,保密性强。
END
注意事项
shc需要自己编译,因此您需要有GCC的环境
shc
在使用了
-r
选项的时候具有通用性,很多系统之间可以直接运行,参数如下:
shc
并不是真正意义的高强度加密,因此很容易被逆向工程,所以不要依靠这个的安全性
E. 请问这个txt文件如何解密,这是如何加密的谢谢
使用 shc 对 Linux shell 脚本加密.
shc是一个专业的加密shell脚本的工具.它的作用是把shell脚本转换为一个可执行的二进制文件:
安装:
tar zxvf shc-3.8.tgz
cd shc-3.8
make test
make
make test
make strings
make install
使用方法:
shc -r -f script-name
运行后会生成两个文件,script-name.x 和 script-name.x.c. 其中script-name.x是加密后的可执行的二进制文件;用./script-name即可运行,script-name.x.c是生成script-name.x的原文件(c语言).
F. 求大神帮忙加密一个格式是sh的脚本,以文本方式查看是可以看出来的,我想要加密,以文本格式打开会变成
使用 shc 对 Linux shell 脚本加密.
shc是一个专业的加密shell脚本的工具.它的作用是把shell脚本转换为一个可执行的二进制文件:
安装:
tar zxvf shc-3.8.tgz
cd shc-3.8
make test
make
make test
make strings
make install
使用方法:
shc -r -f script-name
运行后会生成两个文件,script-name.x 和 script-name.x.c. 其中script-name.x是加密后的可执行的二进制文件;用./script-name即可运行,script-name.x.c是生成script-name.x的原文件(c语言).
G. shell脚本可以加密吗
第一种方法(gzexe):
这种加密方式不是非常保险的方法,但是能够满足一般的加密用途,可以隐蔽脚本中的密码等信息。它是使用系统自带的gzexe程序,它不但加密,同时压缩文件。
使用方法: gzexe file.sh
它会把原来没有加密的文件备份为file.sh~ ,同时 file.sh 即被变成加密文件;
第二种方法(shc):
使用 shc 对 Linux shell 脚本加密.
shc是一个专业的加密shell脚本的工具.它的作用是把shell脚本转换为一个可执行的二进制文件,这个办法很好的解决了脚本中含有IP、密码等不希望公开的问题.
H. 求shell脚本加密方式,要权限那种,即是解密也要权限,谢谢。 gzexe、shc等方法试过了。
shell脚本纯粹就是由各种命令组成的文本文件,由shell环境解释执行,没法加密。即便你加了密,也必须还原成文本格式,才能由shell执行。
I. 如何还原使用shc加密的shell脚本
Shc可以用来对shell脚本进行加密,可以将shell脚本转换为一个可执行的二进制文件。经过shc对shell脚本进行加密后,会同时生成两种个新的文件,一个是加密后的可执行的二进制文件(文件名以.x结束),另一个是C语言的原文件(文件名以.x.c结束)。
下面就说明一下shc的安装,参数,以及使用示例:
复制代码 代码如下:
# wget http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.7.tgz
# cd shc-3.8.7
# make
# make install
(仅用make就可以完成安装,运行shc时要指出绝对路径;用make install,将shc安装到/usr/local/bin下,可以直接运行)
常用参数:
复制代码 代码如下:
-e date
Expiration date in dd/mm/yyyy format [none](指定过期日期)
-m message
message to display upon expiration ["Please contact your provider"](指定过期提示的信息)
-f script_name
File name of the script to compile(指定要编译的shell的路径及文件名)
-r Relax security.
Make a redistributable binary which executes on different systems running the same operat-ing system.(可以相同操作系统的不同系统中执行)
-v Verbose compilation(编译的详细情况)
使用示例:
复制代码 代码如下:
[root@centos54 tmp]# /usr/local/src/shc-3.8.7/shc -e 20/10/2010 -m "lianxi [email protected]" -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上直接运行没问题。
J. shc加密shell脚本后无法执行,老是提示“Operation not permitted”,只能通过sudo,提权运行,为什么呢
你可以更改他的运行权限。
chmod 777 grant.sh.x