Çekirdekte geridönüş şifreleme desteği veren iki temel proje bulunmaktadır:
cryptoloop ve
loop-AES. Bu belgede
loop-AES temel alınmıştır. Bunu nedeni oldukça hızlı olması, Rijndael'in çevirici dilinde en iyi şekilde kullanılmış hali olması ve IA-32 (x86) işlemcilerde en iyi performansı vermesidir. Bunun yanında
cryptoloop ile ilgili
güvenlik sorunları da vardır.
Öncelikle, loop-AES paketini indirin ve açın::
$ cd /usr/src
$ wget http://loop-aes.sourceforge.net/loop-AES/loop-AES-v3.0b.tar.bz2
$ tar -xvjf loop-AES-v3.0b.tar.bz2
Ardından çekirdeğin kaynak kodunu indirip yamayı uygulayın:
$ wget http://ftp.kernel.org/pub/linux/kernel/v2.4/linux-2.4.29.tar.bz2
$ tar -xvjf linux-2.4.29.tar.bz2
$ cd linux-2.4.29
$ rm include/linux/loop.h drivers/block/loop.c
$ patch -Np1 -i ../loop-AES-v3.0b/kernel-2.4.28.diff
Klavye düzeninizi ayarlayın:
$ dumpkeys | loadkeys -m - > drivers/char/defkeymap.c
Çekirdeğinizi aşağıdaki seçenekleri de dahil ederek yapılandırın:
$ make menuconfig
Block devices --->
<*> Loopback device support
[*] AES encrypted loop device support (NEW)
<*> RAM disk support
(4096) Default RAM disk size (NEW)
[*] Initial RAM disk (initrd) support
File systems --->
<*> Ext3 journalling file system support
<*> Second extended fs support
(ÖNEMLİ: /dev dosya sistemi desteğini etkinleştirmeyin.)
Çekirdeği derleyin ve kurun:
$ make dep bzImage
$ make modules
# make modules_install
# cp arch/i386/boot/bzImage /boot/vmlinuz
Eğer önyükleyici olarak grub kullanıyorsanız, /boot/grub/menu.lst veya /boot/grub/grub.conf dosyasını güncelleyin:
# cat > /boot/grub/menu.lst << EOF
default 0
timeout 10
color green/black light-green/black
title Linux
root (hd0,2)
kernel /boot/vmlinuz ro root=/dev/hda3
EOF
Lilo kullanıyorsanız /etc/lilo.conf dosyasını güncelleyin ve lilo komutunu çalıştırın:
# cat > /etc/lilo.conf << EOF
lba32
boot=/dev/hda
prompt
timeout=60
image=/boot/vmlinuz
label=Linux
read-only
root=/dev/hda3
EOF
# lilo
Artık sisteminizi yeniden başlatabilirsiniz.