如何在Linux系统上加密文件和目录

如何在Linux系统上加密文件和目录,第1张

设定分区您的硬盘(hda)最少应该包含三个分区:hda1:这个小的没加密的分区应该要求一个口令为了加载加密的根文件系统hda2:这个分区应该包含你的加密根文件系统;确保它足够大hda3:这个分区就是你的当前的GNU/Linux系统在这时,hda1和hda2没有使用。hda3就是当前你安装的linux发行版;/usr和/boot不能另外分区装载。你的分区分布也许会像下面这样:#fdisk-l/dev/hdaDisk/dev/hda:255heads,63sectors,2432cylindersUnits=cylindersof16065*512bytesDeviceBootStartEndBlocksIdSystem/dev/hda111800183Linux/dev/hda22263210451583Linux/dev/hda3264525210451583Linux/dev/hda452620471222546583Linux安装Linux-2.4.27有两种主要的方案可用于在内核上添加loopback加密支持:cryptoloop和loop-AES。本文是基于loop-AES方案的,因为因为它的特点是非常快和非常优化实行ofRijndael用汇编语言。如果你有一个IA-32(x86)CPU,它将为您提供最大的性能。另外,还有一些关于cryptoloop的安全关切.首先,下载和解压loop-AES软件包:wgetsleeprmsleep.c创建初始化脚本(不要忘记替换掉你之前报选的种子"xxxxxx"):cat>ramdisk/sbin/initbootcd/isolinux.cfg把iso映像刻录到可启动光盘中:mkisofs-obootcd.iso-bisolinux.bin-cboot.cat\-no-emul-boot-boot-load-size4-boot-info-table\-J-hide-rr-moved-Rbootcd/cdrecord-dev0,0,0-speed4-vbootcd.isorm-rfbootcd{,.iso}从硬盘启动当你丢失了你的可启动光盘时,启动分区就可以派上用场了。请记住hda1是个可写分区,因而并不是很可靠的,只有当你遇到紧急的情况时才使用它!创建并挂载ext2文件系统:ddif=/dev/zeroof=/dev/hda1bs=8192mke2fs/dev/hda1mount/dev/hda1/loader复制内核和initialramdisk:cp/boot/{vmlinuz,initrd.gz}/loader如果你使用的是grub:mkdir/loader/bootcp-av/boot/grub/loader/boot/cat>/loader/boot/grub/menu.lst/loader/etc/lilo.conf/etc/init.d/loop/dev/tty$idoneEOFchmod700/etc/init.d/loopln-s../init.d/loop/etc/rcS.d/S00loopvi/etc/fstab/dev/loop2/homeext3defaults02

安装eCryptFS

安装到Debian、Ubuntu或衍生版本上:

$ sudo apt-get install ecryptfs-utils

注意:如果你决定在Ubuntu安装过程中加密你的主目录,就要确保eCryptFS应该已经安装。

安装到CentOS、RHEL或Fedora上:

# yum install ecryptfs-utils

安装到Arch Linux上:

$ sudo pacman -S ecryptfs-utils

为了稳妥起见,安装程序包后,装入eCryptFS内核模块是个好的做法:

$ sudo modprobe ecryptfs

配置eCryptFS

现在不妨运行eCryptFS配置工具,开始加密某个目录:

$ ecryptfs-setup-private

它会要求输入登录密码和挂载密码。登录密码与你平常的那个登录密码一样。挂载密码则用来获得文件加密主密钥。退出,重新登录。

你会注意到eCryptFS在默认情况下创建了两个目录:主目录中的Private目录和.Private目录。~/.Private目录里面含有加密的数据,你可以访问~/Private目录中相应的解密数据。在你登录时, ~/.Private目录自动解密,映射到~/Private目录,那样你就能访问它。你退出后,~/Private目录自动卸载,~/Private目录里面的内容加密回到~/.Private目录。

eCryptFS知道你拥有~/.Private目录,并且自动解密到~/Private,不需要我们键入密码,它是通过eCryptFS PAM模块来做到这一点的,该模块为我们完成了这项任务。

万一你不想在登录时让~/Private目录自动挂载,只要在运行ecryptfs-setup-private工具时,添加“--noautomount”这个选项。同样,如果你不想在退出后让~/Private目录自动卸载,只要指定“--noautoumount”这个选项。不过那样的话,你就得亲自手动挂载或卸载~/Private目录了。

$ ecryptfs-mount-private ~/.Private ~/Private

$ ecryptfs-umount-private ~/Private

你可以运行下面这个命令,确认.Private文件已挂载:

$ mount

现在我们可以开始将任何敏感文件放入到~/Private文件夹里面,我们退出后,它们会自动加密,并在~/.Private文件夹里面严加保护起来。

这一切似乎相当神奇。从根本上来说,ecryptfs-setup-private工具让一切易于安装。如果你想多尝试一下,安装eCryptFS的特定部分,可以参阅官方说明文档

方法一:用tar命令 对文件加密压缩和解压

压缩:

tar -zcf  - filename |openssl des3 -salt -k password | dd of=filename.des3

此命令对filename文件进行加码压缩 生成filename.des3加密压缩文件, password 为加密的密码。

方法二:用zip命令对文件加密压缩和解压

zip -re filename.zip filename 回车,输入2次密码


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7157500.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-02
下一篇 2023-04-02

发表评论

登录后才能评论

评论列表(0条)

保存