ലിനക്സിൽ ക്രിപ്റ്റ്സെറ്റപ്പ് ടൂൾ ഉപയോഗിച്ച് എൻക്രിപ്റ്റ് ചെയ്ത ഫയൽസിസ്റ്റംസ് എങ്ങനെ സജ്ജീകരിക്കാം, സ്ഥലം സ്വാപ്പ് ചെയ്യാം - ഭാഗം 3


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

ലിനക്സ് ഫൗണ്ടേഷൻ സർട്ടിഫിക്കേഷൻ പ്രോഗ്രാം (LFCE) അവതരിപ്പിക്കുന്നു.

നിങ്ങളുടെ സെൻസിറ്റീവ് ഡാറ്റ ആക്uസസ് ചെയ്യാൻ വിശ്വസ്തരായ വ്യക്തികളെ മാത്രം അനുവദിക്കുകയും നിങ്ങളുടെ മെഷീൻ/ഹാർഡ് ഡിസ്uക് നഷ്uടപ്പെടുകയോ മോഷണം പോകുകയോ ചെയ്uതാൽ അത് തെറ്റായ കൈകളിൽ വീഴാതെ സംരക്ഷിക്കുക എന്നതാണ് എൻക്രിപ്uഷന്റെ പിന്നിലെ ആശയം.

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

സ്റ്റാൻഡേർഡ് കേർണൽ-ലെവൽ എൻക്രിപ്ഷൻ ടൂളായ dm-crypt (ഡിവൈസ് മാപ്പറിനും ക്രിപ്റ്റോഗ്രാഫിക്കിനും വേണ്ടി ചുരുക്കം) എൻക്രിപ്റ്റ് ചെയ്ത ഫയൽ സിസ്റ്റങ്ങൾ എങ്ങനെ സജ്ജീകരിക്കാമെന്ന് ഈ ലേഖനത്തിൽ നമ്മൾ ചർച്ച ചെയ്യും. dm-crypt ഒരു ബ്ലോക്ക്-ലെവൽ ടൂൾ ആയതിനാൽ, മുഴുവൻ ഉപകരണങ്ങളും പാർട്ടീഷനുകളും ലൂപ്പ് ഉപകരണങ്ങളും എൻക്രിപ്റ്റ് ചെയ്യാൻ മാത്രമേ ഇത് ഉപയോഗിക്കാനാകൂ (സാധാരണ ഫയലുകളിലോ ഡയറക്uടറികളിലോ പ്രവർത്തിക്കില്ല).

എൻക്രിപ്ഷനായി ഒരു ഡ്രൈവ്/പാർട്ടീഷൻ/ലൂപ്പ് ഉപകരണം തയ്യാറാക്കുന്നു

ഞങ്ങൾ തിരഞ്ഞെടുത്ത ഡ്രൈവിൽ (/dev/sdb) ഉള്ള എല്ലാ ഡാറ്റയും മായ്uക്കുന്നതിനാൽ, ആദ്യം, ആ പാർട്ടീഷനിൽ അടങ്ങിയിരിക്കുന്ന ഏതെങ്കിലും പ്രധാനപ്പെട്ട ഫയലുകളുടെ ബാക്കപ്പ് ഞങ്ങൾ നടത്തേണ്ടതുണ്ട് മുമ്പ് തുടരുന്നു.

/dev/sdb എന്നതിൽ നിന്ന് എല്ലാ ഡാറ്റയും മായ്uക്കുക. ഞങ്ങൾ ഇവിടെ dd കമാൻഡ് ഉപയോഗിക്കാൻ പോകുന്നു, എന്നാൽ shred പോലുള്ള മറ്റ് ടൂളുകൾ ഉപയോഗിച്ചും നിങ്ങൾക്കത് ചെയ്യാം. അടുത്തതായി, ഭാഗം 4-ലെ വിശദീകരണം അനുസരിച്ച് ഞങ്ങൾ ഈ ഉപകരണത്തിൽ ഒരു പാർട്ടീഷൻ സൃഷ്ടിക്കും, /dev/sdb1 - LFCS സീരീസിന്റെ Linux-ൽ പാർട്ടീഷനുകളും ഫയൽസിസ്റ്റങ്ങളും സൃഷ്ടിക്കുക.

# dd if=/dev/urandom of=/dev/sdb bs=4096 

ഞങ്ങൾ കൂടുതൽ മുന്നോട്ട് പോകുന്നതിന് മുമ്പ്, എൻക്രിപ്ഷൻ പിന്തുണയോടെയാണ് ഞങ്ങളുടെ കേർണൽ കംപൈൽ ചെയ്തിരിക്കുന്നതെന്ന് ഉറപ്പാക്കേണ്ടതുണ്ട്:

# grep -i config_dm_crypt /boot/config-$(uname -r)

മുകളിലെ ചിത്രത്തിൽ പറഞ്ഞിരിക്കുന്നതുപോലെ, എൻക്രിപ്ഷൻ സജ്ജീകരിക്കുന്നതിന് dm-crypt കേർണൽ മൊഡ്യൂൾ ലോഡ് ചെയ്യേണ്ടതുണ്ട്.

cryptsetup എന്നത് dm-crypt ഉപയോഗിച്ച് എൻക്രിപ്റ്റ് ചെയ്ത ഫയൽ സിസ്റ്റങ്ങൾ സൃഷ്ടിക്കുന്നതിനും കോൺഫിഗർ ചെയ്യുന്നതിനും ആക്സസ് ചെയ്യുന്നതിനും കൈകാര്യം ചെയ്യുന്നതിനുമുള്ള ഒരു ഫ്രണ്ട് എൻഡ് ഇന്റർഫേസാണ്.

# aptitude update && aptitude install cryptsetup 		[On Ubuntu]
# yum update && yum install cryptsetup 				[On CentOS] 
# zypper refresh && zypper install cryptsetup 			[On openSUSE]

cryptsetup എന്നതിനായുള്ള ഡിഫോൾട്ട് ഓപ്പറേറ്റിംഗ് മോഡ് LUKS ആണ് (Linux Unified Key Setup) അതിനാൽ ഞങ്ങൾ അതിൽ ഉറച്ചുനിൽക്കും. LUKS പാർട്ടീഷനും പാസ്uഫ്രെയ്uസും സജ്ജീകരിച്ചുകൊണ്ട് ഞങ്ങൾ ആരംഭിക്കും:

# cryptsetup -y luksFormat /dev/sdb1

മുകളിലുള്ള കമാൻഡ് cryptsetup പ്രവർത്തിപ്പിക്കുന്നത് ഡിഫോൾട്ട് പാരാമീറ്ററുകൾ ഉപയോഗിച്ച്, ഇവ ഉപയോഗിച്ച് ലിസ്റ്റുചെയ്യാനാകും,

# cryptsetup --version

നിങ്ങൾക്ക് സിഫർ, ഹാഷ്, അല്ലെങ്കിൽ കീ പാരാമീറ്ററുകൾ മാറ്റണമെങ്കിൽ, നിങ്ങൾക്ക് –സിഫർ, < /proc/crypto എന്നതിൽ നിന്ന് എടുത്ത മൂല്യങ്ങളോടെ യഥാക്രമം b>–hash, –കീ വലുപ്പം ഫ്ലാഗുകൾ.

അടുത്തതായി, നമ്മൾ LUKS പാർട്ടീഷൻ തുറക്കേണ്ടതുണ്ട് (നാം നേരത്തെ നൽകിയ പാസ്ഫ്രെയ്സിനായി ഞങ്ങളോട് ആവശ്യപ്പെടും). പ്രാമാണീകരണം വിജയിക്കുകയാണെങ്കിൽ, ഞങ്ങളുടെ എൻക്രിപ്റ്റ് ചെയ്ത പാർട്ടീഷൻ /dev/mapper എന്നതിനുള്ളിൽ നിർദ്ദിഷ്ട പേരിൽ ലഭ്യമാകും:

# cryptsetup luksOpen /dev/sdb1 my_encrypted_partition

ഇപ്പോൾ, ഞങ്ങൾ പാർട്ടീഷൻ ext4 ആയി ഫോർമാറ്റ് ചെയ്യും.

# mkfs.ext4 /dev/mapper/my_encrypted_partition

കൂടാതെ എൻക്രിപ്റ്റ് ചെയ്ത പാർട്ടീഷൻ മൌണ്ട് ചെയ്യുന്നതിനായി ഒരു മൗണ്ട് പോയിന്റ് ഉണ്ടാക്കുക. അവസാനമായി, മൗണ്ട് ഓപ്പറേഷൻ വിജയിച്ചോ എന്ന് സ്ഥിരീകരിക്കാൻ ഞങ്ങൾ ആഗ്രഹിച്ചേക്കാം.

# mkdir /mnt/enc
# mount /dev/mapper/my_encrypted_partition /mnt/enc
# mount | grep partition

നിങ്ങളുടെ എൻക്രിപ്റ്റ് ചെയ്ത ഫയൽ സിസ്റ്റത്തിൽ നിന്ന് എഴുതുകയോ വായിക്കുകയോ ചെയ്തുകഴിഞ്ഞാൽ, അത് അൺമൗണ്ട് ചെയ്യുക

# umount /mnt/enc

ഉപയോഗിച്ച് LUKS പാർട്ടീഷൻ അടയ്ക്കുക,

# cryptesetup luksClose my_encrypted_partition

അവസാനമായി, ഞങ്ങളുടെ എൻക്രിപ്റ്റ് ചെയ്ത പാർട്ടീഷൻ സുരക്ഷിതമാണോ എന്ന് ഞങ്ങൾ പരിശോധിക്കും:

1. LUKS പാർട്ടീഷൻ തുറക്കുക

# cryptsetup luksOpen /dev/sdb1 my_encrypted_partition

2. നിങ്ങളുടെ പാസ്ഫ്രെയ്സ് നൽകുക

3. പാർട്ടീഷൻ മൌണ്ട് ചെയ്യുക

# mount /dev/mapper/my_encrypted_partition /mnt/enc

4. മൗണ്ട് പോയിന്റിനുള്ളിൽ ഒരു ഡമ്മി ഫയൽ ഉണ്ടാക്കുക.

# echo “This is Part 3 of a 12-article series about the LFCE certification” > /mnt/enc/testfile.txt

5. നിങ്ങൾ ഇപ്പോൾ സൃഷ്uടിച്ച ഫയൽ ആക്uസസ് ചെയ്യാൻ കഴിയുമെന്ന് സ്ഥിരീകരിക്കുക.

# cat /mnt/enc/testfile.txt

6. ഫയൽ സിസ്റ്റം അൺമൗണ്ട് ചെയ്യുക.

# umount /mnt/enc

7. LUKS പാർട്ടീഷൻ അടയ്ക്കുക.

# cryptsetup luksClose my_encrypted_partition

8. ഒരു സാധാരണ ഫയൽ സിസ്റ്റമായി പാർട്ടീഷൻ മൌണ്ട് ചെയ്യാൻ ശ്രമിക്കുക. ഇത് ഒരു പിശക് സൂചിപ്പിക്കണം.

# mount /dev/sdb1 /mnt/enc

കൂടുതൽ സുരക്ഷയ്ക്കായി സ്വാപ്പ് സ്പേസ് എൻക്രിപ്റ്റ് ചെയ്യുക

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

നിങ്ങളുടെ കീയുടെ ഒരു പകർപ്പ് ഒരു കള്ളന് ആക്സസ് ചെയ്യാവുന്നത് ഒഴിവാക്കാൻ, ഈ ഘട്ടങ്ങൾ പിന്തുടർന്ന് സ്വാപ്പ് പാർട്ടീഷൻ എൻക്രിപ്റ്റ് ചെയ്യുക:

1 സ്വാപ്പ് ആയി ഉപയോഗിക്കുന്നതിനായി ഒരു പാർട്ടീഷൻ ഉണ്ടാക്കുക (നമ്മുടെ കാര്യത്തിൽ /dev/sdd1) മുമ്പ് വിശദീകരിച്ചത് പോലെ എൻക്രിപ്റ്റ് ചെയ്യുക. സൗകര്യാർത്ഥം \swap എന്ന് പേരിടുക.’

2.ഇത് സ്വാപ്പ് ആയി സെറ്റ് ചെയ്ത് ആക്ടിവേറ്റ് ചെയ്യുക.

# mkswap /dev/mapper/swap
# swapon /dev/mapper/swap

3. അടുത്തതായി, /etc/fstab എന്നതിലെ അനുബന്ധ എൻട്രി മാറ്റുക.

/dev/mapper/swap none        	swap	sw          	0   	0

4. അവസാനമായി, /etc/crypttab എഡിറ്റ് ചെയ്ത് റീബൂട്ട് ചെയ്യുക.

swap               /dev/sdd1         /dev/urandom swap

സിസ്റ്റം ബൂട്ട് ചെയ്തുകഴിഞ്ഞാൽ, നിങ്ങൾക്ക് സ്വാപ്പ് സ്പേസിന്റെ നില പരിശോധിക്കാം:

# cryptsetup status swap

സംഗ്രഹം

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