gzexe加密
这种加密方式不是非常保险的方法,但是能够满足一般的加密用途,可以隐蔽脚本中的密码等信息。 它是使用系统自带的gzexe程序,它不但加密,同时压缩文件。且可解压。
#使用
gzexe hotfix.bin
#解压 解压之后的文件hotfix.bin内容就会还原回来。
gzexe -d hotfix.bin
tar加密
用tar命令 对文件加密压缩和解压
# 如下命令是对filename文件(hotfix.bin)进行加密压缩,生成hotfix.bin.des3加密压缩文件,
# 1qaz2wsx为加密的密码 通常加密后删除源文件
tar -zcf - hotfix.bin |openssl des3 -salt -k 1qaz2wsx | dd of=hotfix.bin.des3
# 解压后获得源文件
dd if=hotfix.bin.des3 |openssl des3 -d -k 1qaz2wsx | tar zxf -
# 将/mnt目录下的所有文件全部加密压缩
tar -zcf - /mnt/* |openssl des3 -salt -k 123@123 | dd of=test.des3
# 根据匹配规则进行加密压缩
tar -zcf - /mnt/pass_* |openssl des3 -salt -k 123@123 | dd of=test.des3
Tar和OpenSSL加密
Tar和OpenSSL给文件和目录加密及解密
当有重要的敏感数据的时候,给文件和目录额外加一层保护是至关重要的,特别是当需要通过网络与他人传输数据的时候。基于这个原因,
可以用到tar(Linux 的一个压缩打包工具)和OpenSSL来解决的方案。借助这两个工具,你真的可以毫不费力地创建和加密 tar 归档文件。
# 解密当前工作目录
tar -czf - * | openssl enc -e -aes256 -out app.tar.gz
# 命令解释:
# enc 使用加密进行编码
# -e 用来加密输入文件的 enc 命令选项,这里是指前一个 tar 命令的输出
# -aes256 加密用的算法
# -out 用于指定输出文件名的 enc 命令选项,这里文件名是test.tar.gz
# 解密
openssl enc -d -aes256 -in app.tar.gz | tar xz -C /mnt/app
执行命令如下:
shc加密
仅仅对shell脚本加密
shc是一个专业的加密shell脚本的工具.它的作用是把shell脚本转换为一个可执行的二进制文件,这个办法很好的解决了脚本中含有IP、密码等不希望公开的问题。
如果你的shell脚本包含了敏感的口令或者其它重要信息, 而且你不希望用户通过ps -ef(查看系统每个进程的状态)捕获敏感信息. 你可以使用shc工具来给shell脚本增加一层额外的安全保护。
shc是一个脚本编译工具, 使用RC4加密算法, 它能够把shell程序转换成二进制可执行文件(支持静态链接和动态链接). 该工具能够很好的支持: 需要加密, 解密, 或者通过命令参数传递口令的环境.
需要注意的是,sch只能能shell脚本文件进行加密,其他文件都不可以!
从安全角度考虑:使用sch命令对shell脚本文件进行加密后,只需保留.x的二进制文件,其他文件均可以删除
shc还提供了设定有效执行期限的方法,可以首先使用shc将shell程序转化为二进制,并加上过期时间
#下载:http://www.datsi.fi.upm.es/~frosal/sources/
wget http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.9.tgz
tar -zvxf shc-3.8.9.tgz
cd shc-3.8.9
#这步是必须的,不然安装过程中会报错,shc将安装命令到/usr/local/bin/目录下
mkdir -p /usr/local/man/man1
make install
#要回答yes或者y,不能直接回车,否则会报错
#使用方法 要有-r选项, -f 后跟要加密的脚本名。
shc -r -f hotfix.bin
#运行后生成 hotfix.bin.x hotfix.bin.x.c
#hotfix.bin.x是加密后可执行的二进制文件
#hotfix.bin.x.c是生成hotfix.bin.x的源文件 即c文件
#删除源文件
rm -rf hotfix.bin.x.c hotfix.bin
#执行脚本
./hotfix.bin.x
# 设置过期时间
# -e:指定过期时间为2024年8月29日
# -m:过期后打印出的信息;
# -v: verbose 较详细过程
# -r: 可在相同操作系统的不同主机上执行
# -f: 指定源shell
shc -e 29/08/2024 -m "script file expire" -v -r -f hotfix.bin
# 执行打印出过期
./hotfix.bin.x
./hotfix.bin.x: has expired!
script file expire
示例
zip加密
使用命令 zip -e filename.zip filename 即可出现输入密码的提示,输入2次密码。 此文件即被加密解压时候是需要密码的
# 加密文件
zip -e file.zip file
# 加密目录
zip -evr dir.zip dir
gpg加密
GnuPG的全称是GNU隐私保护(GNU Privacy Guard),常常被称为GPG,它结合了一组加密软件。它是由GNU项目用C编程语言编写的。最新的稳定版本是2.0.27。在如今的大多数Linux发行版中,gnupg程序包都是默认随带的,所以万一它没有安装,你可以使用apt或yum从软件库来安装它(yum install gnupg)。注意:gpg只能对文件进行加密,对目录则无法完成加密!
#加密 输入两次密码
gpg -c hotfix.bin.gpg
#解密 输入一次密码
gpg hotfix.bin.gpg
参考:
网友评论