| .. SPDX-License-Identifier: GPL-2.0 | |
| ====================================================== | |
| eCryptfs: A stacked cryptographic filesystem for Linux | |
| ====================================================== | |
| eCryptfs is free software. Please see the file COPYING for details. | |
| For documentation, please see the files in the doc/ subdirectory. For | |
| building and installation instructions please see the INSTALL file. | |
| :Maintainer: Phillip Hellewell | |
| :Lead developer: Michael A. Halcrow <mhalcrow@us.ibm.com> | |
| :Developers: Michael C. Thompson | |
| Kent Yoder | |
| :Web Site: http://ecryptfs.sf.net | |
| This software is currently undergoing development. Make sure to | |
| maintain a backup copy of any data you write into eCryptfs. | |
| eCryptfs requires the userspace tools downloadable from the | |
| SourceForge site: | |
| http://sourceforge.net/projects/ecryptfs/ | |
| Userspace requirements include: | |
| - David Howells' userspace keyring headers and libraries (version | |
| 1.0 or higher), obtainable from | |
| http://people.redhat.com/~dhowells/keyutils/ | |
| - Libgcrypt | |
| .. note:: | |
| In the beta/experimental releases of eCryptfs, when you upgrade | |
| eCryptfs, you should copy the files to an unencrypted location and | |
| then copy the files back into the new eCryptfs mount to migrate the | |
| files. | |
| Mount-wide Passphrase | |
| ===================== | |
| Create a new directory into which eCryptfs will write its encrypted | |
| files (i.e., /root/crypt). Then, create the mount point directory | |
| (i.e., /mnt/crypt). Now it's time to mount eCryptfs:: | |
| mount -t ecryptfs /root/crypt /mnt/crypt | |
| You should be prompted for a passphrase and a salt (the salt may be | |
| blank). | |
| Try writing a new file:: | |
| echo "Hello, World" > /mnt/crypt/hello.txt | |
| The operation will complete. Notice that there is a new file in | |
| /root/crypt that is at least 12288 bytes in size (depending on your | |
| host page size). This is the encrypted underlying file for what you | |
| just wrote. To test reading, from start to finish, you need to clear | |
| the user session keyring: | |
| keyctl clear @u | |
| Then umount /mnt/crypt and mount again per the instructions given | |
| above. | |
| :: | |
| cat /mnt/crypt/hello.txt | |
| Notes | |
| ===== | |
| eCryptfs version 0.1 should only be mounted on (1) empty directories | |
| or (2) directories containing files only created by eCryptfs. If you | |
| mount a directory that has pre-existing files not created by eCryptfs, | |
| then behavior is undefined. Do not run eCryptfs in higher verbosity | |
| levels unless you are doing so for the sole purpose of debugging or | |
| development, since secret values will be written out to the system log | |
| in that case. | |
| Mike Halcrow | |
| mhalcrow@us.ibm.com |