ubuntu 文件加密,ubuntu文件上有个锁

本篇文章给大家谈谈ubuntu 文件加密,以及ubuntu文件上有个锁对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

ubuntu系统中文件夹怎么加密

GPG(GnuPG)是一个基于命令行的给文件加密的工具,使用起来很方便,但对于刚刚接触Linux的人来说,可能会觉得命令行比较困难。下面介绍GPG的基本用法。

1.生成密钥

在使用GPG之前,必须生成一对密钥。

[linuxeye@ubuntudesk]$ gpg–gen-key

gpg(GnuPG) 1.4.6; Copyright(C) 2006 Free Software Foundation, Inc.

This program comes with ABSOLUTELY NO WARRANTY.

This is free software, and you are welcome to redistribute it

under certain conditions. See the file COPYING for details.

Please select what kind of key you want:

(1) DSA and Elgamal(default)

(2) DSA(sign only)

(5) RSA(sign only)

Your selection?

上面的意思是问你选择哪种加密方式 DAS AND EIGamal, DAS,EIGAMAL。第一个是默认的,它包括GPG的全部特性。一般我们都选择它,直接Enter。

DSA keypair will have 1024 bits.

ELG-E keys may be between 1024 and 4096 bits long.

What keysize do you want?(2048)

接下来它会问你想要的keysize,我们一般默认就可以了,直接Enter。当然你还可以根据自己的保密需要选择其它的。

Please specify how long the key should be valid.

0= key does not expire

d= key expires in n days

w= key expires in n weeks

m= key expires in n months

y= key expires in n years

Key is valid for?(0)

接下来要做的是设置密码的时间限制。如果不需要密码期限的话就选 0,直接Enter。而如果需要的话就选其它的,比如 1y是指一年,还可以指定是天数,周数,月数。

You need a user ID to identify your key; the software constructs the user ID

from the Real Name, Comment and Email Address in this form:

“Heinrich Heine(Der Dichter)“

上面是要求输入你的个人信息,用户ID由三个部分组成:真名(Real Name),注解(Comment),和Email

地址。只有一个一个输入就行了。

最后一步是输入密码(passphrase),这个密码是解密的时候用的,重复输入一次就生成一个Key。我们可以输入gpg–list-keys查看我们的key的信息

2使用 GnuPG

一加密

在生成密钥之后,我们就可以开始使用GPG来加密文件了。创建一个文本文件test,输入一些字符,然后保存。

[linuxeye@ubuntudesk]$ gpg-ea-r name test

其中name是你在上面用来生成密钥时输入的用户名,用这个用户名加密的文件只能由这个用户名来解密。回车之后就会生成一个test.asc的文件,这个就是加密之后的文件。-e选项告诉GPG进行加密,-a选项告诉GPG加密成ASCII,这样适合邮件发送,而且还可以查看。如果不是加密成ASCII形式,可以加密成二进制。-r指定加密的用户。

二解密

直接输入以下命令,便可以查看你加密过的文档,但不能还原为原来的文件,只是在命令行下。

[linuxeye@ubuntudesk]$ gpg-d test.asc

敲入回车以后,会要求你输入密码,只要输入上面生成密钥时的那个密码就行了,如果想将文件还原为文本文件,只需如下命令就可以了:

[linuxeye@ubuntudesk]$ gpg-d test.asc>test.file

(声明:本篇文章由LinuxEye.cn保留版权,转载时请保留本声明)

命令行难用?难用更好啊,加密的更彻底,一般人都不知道怎么解啊

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

加密类型

我们主要有两种加密文件和目录的方法。一种是文件系统级别的加密,在这种加密中,你可以选择性地加密某些文件或者目录(如,/home/alice)。对我而言,这是个十分不错的方法,你不需要为了启用或者测试加密而把所有一切重新安装一遍。然而,文件系统级别的加密也有一些缺点。例如,许多现代应用程序会缓存(部分)文件你硬盘中未加密的部分中,比如交换分区、/tmp和/var文件夹,而这会导致隐私泄漏。

另外一种方式,就是所谓的全盘加密,这意味着整个磁盘都会被加密(可能除了主引导记录外)。全盘加密工作在物理磁盘级别,写入到磁盘的每个比特都会被加密,而从磁盘中读取的任何东西都会在运行中解密。这会阻止任何潜在的对未加密数据的未经授权的访问,并且确保整个文件系统中的所有东西都被加密,包括交换分区或任何临时缓存数据。

可用的加密工具

在Linux中要实施加密,有几个可供选择的工具。在本教程中,我打算介绍其中一个:eCryptFS,一个用户空间文件系统加密工具。下面提供了一个Linux上可用的加密工具摘要供您参考。

文件系统级别加密

EncFS:尝试加密的最简单方式之一。EncFS工作在基于FUSE的伪文件系统上,所以你只需要创建一个加密文件夹并将它挂载到某个文件夹就可以工作了。

eCryptFS:一个POSIX兼容的加密文件系统,eCryptFS工作方式和EncFS相同,所以你必须挂载它。

磁盘级别加密

Loop-AES:最古老的磁盘加密方法。它真的很快,并且适用于旧系统(如,2.0内核分支)。

DMCrypt:最常见的磁盘加密方案,支持现代Linux内核。

CipherShed:已停止的TrueCrypt磁盘加密程序的一个开源分支。

eCryptFS基础

eCrypFS是一个基于FUSE的用户空间加密文件系统,在Linux内核2.6.19及更高版本中可用(作为encryptfs模块)。eCryptFS加密的伪文件系统是挂载到当前文件系统顶部的。它可以很好地工作在EXT文件系统家族和其它文件系统如JFS、XFS、ReiserFS、Btrfs,甚至是NFS/CIFS共享文件系统上。Ubuntu使用eCryptFS作为加密其家目录的默认方法,ChromeOS也是。在eCryptFS底层,默认使用的是AES算法,但是它也支持其它算法,如blowfish、des3、cast5、cast6。如果你是通过手工创建eCryptFS设置,你可以选择其中一种算法。

就像我所的,Ubuntu让我们在安装过程中选择是否加密/home目录。好吧,这是使用eCryptFS的最简单的一种方法。

Ubuntu提供了一个用户友好的工具集,通过eCryptFS可以让我们的生活更轻松,但是在Ubuntu安装过程中启用eCryptFS只创建了一个指定的预配置的设置。所以,如果默认的设置不适合你的需求,你需要进行手工设置。在本教程中,我将介绍如何在主流Linux发行版上手工设置eCryptFS。

eCryptFS的安装

Debian,Ubuntu或其衍生版:

代码如下:

$ sudo apt-get install ecryptfs-utils

注意,如果你在Ubuntu安装过程中选择加密家目录,eCryptFS应该已经安装了。

CentOS, RHEL or 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目录:

[/code]$ ecryptfs-mount-private~/.Private~/Private

$ ecryptfs-umount-private~/Private

你可以来验证一下.Private文件夹是否被挂载,运行:

代码如下:

$ mount

现在,我们可以开始把任何敏感文件放进~/Private文件夹里头了,它们会在我们登出时自动被加密并锁在~/.Private文件内。

所有这一切看起来是那么得神奇。这主要是ecryptfs-setup-private工具让一切设置变得简单。如果你想要深究一点,对eCryptFS指定的方面进行设置,那么请转到官方文档。

结尾

综上所述,如果你十分关注你的隐私,最好是将基于eCryptFS文件系统级别的加密和全盘加密相结合。切记,只进行文件加密并不能保证你的隐私不受侵犯。

教你如何给Ubuntu系统文件加密

椋┳酉低吃谀�锹际弊霸刂髂柯嫉幕埃�闵踔粱鼓芗用苷�鲋髂柯肌R蛭猯ibpam-mount模块允许PAM在用户登录时自动装载任意设备,所以我们要连同openssl一起来安装该模块。命令如下所示:$ sudo apt-get install libpam-mount openssl接下来,编辑文件/etc/pam.d/common-auth,在其末尾添加下列一行: auth optional pam_mount.so use_first_pass然后在文件/etc/pam.d/common-session末尾添加下列一行内容: session optional pam_mount.so现在,我们来设置PAM,告诉它需要装载哪些卷、以及装载位置。对本例而言,假设用户名是Ian,要用到的设备是/dev/sda1,要添加到/etc/security/pam_mount.conf文件中的内容如下所示: volume Ian crypt-/dev/sda1/home/Ian cipher=aes aes-256-ecb/home/Ian.key如果想使用磁盘映象,你需要在此规定回送设备(比如/dev/loop/0),并确保在Ian登录之前系统已经运行losetup。为此,你可以将 losetup/dev/loop/0/home/secret.img放入/etc/rc.local文件中。因为该卷被加密,所以PAM需要密钥来装载卷。最后的参数用来告诉PAM密钥在/home/Ian.key文件中,为此,通过使用OpenSSL来加密你的口令来建立密钥文件:$ sudo sh-c"echo'YOUR PASSPHRASE'| openssl aes-256-ecb>/home/Ian.key"这时,提示你输入密码。注意,这里的口令必需和想要的用户登录密码一致。原因是当你登录时,PAM需要你提供这个密码,用以加密你的密钥文件,然后根据包含在密钥文件中的口令用dm-crypt装载你的主目录。需要注意的是,这样做会把你的口令以明文的形式暴露在.history文件中,所以要及时利用命令history-c清楚你的历史记录。此外,要想避免把口令存放在加密的密钥文件中的话,可以让创建加密文件系统的口令和登录口令完全一致。

阅读剩余
THE END