मैं एक मैक मिनी सर्वर को बाहरी ड्राइव के साथ सेटअप करना चाहता हूं जो एन्क्रिप्ट किया गया है। फाइंडर में, मैं फुल-डिस्क एन्क्रिप्शन विकल्प का उपयोग कर सकता हूं। हालांकि, कई उपयोगकर्ताओं के लिए, यह मुश्किल हो सकता है।
मैं जो करना चाहता हूं वह बाहरी वॉल्यूम को एन्क्रिप्ट करना है, फिर चीजों को सेट करें ताकि जब मशीन बूट हो, डिस्क अनलॉक हो जाए ताकि सभी उपयोगकर्ता इसे एक्सेस कर सकें। बेशक अनुमति बनाए रखने की जरूरत है, लेकिन यह कहे बिना जाता है।
मैं जो करने की सोच रहा हूं वह एक रूट-लेवल लॉन्च स्क्रिप्ट सेट कर रहा है जो एक बार बूट पर चलता है और डिस्क को अनलॉक करता है। एन्क्रिप्शन कुंजी संभवतः रूट के किचेन में संग्रहीत की जाएगी।
तो यहाँ मेरी चिंताओं की सूची है:
- अगर मैं सिस्टम कीचेन में एन्क्रिप्शन कुंजी संग्रहीत करता हूं, तो कीचेन
/private/var/db/SystemKey
को अनलॉक करने के लिए फ़ाइल का उपयोग किया जा सकता है अगर किसी हमलावर ने कभी सर्वर तक भौतिक पहुंच प्राप्त की। ये गलत है। - यदि मैं अपने उपयोगकर्ता कुंजी में एन्क्रिप्शन कुंजी संग्रहीत करता हूं, तो मुझे अपने पासवर्ड के साथ कमांड को मैन्युअल रूप से चलाना होगा। यह अवांछनीय है। यदि मैं अपने उपयोगकर्ता क्रेडेंशियल के साथ एक लॉन्च स्क्रिप्ट चलाता हूं, तो यह मेरे उपयोगकर्ता खाते के तहत चलेगा, लेकिन उद्देश्य को हराते हुए किचेन तक पहुंच नहीं होगी।
- यदि रूट में एक चाबी का गुच्छा है (इसे करता है?) तो इसे कैसे डिक्रिप्ट किया जाएगा? क्या यह तब तक लॉक रहेगा जब तक कि पासवर्ड दर्ज नहीं किया गया (जैसे यूजर कीचेन) या सिस्टम कीचेन के समान ही समस्या होगी, ड्राइव पर संग्रहीत कीज़ और भौतिक पहुँच के साथ सुलभ?
उपरोक्त सभी कार्यों को मानते हुए, मैंने पाया है diskutil coreStorage unlockVolume
कि यह उपयुक्त कमांड प्रतीत होता है, लेकिन एन्क्रिप्शन कुंजी को कहाँ संग्रहीत करना है, इसका विवरण सबसे बड़ी समस्या है। यदि सिस्टम कीचेन पर्याप्त सुरक्षित नहीं है, और उपयोगकर्ता किचेन को पासवर्ड की आवश्यकता है, तो सबसे अच्छा विकल्प क्या है?