एसआईटी लॉगिन के माध्यम से रूटफुट को अनलॉक करना initramfs में
आप अपने रूटफुट को रिमोट से बूटअप पर अनलॉक कर सकते हैं, एसआईटी का उपयोग बूटिंग सिस्टम में लॉग इन करने के लिए करते हैं, जबकि यह इनटॉयलेट्स घुड़सवार के साथ चल रहा है।
सेट अप
काम करने के लिए रिमोट अनलॉक करने के लिए, इनट्रैम्फ बनाने से पहले निम्नलिखित पैकेजों को स्थापित करना होगा: dropbear busybox
फ़ाइल /etc/initramfs-tools/initramfs.confinitramfs का निर्माण करते समय उपयोग किए जाने वाले कॉन्फ़िगरेशन विकल्प रखती है। इसमें शामिल होना चाहिए BUSYBOX=y
(यह डिफॉल्ट के रूप में सेट किया गया है जब बिजीबॉक्स पैकेज स्थापित है) DROPBEAR=nने इनफ्रेमफोर्स में बिजीबॉक्स को इनस्टॉल किया है, और इसमें ऐसा नहीं होना चाहिए
, जो इनट्रामर्फ में ड्रॉपबियर की स्थापना को निष्क्रिय कर दे। यदि सेट किया जाता है DROPBEAR=y, तो ड्रॉपबियर किसी भी मामले में स्थापित किया जाएगा; यदि
DROPBEARवह बिल्कुल सेट नहीं है, तो ड्रॉपबीयर केवल एक मौजूदा क्रिप्टोकरेंसी सेटअप के मामले में स्थापित किया जाएगा।
Initramfs के लिए उपयोग की जाने वाली होस्ट कुंजी dropbear_dss_host_keyऔर
dropbear_rsa_host_key, दोनों में स्थित हैं /etc/initramfs-tools/etc/dropbear/। अगर इनट्रामर्फ्स संकलित होने पर वे मौजूद नहीं हैं, तो वे स्वचालित रूप से बनाए जाएंगे। उन्हें मैन्युअल रूप से बनाने के लिए निम्नलिखित आदेश दिए गए हैं:
dropbearkey -t dss -f /etc/initramfs-tools/etc/dropbear/dropbear_dss_host_key
dropbearkey -t rsa -f /etc/initramfs-tools/etc/dropbear/dropbear_rsa_host_key
जैसे initramfs को एन्क्रिप्ट नहीं किया जाएगा, publickey प्रमाणीकरण मान लिया गया है। इसके लिए उपयोग की जाने वाली कुंजी (एस) से ली जाएगी
/etc/initramfs-tools/root/.ssh/authorized_keys। यदि यह फ़ाइल मौजूद नहीं है जब initramfs संकलित है, तो इसे बनाया /etc/initramfs-tools/root/.ssh/id_rsa.pubजाएगा और
इसे इसमें जोड़ा जाएगा। यदि बाद वाली फ़ाइल मौजूद नहीं है, तो यह अपने आप जेनरेट हो जाएगी - आपको मिलान निजी कुंजी मिल जाएगी, जिसे आपको बाद में initramfs में लॉग इन करने की आवश्यकता होगी /etc/initramfs-tools/root/.ssh/id_rsa
(या id_rsa.dropbearयदि आपको ड्रॉपबियर प्रारूप में इसकी आवश्यकता है)। संबंधित चरण मैन्युअल रूप से करने के लिए निम्नलिखित आदेश हैं:
एक कुंजी बनाने के लिए (ड्रॉपबियर प्रारूप में):
dropbearkey -t rsa -f /etc/initramfs-tools/root/.ssh/id_rsa.dropbear
ड्रॉपबियर प्रारूप से ओपनश प्रारूप में कुंजी परिवर्तित करने के लिए:
/usr/lib/dropbear/dropbearconvert dropbear openssh \
/etc/initramfs-tools/root/.ssh/id_rsa.dropbear \
/etc/initramfs-tools/root/.ssh/id_rsa
सार्वजनिक कुंजी निकालने के लिए:
dropbearkey -y -f /etc/initramfs-tools/root/.ssh/id_rsa.dropbear | \
grep "^ssh-rsa " > /etc/initramfs-tools/root/.ssh/id_rsa.pub
सार्वजनिक कुंजी को अधिकृत_की फ़ाइल में जोड़ने के लिए:
cat /etc/initramfs-tools/root/.ssh/id_rsa.pub >> /etc/initramfs-tools/root/.ssh/authorized_keys
मामले में आप कुछ इंटरफेस DHCP का उपयोग कर कॉन्फ़िगर किया गया करने के लिए, सेटिंग चाहते
DEVICE=में /etc/initramfs-tools/initramfs.confपर्याप्त होना चाहिए। Initramfs को ip=कर्नेल पैरामीटर का सम्मान करना चाहिए । यदि आप ग्रब का उपयोग करते हैं, तो आप शायद इसे /boot/grub/menu.lst' # kopt=' लाइन में या विशिष्ट ' kernel' लाइन (एस) के साथ जोड़ना चाहते हैं । ip=कर्नेल पैरामीटर में दर्ज है Documentation/nfsroot.txtकर्नेल स्रोत पेड़ में।
मुद्दे
update-initramfsजब आप इसे प्रभावी बनाने के लिए कॉन्फ़िगर को बदलते हैं तो चलाना न भूलें !
Ssh डेमन के लिए पर्याप्त एन्ट्रॉपी इकट्ठा करना कभी-कभी एक मुद्दा लगता है। Ssh डेमॉन का स्टार्टअप तब तक विलंबित हो सकता है जब तक कि पर्याप्त एन्ट्रापी को पुनः प्राप्त नहीं किया जाता है। यह स्टार्टअप प्रक्रिया के लिए गैर-अवरुद्ध है, इसलिए जब आप कंसोल पर होते हैं तो आपको अपने स्टार्टअप को पूरा करने के लिए sshd का इंतजार नहीं करना होगा।
अनलॉक करने की प्रक्रिया
रिमोट से अनलॉक करने के लिए, आप ऐसा कुछ कर सकते हैं:
ssh -o "UserKnownHostsFile=~/.ssh/known_hosts.initramfs" \
-i "~/id_rsa.initramfs" root@initramfshost.example.com \
"echo -ne \"secret\" >/lib/cryptsetup/passfifo"
यह उदाहरण मानता है कि आपके पास एक अतिरिक्त known_hostsफ़ाइल है " ~/.ssh/known_hosts.initramfs" जो क्रिप्टोकरेंसी सिस्टम की होस्ट-कुंजी रखती है, कि आपके पास एक फाइल है " ~/id_rsa.initramfs" जो क्रिप्टोकरेंसी सिस्टम के लिए अधिकृत-कुंजी रखता है, जो कि क्रिप्टोकरेंसी सिस्टम का नाम " initramfshost.example.com" है, और वह है क्रिप्टोकरंसी पासफ़्रेज़ " secret" है
- < debian@x.ray.net>, बुध, 30 सितंबर 2009
zless /usr/share/doc/cryptsetup/README.remote.gz