我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Linux系统文件加密是怎么实现的

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Linux系统文件加密是怎么实现的

Linux系统文件加密是怎么实现的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

Linux系统一切皆为文件而且Linux系统又是一个多用户系统,所以数据的安全性非常重要,有些情况需要对文件进行加密,那么Linux系统中如何对文件进行加密呢?

方法一:gzexe加密 这种加密方式不是非常保险的方法,但是能够满足一般的加密用途,可以隐蔽脚本中的密码等信息。 它是使用系统自带的gzexe程序,它不但加密,同时压缩文件。

示例如下:

 [root@ipsan-node03 ~]# echo "hahahaha" > a.txt  [root@ipsan-node03 ~]# cat a.txt  hahahaha  [root@ipsan-node03 ~]# ls a.txt  a.txt  [root@ipsan-node03 ~]# gzexe a.txt  a.txt:    22.2%  [root@ipsan-node03 ~]# ls  a.txt  a.txt~    gzexe方法会把原来没有加密的文件a.txt备份为a.txt~ ,同时a.txt文件变成了加密文件(即变成了密文)  [root@ipsan-node03 ~]# cat a.txt                                                                                            쏎?螳?p¹\v£?y«0          Fc?؃ÿE?0´ûm  Ͱ:n$9hss4¢03     NeAEؚVºY¯׻ѿ¾¹«*霻•+]ᚚaΜ                                 Y$@:Wj%                                        .iȣ¬Z®:J ¦b¶mC.    解压之后的文件a.txt内容就会还原回来,同时也会将之前的加密文件变成a.txt~,同样,通常也会删除这个a.txt~的备份文件  [root@ipsan-node03 ~]# gzexe -d a.txt  [root@ipsan-node03 ~]# ls  a.txt  a.txt~  [root@ipsan-node03 ~]# cat a.txt  hahahaha  [root@ipsan-node03 ~]# cat a.txt~  쏎?螳?p¹\v£?y«0          Fc?؃ÿE?0´ûm  Ͱ:n$9hss4¢03     NeAEؚVºY¯׻ѿ¾¹«*霻•+]ᚚaΜ                                 Y$@:Wj%                                        .iȣ¬Z®:J ¦b¶mC方法二:用tar命令 对文件加密压缩和解压 [root@ipsan-node03 ~]# ls  test.txt  [root@ipsan-node03 ~]# cat test.txt  hahahaha  heiheihei      如下命令是对filename文件(test.txt)进行加密压缩,生成filename.des3加密压缩文件,123@123为加密的密码  [root@ipsan-node03 ~]# tar -zcf - test.txt |openssl des3 -salt -k 123@123 | dd of=test.txt.des3  0+1 records in  0+1 records out  152 bytes (152 B) copied, 0.00333366 s, 45.6 kB/s    ---------------------------------------------------------------------------------------------------------  也可以将/mnt目录下的所有文件全部加密压缩  [root@ipsan-node03 ~]# tar -zcf - /mnt/* |openssl des3 -salt -k 123@123 | dd of=test.des3    或者根据匹配规则进行加密压缩  [root@ipsan-node03 ~]# tar -zcf - /mnt/pass_* |openssl des3 -salt -k 123@123 | dd of=test.des3  ---------------------------------------------------------------------------------------------------------      通常加密后,会将源文件删除  [root@ipsan-node03 ~]# ls  test.txt  test.txt.des3  [root@ipsan-node03 ~]# rm -f test.txt  [root@ipsan-node03 ~]# cat test.txt.des3  Salted__H¡+ZCHaW⃟׬                   \bS©|>þHބ*?ܪ³?@ⴹ??qk)B㲏¡qk;ochl\cz-?/흯  ¤ވտ+¾´2AuK?픏̞t悐ah¤ºʀ?d      解压操作:  [root@ipsan-node03 ~]# dd if=test.txt.des3 |openssl des3 -d -k 123@123 | tar zxf -  0+1 records in  0+1 records out  152 bytes (152 B) copied, 4.5873e-05 s, 3.3 MB/s      [root@ipsan-node03 ~]# ls  test.txt  test.txt.des3  [root@ipsan-node03 ~]# cat test.txt  hahahaha  heiheihei      注意命令最后面的"-",它将释放所有文件,  -k 123@123可以没有,没有时在解压时会提示输入密码方法三:结合Tar和OpenSSL给文件和目录加密及解密 当有重要的敏感数据的时候,给文件和目录额外加一层保护是至关重要的,特别是当需要通过网络与他人传输数据的时候。基于这个原因,  可以用到tar(Linux 的一个压缩打包工具)和OpenSSL来解决的方案。借助这两个工具,你真的可以毫不费力地创建和加密 tar 归档文件。    下面介绍使用 OpenSSL创建和加密 tar 或 gz(gzip,另一种压缩文件)归档文件:  牢记使用 OpenSSL 的常规方式是:  # openssl command command-options arguments    示例如下:  [root@ipsan-node03 ~]# cd /mnt/  [root@ipsan-node03 mnt]# ls  [root@ipsan-node03 mnt]# echo "123" > a.txt  [root@ipsan-node03 mnt]# echo "456" > b.txt  [root@ipsan-node03 mnt]# echo "789" > c.txt  [root@ipsan-node03 mnt]# ls  a.txt  b.txt  c.txt    现在要加密当前工作目录的内容(根据文件的大小,这可能需要一点时间)  [root@ipsan-node03 mnt]# tar -czf - * | openssl enc -e -aes256 -out test.tar.gz  enter aes-256-cbc encryption password:                          //假设这里设置的密码为123456  Verifying - enter aes-256-cbc encryption password:    上述命令的解释:  enc 使用加密进行编码  -e  用来加密输入文件的 enc 命令选项,这里是指前一个 tar 命令的输出  -aes256 加密用的算法  -out 用于指定输出文件名的 enc 命令选项,这里文件名是test.tar.gz    [root@ipsan-node03 mnt]# ls  a.txt  b.txt  c.txt  test.tar.gz  [root@ipsan-node03 mnt]# rm -rf a.txt  [root@ipsan-node03 mnt]# rm -rf b.txt  [root@ipsan-node03 mnt]# rm -rf c.txt  [root@ipsan-node03 mnt]# ls  test.tar.gz    对于上面加密后的tar包直接解压肯定是不行的!  [root@ipsan-node03 mnt]# tar -zvxf test.tar.gz  gzip: stdin: not in gzip format  tar: Child returned status 1  tar: Error is not recoverable: exiting now    要解密上述tar归档内容,需要使用以下命令。  [root@ipsan-node03 mnt]# openssl enc -d -aes256 -in test.tar.gz | tar xz -C /mnt/  enter aes-256-cbc decryption password:  [root@ipsan-node03 mnt]# ls  a.txt  b.txt  c.txt  test.tar.gz    上述命令的解释:  -d  用于解密文件  -C  将加压后的文件提取到目标目录下    当你在本地网络或因特网工作的时候,你可以随时通过加密来保护你和他人共享的重要文本或文件,这有助于降低将其暴露给恶意攻击者的风险。方法四:shc加密(仅仅对shell脚本加密) shc是一个专业的加密shell脚本的工具.它的作用是把shell脚本转换为一个可执行的二进制文件,这个办法很好的解决了脚本中含有IP、  密码等不希望公开的问题。      如果你的shell脚本包含了敏感的口令或者其它重要信息, 而且你不希望用户通过ps -ef(查看系统每个进程的状态)捕获敏感信息. 你可以  使用shc工具来给shell脚本增加一层额外的安全保护. shc是一个脚本编译工具, 使用RC4加密算法, 它能够把shell程序转换成二进制可执  行文件(支持静态链接和动态链接). 该工具能够很好的支持: 需要加密, 解密, 或者通过命令参数传递口令的环境.      shc的官网下载地址:  http://www.datsi.fi.upm.es/~frosal/sources/      安装方法:  [root@ipsan-node03 ~]# cd /usr/local/class="lazy" data-src/  [root@ipsan-node03 class="lazy" data-src]# wget http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.9.tgz  [root@ipsan-node03 class="lazy" data-src]# tar -zvxf shc-3.8.9.tgz  [root@ipsan-node03 class="lazy" data-src]# cd shc-3.8.9  [root@ipsan-node03 shc-3.8.9]# mkdir -p /usr/local/man/man1  这步是必须的,不然安装过程中会报错,shc将安装命令到/usr/local/bin/目录下;  将帮助文档存放在/usr/local/man/man1/目录下,如果系统中无此目录,安装时会报错,可创建此目录后再执行安装      [root@ipsan-node03 shc-3.8.9]# make install  这是要回答yes或者y,不能直接回车,否则会报错      需要注意的是,sch只能能shell脚本文件进行加密,其他文件都不可以!      sch加密使用方法:  "-f"选项指定需要加密的程序  [root@ipsan-node03 ~]# ls  text.sh  [root@ipsan-node03 ~]# cat text.sh  #!/bin/bash  echo "hahaha"  [root@ipsan-node03 ~]# shc -r -f text.sh  [root@ipsan-node03 ~]# ls  text.sh  text.sh.x  text.sh.x.c      注意:要有-r选项, -f 后跟要加密的脚本名。  运行后会生成两个文件,script-name.x 和 script-name.x.c  script-name.x是加密后的可执行的二进制文件.  ./script-name.x 即可运行.  script-name.x.c是生成script-name.x的原文件(c语言)  [root@ipsan-node03 ~]# ./text.sh  hahaha  [root@ipsan-node03 ~]# ./text.sh.x  hahaha      通常从安全角度考虑:  使用sch命令对shell脚本文件进行加密后,只需保留.x的二进制文件即可,其他两个文件均可以删除!  [root@ipsan-node03 ~]# ls  text.sh  text.sh.x  text.sh.x.c  [root@ipsan-node03 ~]# rm -rf text.sh  [root@ipsan-node03 ~]# rm -rf text.sh.x.c  [root@ipsan-node03 ~]# ls  text.sh.x  [root@ipsan-node03 ~]# ./text.sh.x  hahaha      另外:  shc还提供了一种设定有效执行期限的方法,可以首先使用shc将shell程序转化为二进制,并加上过期时间,如:  [root@ipsan-node03 ~]# shc -e 28/02/2018 -m "this script file is about to expire" -v -r -f text.sh  shc shll=bash  shc [-i]=-c  shc [-x]=exec '%s' "$@"  shc [-l]=  shc opts=  shc: cc  text.sh.x.c -o text.sh.x  shc: strip text.sh.x  shc: chmod go-r text.sh.x  [root@ipsan-node03 ~]# ls  text.sh  text.sh.x  text.sh.x.c      解释:  -e:指定过期时间为2018年2月28日  -m:过期后打印出的信息;  -v: verbose  -r: 可在相同操作系统的不同主机上执行  -f: 指定源shell      如果在过期后执行,则会有如下提示:  [root@ipsan-node03 ~]# ./text.sh.x  ./text.sh.x: this script file is about to expire  使用以上方法要注意,需防止用户更改系统时间,可以通过在程序中加入自动更新系统时间的命令来解决此问题!!      sch的帮助命令:  [root@ipsan-node03 ~]# shc -help  shc Version 3.8.9, Generic Script Compiler  shc Copyright (c) 1994-2012 Francisco Rosales  shc Usage: shc [-e date] [-m addr] [-i iopt] [-x cmnd] [-l lopt] [-rvDTCAh] -f script          -e %s  Expiration date in dd/mm/yyyy format [none]   (指定过期日期)      -m %s  Message to display upon expiration ["Please contact your provider"]  (指定过期提示的信息)      -f %s  File name of the script to compile   (指定要编译的shell的路径及文件名)      -i %s  Inline option for the shell interpreter i.e: -e      -x %s  eXec command, as a printf format i.e: exec('%s',@ARGV);      -l %s  Last shell option i.e: --      -r     Relax security. Make a redistributable binary   (可以相同操作系统的不同系统中执行)      -v     Verbose compilation    (编译的详细情况)      -D     Switch ON debug exec calls [OFF]      -T     Allow binary to be traceable [no]      -C     Display license and exit      -A     Display abstract and exit      -h     Display help and exit          Environment variables used:      Name    Default  Usage      CC      cc       C compiler command      CFLAGS    C compiler flags          Please consult the shc(1) man page.      说明:  经测试,相同在操作系统,shc后的可执行二进制文件直接可以移植运行,但不同操作系统可能会出现问题,  比如将上面的test.sh.x的二进制文件在CentOS6.9上加密后移到redhat as5u4上不能运行,出现"Floating point exception"错误提示,  但移到另一台CentOS6.9上直接运行没问题。方法五: ZIP加密1)文件加密 使用命令”zip -e filename.zip filename” 即可出现输入密码的提示,输入2次密码。 此文件即被加密解压时候是需要密码的 下面开始为test.txt文件进行加密  [root@centos6-vm02 ~]# cat test.txt  this is a test!!!  [root@centos6-vm02 ~]# zip -e test.txt.zip test.txt         //如下进行加密操作时,需要输入两次密码  Enter password:                            Verify password:    adding: test.txt (stored 0%)  [root@centos6-vm02 ~]# ls  test.txt  test.txt.zip    进行解压的时候,需要输入密码  [root@centos6-vm02 ~]# rm -f test.txt  [root@centos6-vm02 ~]# unzip test.txt.zip  Archive:  test.txt.zip  [test.txt.zip] test.txt password:   extracting: test.txt                [root@centos6-vm02 ~]# cat test.txt  this is a test!!!2)文件夹加密 使用命令”zip -re dirname.zip dirname”即可出现输入密码的提示,输入2次密码。 此文件即被加密解压时候是需要密码的。 下面开始对目录进行加密  [root@centos6-vm02 ~]# mkdir dirtest  [root@centos6-vm02 ~]# cat dirtest/haha.txt  this is test of dir!!!  [root@centos6-vm02 ~]# zip -re dirtest.zip dirtest  Enter password:  Verify password:    adding: dirtest/ (stored 0%)    adding: dirtest/haha.txt (stored 0%)    解压目录时需要输入密码  [root@centos6-vm02 ~]# rm -rf dirtest  [root@centos6-vm02 ~]# unzip dirtest.zip  Archive:  dirtest.zip     creating: dirtest/  [dirtest.zip] dirtest/haha.txt password:   extracting: dirtest/haha.txt        [root@centos6-vm02 ~]# ls dirtest  haha.txt  [root@centos6-vm02 ~]# cat dirtest/haha.txt  this is test of dir!!!方法六:GnuPG加密 GnuPG的全称是GNU隐私保护(GNU Privacy Guard),常常被称为GPG,它结合了一组加密软件。它是由GNU项目用C编程语言编写的。最新的稳定版本是2.0.27。在如今的大多数Linux发行版中,gnupg程序包都是默认随带的,所以万一它没有安装,你可以使用apt或yum从软件库来安装它(yum install gnupg)。注意:gpg只能对文件进行加密,对目录则无法完成加密! 下面开始使用GnuPG方式对test.txt文件进行加密  [root@centos6-vm02 ~]# cat test.txt  this is a test!!!  [root@centos6-vm02 ~]# gpg -c test.txt    can't connect to `/root/.gnupg/S.gpg-agent': No such file or directory         //这个信息可以忽略    注意:如上加密的时候,会弹出来一个对话框,要求Paraphrase输入两次密码,对这个特定的文件进行加密。    一旦运行带-c选项(完全使用对称密码算法加密)的gpc命令,它会生成一个文件.gpg文件。  [root@centos6-vm02 ~]# ll test.txt*  -rw-r--r--. 1 root root 18 Jan  4 10:08 test.txt  -rw-r--r--. 1 root root 61 Jan  4 10:04 test.txt.gpg    对文件进行加密后,最好将源文件删除!不要再保留源文件了!  [root@centos6-vm02 ~]# rm -f test.txt    文件解密操作。  注意出现Paraphrase提示时,需要提供加密时输入的同一个密码才能解密  [root@centos6-vm02 ~]# gpg test.txt.gpg    gpg: 3DES encrypted data  can't connect to `/root/.gnupg/S.gpg-agent': No such file or directory  gpg: encrypted with 1 passphrase  gpg: WARNING: message was not integrity protected  [root@centos6-vm02 ~]# ll test.txt*  -rw-r--r--. 1 root root 18 Jan  4 10:08 test.txt  -rw-r--r--. 1 root root 61 Jan  4 10:04 test.txt.gpg  [root@centos6-vm02 ~]# cat test.txt  this is a test!!

看完上述内容,你们掌握Linux系统文件加密是怎么实现的的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网行业资讯频道,感谢各位的阅读!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Linux系统文件加密是怎么实现的

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Linux系统文件加密是怎么实现的

Linux系统文件加密是怎么实现的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Linux系统一切皆为文件而且Linux系统又是一个多用户系统,所以数据的安全性非常重要,有些情
2023-06-28

Linux系统中怎么加密文件

这篇文章主要讲解了“Linux系统中怎么加密文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux系统中怎么加密文件”吧!在Linux系统安装时选择使用EFS首先将介绍一个非常简单的方
2023-06-17

怎么在Linux系统中加密文件

今天就跟大家聊聊有关怎么在Linux系统中加密文件,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 1. oppnssl md5 加密字符串的方法 a.手动输入命令及过程
2023-06-10

什么是加密文件系统?

加密文件系统(EFS)利用加密保护计算机和移动设备上的文件,防止未经授权访问。加密时,使用用户密钥对文件加密,解密时需要正确密钥。EFS集成在文件系统中,方便用户管理加密文件。优点包括数据保护、数据恢复和用户友好性。局限性包括密钥管理依赖性、性能影响和不兼容性。适用于敏感数据存储、可移动设备保护和远程工作。最佳实践包括使用强加密密钥、定期备份密钥和监控文件系统。
什么是加密文件系统?
2024-04-02

怎么对Linux系统中的文件进行加密

这篇文章主要介绍“怎么对Linux系统中的文件进行加密”,在日常操作中,相信很多人在怎么对Linux系统中的文件进行加密问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么对Linux系统中的文件进行加密”的疑
2023-06-16

win10系统文件夹怎么加密

这篇文章主要讲解了“win10系统文件夹怎么加密”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“win10系统文件夹怎么加密”吧!加密方法:1、首先使用自己的帐户登录Win10系统,然后右键点
2023-06-28

Linux系统文件加密的方法有哪些

本篇内容介绍了“Linux系统文件加密的方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!方法一:gzexe加密 这种加密方式不是非常
2023-06-28

Linux系统怎么实现文件同步

Linux系统怎么实现文件同步,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Linux系统实现文件同步的方法一、准备源文件地址:192.168.0.143目标文
2023-06-28

Linux下怎么加密文件

本篇内容主要讲解“Linux下怎么加密文件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux下怎么加密文件”吧!Linux文件加密具体方法方法一:gzexe加密 这种加密方式不是非常保险的
2023-06-28

Linux系统文件系统及文件基础是怎么样的

这篇文章将为大家详细讲解有关Linux系统文件系统及文件基础是怎么样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。学习Linux,重难点在于掌握不同类别的文件系统及其作用。通过对Linux
2023-06-05

java怎么实现rsa加密解密文件

要在Java中实现RSA加密和解密文件,可以使用Java Cryptography Architecture(JCA)提供的RSA算法。以下是一个简单的示例代码,用于加密和解密文件。导入必要的类和包:import java.io.File
2023-10-26

XP系统怎么为共享文件加密

本文小编为大家详细介绍“XP系统怎么为共享文件加密”,内容详细,步骤清晰,细节处理妥当,希望这篇“XP系统怎么为共享文件加密”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。步骤一:从桌面进入我的文档,然后在左上方的
2023-06-27

Linux中怎么实现一个文件系统

Linux中怎么实现一个文件系统,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Linux文件管理从用户的层面介绍了Linux管理文件的方式。Linux有一个树状结构来组织文件。
2023-06-05

Vista系统中的文件和文件夹加密

加密文件/文件夹的方法 要在Windows Vista加密文件/文件夹,可按下面的操作步骤进行: 1、在资源管理器中找到待保护的文件/文件夹,右键单击选择“属性&AGRxwrdquo;; 2、在&ldqu
2023-05-23

win8系统下如何给文件夹加密 win8系统文件夹加密保护文件安全的方法[附加密软件]

软件名称:易捷文件夹加密软件大师 v3.65 安装版软件大小:2.73MB更新时间:2013-09-22 win8系统加密文件夹的方法:1、下载并安装易捷文件夹加密软件; 2、开始双击运行软件,打开主界面后,开始点击文件夹加密; 3、来到选
2022-06-04

怎么使用jquery实现文件加密

本文小编为大家详细介绍“怎么使用jquery实现文件加密”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么使用jquery实现文件加密”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、什么是jqueryjQue
2023-07-05

python文件加密功能怎么实现

要实现一个Python文件加密的功能,可以考虑以下步骤:1. 选择一种加密算法,如AES、DES等。这些算法在Python中可以通过使用`cryptography`库来实现。2. 定义一个函数来读取要加密的文件,将文件内容读取到一个变量中。
2023-09-27

Linux 文件系统的操作实现

此读书笔记比较主要记录文件系统的相关操作。 磁盘与目录的容量磁盘的整体数据是在superblock块中,但是每个个别文件的容量则在inode当中记载,常用来显示磁盘使用量的两个命令 df: 列出文件系统的整体磁盘使用量 du: 评估文件系统
2022-06-04

编程热搜

目录