ഫെഡോറ ലിനക്സിൽ LUKS ഉപയോഗിച്ച് ഡ്രൈവുകൾ എങ്ങനെ എൻക്രിപ്റ്റ് ചെയ്യാം


ഈ ലേഖനത്തിൽ, ബ്ലോക്ക് എൻക്രിപ്ഷൻ, ലിനക്സ് യൂണിഫൈഡ് കീ സെറ്റപ്പ് (LUKS) എന്നിവയെക്കുറിച്ച് ഞങ്ങൾ ഹ്രസ്വമായി വിശദീകരിക്കും, കൂടാതെ Fedora Linux-ൽ ഒരു എൻക്രിപ്റ്റ് ചെയ്ത ബ്ലോക്ക് ഉപകരണം സൃഷ്ടിക്കുന്നതിനുള്ള നിർദ്ദേശങ്ങൾ വിവരിക്കുന്നു.

ഒരു ബ്ലോക്ക് ഉപകരണത്തിലെ ഡാറ്റ എൻക്രിപ്റ്റ് ചെയ്ത് സുരക്ഷിതമാക്കാൻ ബ്ലോക്ക് ഡിവൈസ് എൻക്രിപ്ഷൻ ഉപയോഗിക്കുന്നു, കൂടാതെ ഡാറ്റ ഡീക്രിപ്റ്റ് ചെയ്യുന്നതിന്, ഒരു ഉപയോക്താവ് ആക്സസ് ചെയ്യുന്നതിന് പാസ്ഫ്രേസ് അല്ലെങ്കിൽ കീ നൽകണം. സിസ്റ്റത്തിൽ നിന്ന് ശാരീരികമായി വേർപെടുത്തിയാലും ഉപകരണത്തിന്റെ ഉള്ളടക്കം സംരക്ഷിക്കുന്നതിനാൽ ഇത് അധിക സുരക്ഷാ സംവിധാനങ്ങൾ നൽകുന്നു.

LUKS (ലിനക്സ് യൂണിഫൈഡ് കീ സെറ്റപ്പ്) എന്നത് ലിനക്സിലെ ബ്ലോക്ക് ഡിവൈസ് എൻക്രിപ്ഷനുള്ള സ്റ്റാൻഡേർഡാണ്, ഇത് ഡാറ്റയ്ക്കായി ഒരു ഓൺ-ഡിസ്ക് ഫോർമാറ്റും ഒരു പാസ്ഫ്രെയ്സ്/കീ മാനേജ്മെന്റ് നയവും സ്ഥാപിച്ച് പ്രവർത്തിക്കുന്നു. പാർട്ടീഷൻ ഹെഡറിൽ (LUKS ഹെഡർ എന്നും അറിയപ്പെടുന്നു) ആവശ്യമായ എല്ലാ സജ്ജീകരണ വിവരങ്ങളും ഇത് സംഭരിക്കുന്നു, അതുവഴി ഡാറ്റ പരിധിയില്ലാതെ ട്രാൻസ്പോർട്ട് ചെയ്യാനോ മൈഗ്രേറ്റ് ചെയ്യാനോ നിങ്ങളെ അനുവദിക്കുന്നു.

ഉപകരണ ഡാറ്റയുടെ എൻക്രിപ്ഷനും ഡീക്രിപ്ഷനും നിലനിർത്തുന്ന ഒരു ലോ-ലെവൽ മാപ്പിംഗ് നൽകുന്നതിന് dm-crypt മൊഡ്യൂളിനൊപ്പം LUKS കേർണൽ ഡിവൈസ് മാപ്പർ സബ്സിസ്റ്റം ഉപയോഗിക്കുന്നു. എൻക്രിപ്റ്റ് ചെയ്ത ഉപകരണങ്ങൾ സൃഷ്ടിക്കുന്നതും ആക്സസ് ചെയ്യുന്നതും പോലെയുള്ള ഉപയോക്തൃ-തല ടാസ്ക്കുകൾ നിർവ്വഹിക്കാൻ നിങ്ങൾക്ക് ക്രിപ്റ്റ്സെറ്റപ്പ് പ്രോഗ്രാം ഉപയോഗിക്കാം.

ഒരു ബ്ലോക്ക് ഉപകരണം തയ്യാറാക്കുന്നു

ഇൻസ്റ്റാളേഷന് ശേഷം എൻക്രിപ്റ്റ് ചെയ്ത ബ്ലോക്ക് ഡിവൈസുകൾ സൃഷ്ടിക്കുന്നതിനും കോൺഫിഗർ ചെയ്യുന്നതിനുമുള്ള ഘട്ടങ്ങൾ ഇനിപ്പറയുന്ന നിർദ്ദേശങ്ങൾ കാണിക്കുന്നു.

cryptsetup പാക്കേജ് ഇൻസ്റ്റാൾ ചെയ്യുക.

# dnf install cryptsetup-luks

അടുത്തതായി, എൻക്രിപ്റ്റ് ചെയ്യുന്നതിന് മുമ്പ് ഉപകരണം റാൻഡം ഡാറ്റ ഉപയോഗിച്ച് പൂരിപ്പിക്കുക, കാരണം ഇത് ഇനിപ്പറയുന്ന കമാൻഡുകൾ ഉപയോഗിച്ച് എൻക്രിപ്ഷന്റെ ശക്തി ഗണ്യമായി വർദ്ധിപ്പിക്കും.

# dd if=/dev/urandom of=/dev/sdb1	           [slow with high quality random data ]
OR
# badblocks -c 10240 -s -w -t random -v /dev/sdb1  [fast with high quality random data]

മുന്നറിയിപ്പ്: മുകളിലെ കമാൻഡുകൾ ഉപകരണത്തിൽ നിലവിലുള്ള എല്ലാ ഡാറ്റയും ഇല്ലാതാക്കും.

ഒരു എൻക്രിപ്റ്റ് ചെയ്ത ഉപകരണം ഫോർമാറ്റ് ചെയ്യുന്നു

അടുത്തതായി, ഒരു dm-crypt/LUKS എൻക്രിപ്റ്റ് ചെയ്ത ഉപകരണമായി ഡിവൈസ് ഫോർമാറ്റ് ചെയ്യാൻ cryptsetup കമാൻഡ്-ലൈൻ ടൂൾ ഉപയോഗിക്കുക.

# cryptsetup luksFormat /dev/sdb1

കമാൻഡ് പ്രവർത്തിപ്പിച്ചതിന് ശേഷം, ഇനിപ്പറയുന്ന സ്ക്രീൻഷോട്ടിൽ കാണിച്ചിരിക്കുന്നതുപോലെ, ഉപകരണത്തിന് ഉപയോഗത്തിനായി ഫോർമാറ്റ് ചെയ്യുന്നതിനായി രണ്ട് തവണ പാസ്ഫ്രെയ്സ് നൽകുന്നതിന് YES (വലിയക്ഷരത്തിൽ) നൽകാൻ നിങ്ങളോട് ആവശ്യപ്പെടും.

പ്രവർത്തനം വിജയകരമാണോ എന്ന് പരിശോധിക്കാൻ, ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കുക.

# cryptsetup isLuks /dev/sdb1 && echo Success

ഉപകരണത്തിനായുള്ള എൻക്രിപ്ഷൻ വിവരങ്ങളുടെ ഒരു സംഗ്രഹം നിങ്ങൾക്ക് കാണാൻ കഴിയും.

# cryptsetup luksDump /dev/sdb1

ഒരു ഡീക്രിപ്റ്റ് ചെയ്ത ഉള്ളടക്കത്തിലേക്ക് ആക്സസ് അനുവദിക്കുന്നതിന് മാപ്പിംഗ് സൃഷ്ടിക്കുന്നു

ഈ വിഭാഗത്തിൽ, എൻക്രിപ്റ്റ് ചെയ്ത ഉപകരണത്തിന്റെ ഡീക്രിപ്റ്റ് ചെയ്ത ഉള്ളടക്കങ്ങൾ എങ്ങനെ ആക്സസ് ചെയ്യാമെന്ന് ഞങ്ങൾ കോൺഫിഗർ ചെയ്യും. കേർണൽ ഡിവൈസ്-മാപ്പർ ഉപയോഗിച്ച് ഞങ്ങൾ ഒരു മാപ്പിംഗ് സൃഷ്ടിക്കും. ഈ മാപ്പിംഗിനായി, luk-uuid (<uuid> എന്നതിന് പകരം ഉപകരണത്തിന്റെ LUKS UUID(യൂണിവേഴ്uസി യുണീക്ക് ഐഡന്റിഫയർ) എന്നതുപോലുള്ള അർത്ഥവത്തായ ഒരു പേര് സൃഷ്uടിക്കാൻ ശുപാർശ ചെയ്യുന്നു.

നിങ്ങളുടെ എൻക്രിപ്റ്റ് ചെയ്ത ഉപകരണം UUID ലഭിക്കാൻ, ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കുക.

# cryptsetup luksUUID /dev/sdb1

UUID ലഭിച്ച ശേഷം, കാണിച്ചിരിക്കുന്നതുപോലെ നിങ്ങൾക്ക് മാപ്പിംഗ് പേര് സൃഷ്ടിക്കാൻ കഴിയും (നേരത്തെ സൃഷ്ടിച്ച പാസ്ഫ്രെയ്സ് നൽകാൻ നിങ്ങളോട് ആവശ്യപ്പെടും).

# cryptsetup luksOpen /dev/sdb1 luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c

കമാൻഡ് വിജയകരമാണെങ്കിൽ, ഡീക്രിപ്റ്റ് ചെയ്ത ഉപകരണത്തെ പ്രതിനിധീകരിക്കുന്ന /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c എന്ന ഒരു ഉപകരണ നോഡ്.

ഇപ്പോൾ സൃഷ്uടിച്ച ബ്ലോക്ക് ഉപകരണം, മറ്റേതെങ്കിലും എൻക്രിപ്റ്റ് ചെയ്യാത്ത ബ്ലോക്ക് ഉപകരണത്തിൽ നിന്ന് വായിക്കാനും എഴുതാനും കഴിയും. ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കുന്നതിലൂടെ നിങ്ങൾക്ക് മാപ്പ് ചെയ്ത ഉപകരണത്തെക്കുറിച്ചുള്ള ചില വിവരങ്ങൾ കാണാൻ കഴിയും.

# dmsetup info /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c

മാപ്പ് ചെയ്uത ഉപകരണത്തിൽ ഫയൽസിസ്റ്റം സൃഷ്uടിക്കുന്നു

മാപ്പ് ചെയ്uത ഉപകരണത്തിൽ ഒരു ഫയൽസിസ്റ്റം എങ്ങനെ സൃഷ്uടിക്കാമെന്ന് ഇപ്പോൾ ഞങ്ങൾ നോക്കും, ഇത് മറ്റേതൊരു ബ്ലോക്ക് ഉപകരണത്തെയും പോലെ മാപ്പ് ചെയ്uത ഉപകരണ നോഡ് ഉപയോഗിക്കാൻ നിങ്ങളെ അനുവദിക്കും.

മാപ്പ് ചെയ്ത ഉപകരണത്തിൽ ഒരു ext4 ഫയൽസിസ്റ്റം സൃഷ്ടിക്കുന്നതിന്, ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കുക.

# mkfs.ext4 /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c

മുകളിലുള്ള ഫയൽസിസ്റ്റം മൌണ്ട് ചെയ്യുന്നതിന്, അതിനായി ഒരു മൗണ്ട് പോയിന്റ് സൃഷ്ടിക്കുക ഉദാ. /mnt/encrypted-device തുടർന്ന് അത് ഇനിപ്പറയുന്ന രീതിയിൽ മൌണ്ട് ചെയ്യുക.

# mkdir -p /mnt/encrypted-device
# mount /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c /mnt/encrypted-device/

/etc/crypttab, /etc/fstab എന്നിവയിലേക്ക് മാപ്പിംഗ് വിവരങ്ങൾ ചേർക്കുക

അടുത്തതായി, ഉപകരണത്തിനായി ഒരു മാപ്പിംഗ് സ്വയമേവ സജ്ജീകരിക്കുന്നതിനും ബൂട്ട് സമയത്ത് അത് മൗണ്ട് ചെയ്യുന്നതിനും ഞങ്ങൾ സിസ്റ്റം കോൺഫിഗർ ചെയ്യേണ്ടതുണ്ട്.

ഇനിപ്പറയുന്ന ഫോർമാറ്റിൽ /etc/crypttab ഫയലിൽ നിങ്ങൾ മാപ്പിംഗ് വിവരങ്ങൾ ചേർക്കണം.

luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c  UUID=59f2b688-526d-45c7-8f0a-1ac4555d1d7c   none

മുകളിലുള്ള ഫോർമാറ്റിൽ:

  • luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c – ആണ് മാപ്പിംഗ് പേര്
  • UUID=59f2b688-526d-45c7-8f0a-1ac4555d1d7c – ആണ് ഉപകരണത്തിന്റെ പേര്

ഫയൽ സംരക്ഷിച്ച് അത് അടയ്ക്കുക.

അടുത്തതായി, സിസ്റ്റം ബൂട്ടിൽ മാപ്പ് ചെയ്uത ഉപകരണം സ്വയമേവ മൌണ്ട് ചെയ്യുന്നതിന് /etc/fstab-ലേക്ക് ഇനിപ്പറയുന്ന എൻട്രി ചേർക്കുക.

/dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c  /mnt/encrypted-device  ext4 0 0

ഫയൽ സംരക്ഷിച്ച് അത് അടയ്ക്കുക.

ഈ ഫയലുകളിൽ നിന്ന് സൃഷ്ടിച്ച systemd യൂണിറ്റുകൾ അപ്uഡേറ്റ് ചെയ്യുന്നതിന് ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കുക.

# systemctl daemon-reload

ബാക്കപ്പ് LUKS തലക്കെട്ടുകൾ

അവസാനമായി, LUKS ഹെഡറുകൾ എങ്ങനെ ബാക്കപ്പ് ചെയ്യാമെന്ന് ഞങ്ങൾ ചർച്ച ചെയ്യും. ഉപയോക്തൃ പിശക് അല്ലെങ്കിൽ ഹാർഡ്uവെയർ പരാജയം കാരണം LUKS ഹെഡറുകൾ അടങ്ങിയ സെക്ടറുകൾക്ക് കേടുപാടുകൾ സംഭവിച്ചാൽ, എൻക്രിപ്റ്റ് ചെയ്ത ബ്ലോക്ക് ഉപകരണത്തിലെ എല്ലാ ഡാറ്റയും നഷ്uടപ്പെടുന്നത് ഒഴിവാക്കുന്നതിനുള്ള ഒരു നിർണായക ഘട്ടമാണിത്. ഈ പ്രവർത്തനം ഡാറ്റ വീണ്ടെടുക്കാൻ അനുവദിക്കുന്നു.

LUKS തലക്കെട്ടുകൾ ബാക്കപ്പ് ചെയ്യാൻ.

# mkdir /root/backups  
# cryptsetup luksHeaderBackup --header-backup-file luks-headers /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c 

LUKS തലക്കെട്ടുകൾ പുനഃസ്ഥാപിക്കുന്നതിനും.

# cryptsetup luksHeaderRestore --header-backup-file /root/backups/luks-headers /dev/mapper/luk-59f2b688-526d-45c7-8f0a-1ac4555d1d7c 

അത്രയേയുള്ളൂ! ഈ ലേഖനത്തിൽ, ഫെഡോറ ലിനക്സ് വിതരണത്തിൽ LUKS ഉപയോഗിച്ച് ബ്ലോക്ക് ഡിവൈസുകൾ എങ്ങനെ എൻക്രിപ്റ്റ് ചെയ്യാമെന്ന് ഞങ്ങൾ വിശദീകരിച്ചിട്ടുണ്ട്. ഈ വിഷയത്തെക്കുറിച്ചോ ഗൈഡിനെക്കുറിച്ചോ നിങ്ങൾക്ക് എന്തെങ്കിലും ചോദ്യങ്ങളോ അഭിപ്രായങ്ങളോ ഉണ്ടോ, ഞങ്ങളെ ബന്ധപ്പെടാൻ ചുവടെയുള്ള ഫീഡ്uബാക്ക് ഫോം ഉപയോഗിക്കുക.