LUKS Tam Disk Şifreleme: Linux Sunucu Kurulum Kılavuzu
15 dakikalık okuma - 5 Haziran 2026

LUKS2 kurulumu, LVM düzeni, anahtar yönetimi, Tang ve TPM ile uzaktan kilit açma ve sertleştirmeyi kapsayan Linux sunucuları için LUKS tam disk şifreleme.
LUKS tam disk şifreleme sunucu kılavuzu
LUKS (Linux Unified Key Setup), tüm Linux blok aygıtını şifreler, böylece anahtar olmadan içeriği okunamaz hale gelir. Çalınan bir sürücü, hizmet dışı bırakılan bir kasa, unutulan bir yedekleme diski: LUKS doğru bir şekilde kurulduğunda bunların hiçbiri verilerinizi açığa çıkarmaz. Bu yazı, LVM düzeni, anahtar yönetimi, uzaktan kilit açma ve kullanıcıların kendi verilerine erişememesine neden olan arıza modları dahil olmak üzere, bir sunucuda LUKS tam disk şifrelemesinin nasıl uygulanacağını ele almaktadır.
Buradaki referans uygulama, CPU'da AES-NI bulunan bir Linux sunucusunda, şifrelenmiş kapsül içinde LVM ile LUKS2'dir. Bu kombinasyon, tüm modern iş yüklerini yönetir, iyi performans gösterir ve HIPAA, PCI-DSS, GDPR ve SOC 2'deki depolanan verilerle ilgili gereksinimleri karşılar.
Neden LUKS2 ve ilk olarak nelere dikkat edilmeli
LUKS, dm-crypt kullanarak blok aygıt katmanında şifreleme yapar ve ana anahtar LUKS başlığındaki anahtar yuvalarında saklanır. Bu ayrım önemlidir: diski yeniden şifrelemeden parolaları değiştirebilir veya yeni anahtarlar ekleyebilirsiniz.
LUKS2 şu anda varsayılan ayardır. 32 adede kadar anahtar yuvasını, JSON biçimindeki meta verileri, çevrimiçi yeniden şifrelemeyi ve --integrity bayrağı aracılığıyla kimlik doğrulamalı şifrelemeyi destekler. LUKS1, 8 anahtar yuvasını destekler ve eski sistemlerde sorunsuz çalışır, ancak yeni kurulumlarda LUKS2 ile başlanmalıdır.
AES-NI ile performans yükü, modern donanımlarda genellikle %5'in altındadır. Başlamadan önce kontrol edin:
grep -o aes /proc/cpuinfo | head -1
cryptsetup benchmarkEğer grep hiçbir şey döndürmezse, CPU'nuzda AES-NI yoktur ve yoğun I/O altında şifreleme CPU'ya bağlı olacaktır. cryptsetup benchmark komutu şifreleme başına verimi gösterir, böylece donanımınızın desteklediği en hızlı olanı seçebilirsiniz. Ayrıca cryptsetup'ın kurulu olduğunu ve dm-crypt çekirdek modülünün mevcut olduğunu da kontrol edin. Her ikisi de Ubuntu, Debian, RHEL ve Arch'ta varsayılan olarak gelir.
Disk düzeni
İki bölüm şifrelenmez: EFI sistem bölümü (512 MB FAT32) ve /boot (1 ila 2 GB, ext4 veya xfs). GRUB, şifre sorusu görüntüleyebilmek için her ikisini de okumalıdır. Diğer her şey LUKS konteyneri içinde bulunur.
Önerilen düzen, LUKS içindeki LVM'dir: bir LVM birim grubunu barındıran bir LUKS kapsayıcısı, kök, takas ve herhangi bir veri bölümü için mantıksal birimler. Bu, LVM meta verilerini şifreli tutar ve LUKS katmanına dokunmadan birimlerin boyutunu değiştirmenize veya anlık görüntü almanıza izin verir. LUKS-on-LVM de çalışır, ancak birim grubu yapısını açığa çıkarır.
| Bölüm | Boyut | Dosya sistemi | Şifreli |
|---|---|---|---|
| EFI sistemi | 512 MB ila 1 GB | FAT32 | Hayır |
/boot | 1 ila 2 GB | ext4 / xfs | Hayır |
| LUKS konteyneri | Kalan alan | LUKS2 | Evet |
| LVM kök | 20 ila 100 GB+ | ext4 / xfs | Evet (LUKS içinde) |
| LVM takas | RAM ile eşit | takas | Evet (LUKS içinde) |
ext4, kök birim için güvenli varsayılan seçenektir. xfs, büyük dosyaları ve paralel yazma işlemlerini daha iyi yönetir; bu da medya, ML ve veritabanı sunucuları için önemlidir. SSD'ler ve NVMe için discard seçeneğini /etc/crypttab seçeneğini ekleyin. TRIM, hangi sektörlerin kullanımda olduğunu gösterir; bu da küçük bir bilgi sızıntısıdır. Çoğu iş yükünde, aşınma dengeleme avantajı buna değer. Tehdit modeliniz cihazın adli analizini içeriyorsa, bu seçeneği devre dışı bırakın.
LVM ile LUKS Kurulumu
Hedef diski lsblk komutuyla hedef diski belirleyin ve mevcut meta verileri silin:
wipefs -a /dev/sdXİsteğe bağlı olarak, şifrelenmiş blokların boş alandan ayırt edilememesi için rastgele verilerle üzerine yazın:
dd if=/dev/urandom of=/dev/sdX bs=1M status=progressLUKS2 konteynerini başlatın. --sector-size 4096 komutunu kullanın:
cryptsetup luksFormat --type luks2 --sector-size 4096 /dev/sdX
cryptsetup luksOpen /dev/sdX cryptdataDiske herhangi bir veri kaydetmeden önce başlığı hemen yedekleyin:
cryptsetup luksHeaderBackup /dev/sdX --header-backup-file luks-header-backup.imgKilidi açılmış kapsayıcının üzerine LVM oluşturun, ardından mantıksal birimleri biçimlendirin:
pvcreate /dev/mapper/cryptdata
vgcreate vg_secure /dev/mapper/cryptdata
lvcreate -L 50G -n lv_root vg_secure
lvcreate -L 8G -n lv_swap vg_secure
mkfs.xfs /dev/vg_secure/lv_root
mkswap /dev/vg_secure/lv_swapUUID'yi kullanarak /etc/crypttab , /dev/sdX, çünkü bu yeniden başlatmalar arasında değişebilir. Bunu blkid /dev/sdX:
cryptdata UUID=<your-uuid> none luks,discardArdından /etc/fstab:
/dev/vg_secure/lv_root / xfs defaults,noatime 0 1Şifreleme kancalarının önyükleme sırasında yüklenmesi için initramfs'yi yeniden oluşturun:
# Debian/Ubuntu
update-initramfs -u -k all
# RHEL/Fedora
dracut -f --regenerate-allYeniden başlatın, parolayı girin ve cryptsetup status cryptdata ve lsblk -f. İkincisi, şifrelenmiş bölümün FSTYPE'ı olarak crypto_LUKS şifrelenmiş bölümün FSTYPE'ı olarak göstermelidir.
Anahtar yönetimi ve uzaktan kilit açma
LUKS2, 32 anahtar yuvasını destekler. Başlangıçta en az üçünü kullanın: bir yönetici parolası, çevrimdışı olarak saklanan bir kurtarma anahtarı (yazdırılıp kilitli bir yerde veya kasada şifrelenmiş bir USB'de) ve ikincil veri birimlerinin otomatik olarak kilidini açmak için bir anahtar dosyası. 95 basılabilir ASCII karakterine sadık kalın, çünkü ASCII dışı karakterler önyükleme isteminde klavye düzeni sorunlarına neden olur ve bunların hata ayıklaması çok sinir bozucudur. Erişimi olan biri ekipten ayrıldığında yönetici parolasını değiştirin.
Etkin yuvaları cryptsetup luksDump /dev/sdXile görüntüleyin, cryptsetup luksAddKeyile bir anahtar ekleyin ve cryptsetup luksKillSlot. Tüm anahtar dosyalarını sıkı izinlerle koruyun:
chmod 0400 /etc/luks/keyfile.binUzak veri merkezlerindeki başsız sunucular için, parola isteminde sorun yaşanabilir. Bunu çözmenin üç yolu vardır:
| Yöntem | En uygun olduğu durum | Avantaj ve dezavantaj |
|---|---|---|
| Initramfs'deki Dropbear | SSH üzerinden manuel kilit açma | Yeniden başlatma sırasında yine de insan müdahalesi gerekir |
| Clevis + Tang (NBDE) | Güvenilir bir ağda otomatik kilit açma | Önyükleme için sunucunun Tang sunucusuna erişmesi gerekir |
| systemd-cryptenroll aracılığıyla TPM2 | Donanım bağımlı otomasyon | Firmware güncellemeleri PCR değerlerini değiştirebilir ve sizi dışarıda bırakabilir |
Dropbear, initramfs'de küçük bir SSH sunucusu çalıştırır. Önyüklemeden sonra SSH ile bağlanıp parolayı manuel olarak girersiniz. Clevis, Tang ile ağa bağlı disk şifreleme kullanır: sunucu, güvenilir ağdaki bir Tang sunucusuna ulaşabildiği sürece kendini kilidini açar. Tang, anahtarınızı saklamaz; McCallum-Relyea değişiminin yarısını sağlar. sss pin ile birden fazla Tang sunucusu kullanın, böylece biri çevrimdışı olsa bile kilit açma işlemi çalışmaya devam eder. TPM 2.0 bağlama systemd-cryptenroll anahtarı PCR 7'ye (Güvenli Önyükleme durumu) bağlar, böylece sunucu yalnızca bellenim ve önyükleyiciyle oynanmamışsa kilidini açar. Bellenim güncellemeleri PCR değerlerini değiştirdiği için, TPM kullanırken her zaman yedek olarak bir parola anahtar yuvası bulundurun.
Güvenliği artırma ve kilitlenmeleri önleme
En az 20 karakterden oluşan parolalar kullanın. --integrity zaman luksFormat , tehdit modeliniz sadece gizlilik değil, veri tahrifatını da içeriyorsa etkinleştirin. Bu, yazma amplifikasyonu maliyetini beraberinde getirir, bu nedenle önce performans testi yapın.
Bir LUKS konteynerini makineler arasında kopyalamayın. Birim anahtarı da onunla birlikte kopyalanır, bu nedenle bir ana bilgisayardaki parolayı değiştirmek diğerini korumaz. Her diski ayrı ayrı yeniden biçimlendirin.
Güvenli hizmetten çıkarma için, cryptsetup erase /dev/sdX tüm anahtar yuvalarını milisaniyeler içinde siler ve diski fiziksel olarak imha edilmeden kurtarılamaz hale getirir. Bu tek başına, her şeyi varsayılan olarak şifrelemek için güçlü bir argümandır.
Yaygın arıza modları:
| Belirti | Muhtemel neden | Çözüm |
|---|---|---|
| Önyükleme, parola isteminde takılır | Klavye düzeni uyuşmazlığı | Düzeni değiştirin veya kurtarma anahtarını kullanın |
| "Aygıt geçerli bir LUKS aygıtı değil" | Yanlış aygıt yolu | Bölüm lsblk Bölüm mü yoksa tüm disk mi? |
| Önyükleme sırasında klavye yanıt vermiyor | Initramfs kanca sırası | Yer keyboard öncesine encrypt in mkinitcpio.conf |
| GRUB şifre sorusunu atlıyor | GRUB_ENABLE_CRYPTODISK ayarlanmamış | Ayarla GRUB_ENABLE_CRYPTODISK=y içinde /etc/default/grub, GRUB'u yeniden yükleyin |
| "Kök aygıt bulunamadı" | Eksik lvm2 veya encrypt kancalar | Hook'ları ekleyin ve çalıştırın mkinitcpio -P |
En önemli hata modu başlık bozulmasıdır. LUKS başlığı kaybolur veya bozulursa, veriler kaybolur. Başlık yedeklemesinden geri yükleme dışında kurtarma imkanı yoktur. Bir kopyasını ayrı bir ortama, ideal olarak iki farklı konuma kaydedin ve asla şifrelenmiş diskin kendisine kaydetmeyin. Kritik olmayan ikincil birimler için nofail ekleyin /etc/crypttab ekleyin, böylece montaj hatası önyüklemeyi durdurmaz.
FDC özel sunucuları, kutudan çıktığı anda AES-NI ve tam disk şifrelemesini destekleyen donanımla birlikte gelir. Dağıtım yapmaya hazır olduğunuzda bir özel sunucu yapılandırın.

Yavaş dağıtımlardan veya bant genişliği sınırlarından bıktınız mı? FDC Sunucuları anında tahsis edilmiş güç, küresel erişim ve her ölçek için oluşturulmuş esnek planlar sunar. Yükseltmeye hazır mısınız?
Performansın Kilidini Şimdi Açın
Linux Trafik Kontrolü (tc): Pratik Bir Kılavuz
Tc ile Linux üzerinde bant genişliğini kontrol edin, trafiğe öncelik verin ve giriş ve çıkışları şekillendirin. Gerçek sunucular için çalışan HTB, IFB, DSCP ve fq_codel yapılandırması.
12 dakikalık okuma - 5 Haziran 2026
Güçlü ve ölçülmemiş bir VPS'ye sahip olmak neden önemlidir?
7 dakikalık okuma - 9 Mayıs 2025

Sorularınız mı var veya özel bir çözüme mi ihtiyacınız var?
Esnek seçenekler
Küresel erişim
Anında dağıtım
Esnek seçenekler
Küresel erişim
Anında dağıtım