Geridönüş aygıtının (loop device) ayarlanması

Cryptoloop bir dosya üzerine veya bütün bir dosya sistemi üzerine uygulanabilir. Aşağıda belirli bir bölüme nasıl uygulanabileceğini görebilirsiniz. Bu bölüm istediğiniz herhangibir bölüm olabilir; örnekte /dev/sda1 kullanılıyor. Şifreleyici olarak AES'i seçtim, ama siz çekirdekte seçtiğiniz diğer şifreleyicileri de seçebilirsiniz. Şu an çalıştığınız çekirdeğinizin desteklediği algoritmaları /proc/crypto altına bakarak görebilirsiniz. Bruce Schneier'in 'Applied Cryptography' ve 'Practical Cryptography' isimli kitapları değişik kriptografik algoritmaları tartışan mükemmel kaynaklardır. AES ve Serpent mantıklı birer seçimdir. AES uzun süredir analiz edilmiştir ve şimdiye dek ciddi zayıflıkları bulunmamıştır. Serpent fazla test edilmemesine rağmen AES ten biraz daha güçlü olduğu düşünülür. Fakat Serpent aynı zamanda AES'ten biraz daha yavaştır. DES'ten uzak durun, hem yavaş hem de zayıftır. Üçlü-DES (triple-des) bir çözüm olabilir, ama AES büyük ihtimalle hem daha güvenli hem daha hızlıdır, yani aslında Üçlü-DES'i kullanmanın artık pek mantığı yok.

  1. Bir bölümde şifreli dosya sistemi kurmadan önce o bölümü biçimlemeniz ve rastgele veriyle doldurmanız tavsiye edilir. Bu, bir saldırganın şifrelenmiş diskiniz üzerinde anlamlı dizgelere/kalıplara rastlamasını zorlaştıracaktır.

    Uyarı

    Bölümünüz için burada ne yazdığınıza dikkat edin. Bir hata yaparsanız, yanlış bölümü rasgele veriyle doldurabilirsiniz!

    Bir disk bölümünü şu şekilde rasgele veriyle doldurabilirsiniz:

    dd if=/dev/urandom of=/dev/sda1 bs=1M
    

    Aygıtın dolduğunu bildiren bir hata iletisi alabilirsiniz. Bunu önemsemeyin.

  2. Bir şifreleyici ve anahtar boyu seçin. çekirdeğiniz tarafından desteklenen şifreleyicileri /proc/crypto dosyasından öğrenebilirsiniz. Ben 256 bitlik anahtar ile AES kullanmanızı tavsiye ediyorum.

  3. Geridönüş aygıtını ayarlayın. Bu, util-linux paketi ile gelen losetup komutu kullanılarak yapılır. Aşağıdaki komut /dev/sda1 üzerinde loop device 0 kullanarak 256 bitlik anahtar ve AES ile şifrelenmiş bir dosya sistemi oluşturur:

    losetup -e aes-256 /dev/loop0 /dev/sda1
    

    Komut bir parola sorar. Güçlü bir parola seçin ve parolayı bir yere yazmadan aklınızda tutmaya çalışın. Cryptoloop ile ilgili büyük bir soruna geldik. Şifreleme anahtarı oluşturulurken parola hash' landığından parolayı ileride değiştirmek pek kolay değildir. Bunun en kolay yolu şifrelenmiş yeni bir bölüm oluşturup bütün veriyi oraya taşımaktır. Bu yüzden başlangıçta güçlü bir parola seçtiğinizden emin olun. AES güçlü bir algoritmadır, ama siz kötü bir parola seçerseniz güvenliği çöpe atmış olursunuz.

    Eğer losetup bir yanlış argüman (INVALID ARGUMENT) şeklinde hata iletisi verirse util-linux paketinizde bir sorun var demektir. Yukarıda bahsettiğimiz yamalı sürümü yüklemede bir hata yapıp yapmadığınızı kontrol edin. Eski veya yamasız sürümler bu hataya sebep olabilir.

  4. Bir dosya sistemi oluşturun. İstediğiniz türden dosya sistemi oluşturabilirsiniz. Aşağıda geridönüş aygıtı kullanılarak ext3 dosya sistemi oluşturulmuştur:

    mkfs.ext3 /dev/loop0

  5. Şifrelenmiş dosya sistemini bağlayın. Önce bir bağlama noktası oluşturmalısınız, mesela /mnt/crypto:

    mkdir /mnt/crypto

    Sonra dosya sistemini bağlamalısınız. Bu aşamada bağlayıcıya tam olarak hangi geridönüş aygıtını kullanacağını söylemelisiniz:

    mount -t ext3 /dev/loop0 /mnt/crypto
    

  6. Şimdi sıkılana kadar şifrelenmiş dosya sisteminizle oynayabilirsiniz. :)

  7. İşiniz bittiğinde dosya sistemini ayırın:

    umount /mnt/crypto

  8. Geridönüş aygıtını çıkarın. Geridönüş aygıtı hala sizin bölümünüze bağlanmış durumdadır. Şu şekilde çıkarın:

    losetup -d /dev/loop0