Centos

自動掛載加密文件系統(使用隨機密鑰),駐留在 CentOS 6 下的正常文件中。*

  • September 11, 2013

任務:在 CentOS 6.x 系統中,使用一次性(隨機)密鑰設置和掛載自動加密的文件系統,駐留在正常文件中。

CentOS 6.* 中的 /etc/crypttab 不允許使用純文件作為塊設備來自動掛載和映射。

所以,/etc/crypttab 行是這樣的

cfs   /var/file-with-encrypted-filesystem    some-password-source

在 CentOS 中被忽略。

以下命令序列可用於在 CentOS 中執行該任務:

losetup /dev/loop0 /var/tmpfile
dd if=/dev/urandom of=/dev/shm/tmppass bs=512 count=1
cryptsetup luksFormat /dev/loop0 --use-urandom --batch-mode --key-file /dev/shm/tmppass
cryptsetup luksOpen /dev/loop0 ctmp --batch-mode --key-file /dev/shm/tmppass
mkfs.ext2 /dev/mapper/ctmp
mount -t ext2 /dev/mapper/ctmp /mountpoint
shred -n 1 /dev/shm/tmppass
rm -f /dev/shm/tmppass

假設保存文件系統的文件是 /var/tmpfile

以類似 Debian 的方式(在 /etc/crypttab 和 /etec/fstab 中指定相關條目)是否有更簡單的方法來實現相同的目標?

以下 /etc/crypttab 條目是您在 Ubuntu 中的操作方式:

# <target name>  <source device>                      <key file>    <options>
cfs              /var/file-with-encrypted-filesystem  /dev/urandom  tmp=ext4

與加密交換的處理方式非常相似 - 請參見下面的 crypttab 手冊頁範例:

# Encrypted swap device
cswap /dev/sda6 /dev/urandom cipher=aes-cbc-essiv:sha256,hash=ripemd160,size=256,swap

CentOS 上的 crypttab 手冊頁是否提供了有關這樣做的任何指導?目前沒有 CentOS 機器,但在 RHEL 6 機器上支持相同的選項。


好吧好吧,我很好奇。這行得通,而且更好一些。把它放在像/etc/rc.local. 在 RH 6 上測試:

LODEV=$(losetup -f)
losetup $LODEV /path/to/existing/cryptfile
cryptsetup create cfs $LODEV --key-file /dev/urandom
mkfs.ext2 /dev/mapper/cfs 
mount /dev/mapper/cfs /wherever

引用自:https://serverfault.com/questions/537972