Sistemin Hazırlanması

Bölümleme düzeninin hazırlanması

Sabit diskiniz (hda) en azından aşağıdaki üç bölümden oluşmalıdır:

  • hda1: Bu küçük şifrelenmemiş disk bölümü şifrelenmiş kök dosya sistemini bağlayabilmeniz için gerekli parolayı soracaktır.
  • hda2: Bu bölüm şifrelenmiş kök dosya sisteminiz olacak, yeterince büyük olduğundan emin olun.
  • hda3: Bu bölüm çalışan GNU/Linux sisteminizdir.

Bu aşamada hda1 ve hda2 kullanılmamaktadır. hda3 ise kurulu Linux dağıtımınızın bulunduğu dizindir. /usr ve /boot farklı disk bölümleri olmamalıdır.

Bölümleme düzeniniz aşağıdaki örneğe benzemelidir:

# fdisk -l /dev/hda

Disk /dev/hda: 255 heads, 63 sectors, 2432 cylinders
Units = cylinders of 16065 * 512 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/hda1             1         1      8001   83  Linux
/dev/hda2             2       263   2104515   83  Linux
/dev/hda3           264       525   2104515   83  Linux
/dev/hda4           526      2047  12225465   83  Linux

Gerekli paketler

Eğer Debian kullanıyorsanız, aşağıdaki paketleri kurmak zorundasınız:

# apt-get install gcc make libncurses5-dev patch bzip2 wget

Kopyala/yapıştır işlemlerini kolaylaştırmak için şu paketleri de kursanız iyi olur:

# apt-get install lynx gpm

Linux-2.4.29 çekirdeğinin kurulması

Ç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.

Linux-2.6.10 çekirdeğinin kurulması

Yukarıdaki işlemleri loop-aes'in kernel-2.6.10.diff yamasını kullanarak yerine getirin ve cryptoloop desteğinin etkin olmadığından emin olun. Modül desteğinin module-init-tools paketine ihtiyaç duyduğunu unutmayın.

Util-linux-2.12p paketinin kurulması

util-linux paketinin bir parçası olan losetup programının güçlü kriptografi desteğine sahip olması için yamanması ve yeniden derlenmesi gerekir. util-linux paketini indirip, açın ve yamayın:

$ cd /usr/src
$ wget http://ftp.kernel.org/pub/linux/utils/util-linux/util-linux-2.12p.tar.bz2
$ tar -xvjf util-linux-2.12p.tar.bz2
$ cd util-linux-2.12p
$ patch -Np1 -i ../loop-AES-v3.0b/util-linux-2.12p.diff

20 karakterden daha kısa parolalar kullanabilmek için aşağıdaki komutu girin:

CFLAGS="-O2 -DLOOP_PASSWORD_MIN_LENGTH=8"; export CFLAGS

Temel kaygınız güvenlik olduğundan lütfen 20 karakterden daha kısa parolaları girebilmeyi etkin yapmayın. Bilgi gizliliği bedava değildir, uzun parolalar bunun 'bedeli'dir.

losetup'ı derleyin ve root olarak kurun:

$ ./configure && make lib mount
# mv -f /sbin/losetup /sbin/losetup~
# rm -f /usr/share/man/man8/losetup.8*
# cd mount
# gzip losetup.8
# cp losetup /sbin
# cp losetup.8.gz /usr/share/man/man8/
# chattr +i /sbin/losetup