सबसे पहले, यदि आप किसी हार्ड डिस्क पर एन्क्रिप्टेड Ubuntu स्थापित करना चाहते हैं, तो किसी भी मौजूदा विभाजन और ऑपरेटिंग सिस्टम की जगह, आप इसे सीधे ग्राफिकल इंस्टॉलर से कर सकते हैं। यह मैनुअल प्रक्रिया केवल दोहरे बूटिंग के लिए आवश्यक है।
उबंटू लाइव डीवीडी या यूएसबी स्टिक से बूट करें, और "उबंटू ट्राई करें" चुनें।
लाइव डिस्क में शामिल GParted का उपयोग करके दो विभाजन बनाएं। पहला विभाजन अनफ़ॉर्मेट होना चाहिए और रूट और स्वैप के लिए पर्याप्त बड़ा होना चाहिए, मेरे उदाहरण में, यह है /dev/sda3
। दूसरा विभाजन कई सौ मेगाबाइट बड़ा और ext2 या ext3 में स्वरूपित होना चाहिए, यह अनएन्क्रिप्टेड और माउंट किया जाएगा /boot
(मेरे उदाहरण में यह है /dev/sda4
)।
इस स्क्रीनशॉट में, मेरे पास दो भागों में एक मौजूदा अनएन्क्रिप्टेड उबंटू इंस्टॉलेशन है: /dev/sda1
और /dev/sda5
, बाईं ओर सर्कल में हाइलाइट करें। मैंने एन्क्रिप्टेड उबंटू इंस्टॉलेशन के उद्देश्य से /dev/sda3
एक अनारक्षित विभाजन और एक ext3 विभाजन बनाया है /dev/sda4
, जो दाईं ओर सर्कल में हाइगेट किया गया है:
इन आदेशों का उपयोग करके एक LUKS कंटेनर बनाएँ। /dev/sda3
पहले से बनाए गए अनफ़ॉर्मेटेड विभाजन के साथ बदलें , और cryptcherries
अपनी पसंद के नाम के साथ।
sudo cryptsetup luksFormat /dev/sda3
sudo cryptsetup luksOpen /dev/sda3 cryptcherries
चेतावनी : आप देखेंगे कि luksFormat
चरण बहुत जल्दी पूरा हो गया है, क्योंकि यह अंतर्निहित ब्लॉक डिवाइस को सुरक्षित रूप से मिटा नहीं सकता है। जब तक आप सिर्फ प्रयोग कर रहे हैं और विभिन्न प्रकार के फोरेंसिक हमले के खिलाफ सुरक्षा के बारे में परवाह नहीं करते हैं, तब तक इसमें फाइल सिस्टम बनाने से पहले नए एलयूकेएस कंटेनर को ठीक से शुरू करना महत्वपूर्ण है। मैप किए गए कंटेनर में शून्य लिखने से अंतर्निहित ब्लॉक डिवाइस पर मजबूत यादृच्छिक डेटा लिखा जाएगा। इसमें कुछ समय लग सकता है, इसलिए pv
प्रगति की निगरानी के लिए कमांड का उपयोग करना सबसे अच्छा है :
### Only for older releases, e.g. not for 19.04, `pv` is not included in the repo must be added first
# sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe"
# sudo apt-get update
sudo apt-get install -y pv
sudo sh -c 'exec pv -tprebB 16m /dev/zero >"$1"' _ /dev/mapper/cryptcherries
या, यदि आप ऑफ़लाइन इंस्टॉल कर रहे हैं और आसानी से प्राप्त नहीं कर सकते हैं pv
:
sudo dd if=/dev/zero of=/dev/mapper/cryptcherries bs=16M
घुड़सवार LUKS कंटेनर के अंदर, LVM भौतिक वॉल्यूम, एक वॉल्यूम समूह और दो तार्किक वॉल्यूम बनाएं। पहले लॉजिकल वॉल्यूम को माउंट किया जाएगा /
, और दूसरे को स्वैप के रूप में उपयोग किया जाएगा। vgcherries
मात्रा समूह का नाम है, और lvcherriesroot
और lvcherriesswap
लॉजिकल वॉल्यूम के नाम हैं, आप अपने खुद चुन सकते हैं।
sudo pvcreate /dev/mapper/cryptcherries
sudo vgcreate vgcherries /dev/mapper/cryptcherries
sudo lvcreate -n lvcherriesroot -L 7.5g vgcherries
sudo lvcreate -n lvcherriesswap -L 1g vgcherries
दो लॉजिकल वॉल्यूम के लिए फाइलसिस्टम बनाएं: (आप सीधे इंस्टॉलर से यह चरण भी कर सकते हैं।)
sudo mkfs.ext4 /dev/mapper/vgcherries-lvcherriesroot
sudo mkswap /dev/mapper/vgcherries-lvcherriesswap
रिबूट किए बिना , आलेखीय इंस्टॉलर का उपयोग करके उबंटू स्थापित करें (मैनुअल Xubuntu 18.04 में डेस्कटॉप पर है), मैनुअल विभाजन का चयन। निरुपित /
करने के लिए /dev/mapper/vgcherries-lvcherriesroot
और /boot
(इस उदाहरण में, चरण 2 में बनाए गए एन्क्रिप्ट नहीं किए गए विभाजन के लिए /dev/sda4
)।
चित्रमय इंस्टॉलर समाप्त हो जाने के बाद, "परीक्षण जारी रखें" चुनें और एक टर्मिनल खोलें।
LUKS विभाजन का UUID खोजें ( /dev/sda3
इस मामले में), आपको बाद में इसकी आवश्यकता होगी:
$ sudo blkid /dev/sda3
/dev/sda3: UUID="8b80b3a7-6a33-4db3-87ce-7f126545c74af" TYPE="crypto_LUKS"
इसमें उपयुक्त स्थानों के लिए उपयुक्त उपकरणों को माउंट करें /mnt
और इसमें क्रोकोट करें:
sudo mount /dev/mapper/vgcherries-lvcherriesroot /mnt
sudo mount /dev/sda4 /mnt/boot
sudo mount --bind /dev /mnt/dev
sudo chroot /mnt
> mount -t proc proc /proc
> mount -t sysfs sys /sys
> mount -t devpts devpts /dev/pts
/etc/crypttab
इस पंक्ति को सम्मिलित परिवेश में नामित फ़ाइल बनाएँ , जिसमें UUID मान को LUKS विभाजन के UUID के साथ प्रतिस्थापित किया जा रहा है, और vgcherries
वॉल्यूम समूह के नाम के साथ:
# <target name> <source device> <key file> <options>
cryptcherries UUID=8b80b3a7-6a33-4db3-87ce-7f126545c74af none luks,retry=1,lvm=vgcherries
निम्नलिखित कमांड को क्रोकेटेड वातावरण में चलाएं:
update-initramfs -k all -c
एन्क्रिप्ट किए गए उबंटू में रिबूट और बूट करें। आपको पासवर्ड के लिए संकेत दिया जाना चाहिए।
जाँच करें कि आप /
रनिंग के लिए एन्क्रिप्टेड पार्टीशन का उपयोग कर रहे हैं mount
:
$ mount
/dev/mapper/vgcherries-lvcherriesroot on / type ext4 (rw,errors=remount-ro)
/dev/sda4 on /boot type ext3 (rw)
# rest of output cut for brevity
जाँच करें कि आप इस कमांड को चलाकर एन्क्रिप्टेड स्वैप पार्टीशन (किसी अन्य इंस्टालेशन से अनएन्क्रिप्टेड स्वैप पार्टिशन नहीं) का उपयोग कर रहे हैं:
$ swapon -s
Filename Type Size Used Priority
/dev/mapper/vgcherries-lvcherriesswap partition 630780 0 -1
जाँच करें कि आप पुनर्प्राप्ति मोड में बूट कर सकते हैं, आप बाद में किसी आपातकालीन स्थिति के दौरान यह पता लगाना नहीं चाहते हैं कि पुनर्प्राप्ति मोड काम नहीं करता है :)
किसी भी अपडेट को स्थापित करें, जिसमें रैमडिस्क को फिर से बनाने और ग्रब कॉन्फ़िगरेशन को अपडेट करने की संभावना है। रिबूट और सामान्य मोड और रिकवरी मोड दोनों का परीक्षण करें।