मैं gpg डिक्रिप्शन को कैसे स्वचालित कर सकता हूं जो इसे गुप्त रखते हुए पासफ़्रेज़ का उपयोग करता है?


13

मुझे क्रॉन (या किसी भी उबंटू सर्वर संगत नौकरी शेड्यूलिंग टूल) का उपयोग करके एक जीपीजी डिक्रिप्शन को स्वचालित करने का काम सौंपा गया है। चूँकि इसे मेरे द्वारा उपयोग किया जाने वाला स्वचालित होना है --passphraseलेकिन यह शेल इतिहास में समाप्त हो जाता है इसलिए यह प्रक्रिया सूची में दिखाई देता है।

मैं अच्छा (अधिमानतः महान) सुरक्षा मानकों को बनाए रखते हुए डिक्रिप्शन स्वचालितकरण के बारे में कैसे जा सकता हूं?

एक उदाहरण की बहुत सराहना की जाएगी।


इस तरह के तर्क में दिखाई दे रहे हैं psआदि जब तक आप hidepidपर /procहै, लेकिन एक खोल एक स्क्रिप्ट (क्रॉन से या अन्यथा) चल रहा है, गैर-सहभागी है और न लिखने इतिहास जब तक गलत कॉन्फ़िगर करना चाहिए।
dave_thompson_085

जवाबों:


23

पासफ़्रेज़ को एक फ़ाइल में संग्रहीत करें जो केवल क्रोन जॉब के उपयोगकर्ता द्वारा पठनीय है, और वहां पासफ़्रेज़ पढ़ने के --passphrase-fileलिए बताने के gpgलिए विकल्प का उपयोग करें ।

यह सुनिश्चित करेगा कि पासफ़्रेज़ स्मृति में प्रक्रिया की जानकारी में दिखाई नहीं दे रहा है। सुरक्षा का स्तर पासफ़्रेज़ को संग्रहीत करने वाली फ़ाइल तक पहुंच के स्तर (और साथ ही कुंजी से युक्त फ़ाइल तक पहुंच के स्तर) द्वारा निर्धारित किया जाएगा, जिसमें कहीं भी इसकी सामग्री की प्रतिलिपि बनाई गई है (इसलिए बैकअप के साथ देखभाल करें), और ऑफ-लाइन एक्सेसिबिलिटी (डिस्क को सर्वर से बाहर खींचना)। यह सुरक्षा का स्तर पर्याप्त है या नहीं, भौतिक रूप से और सॉफ़्टवेयर में फ़ाइल रखने वाले सर्वर तक आपके पहुंच नियंत्रण पर निर्भर करेगा, और उन परिदृश्यों पर जिन्हें आप कम करने का प्रयास कर रहे हैं।

यदि आप महान सुरक्षा मानक चाहते हैं, तो आपको अपनी कुंजी (और पासफ़्रेज़) को स्थानीय रूप से संग्रहीत करने के बजाय एक हार्डवेयर सुरक्षा मॉड्यूल का उपयोग करने की आवश्यकता है । यह कुंजी को सीटू में इस्तेमाल होने से नहीं रोक पाएगा , लेकिन यह इसे कहीं और कॉपी और इस्तेमाल होने से रोकेगा।


इस सुरक्षा के लिए, वास्तव में हार्डवेयर सुरक्षा मॉड्यूल, एकमात्र समाधान का उल्लेख करने के लिए +1।
MariusMatutiae

हार्डवेयर सुरक्षा मॉड्यूल उल्लेख के लिए स्टीफन धन्यवाद, मैं कुछ शोध करूँगा। मुझे सही दिशा बताने के लिए धन्यवाद।
ज़क्क कोटिज़ी

@StephenKitt हार्डवेयर कीज काम के दौरान बहुत अच्छी हैं। जब वे नहीं, अच्छी तरह से ...
Satō Katsura

@ Sat @Katsura सच है, हालांकि मुझे लगता है कि Yubikey एक HSM नहीं है। (इसका मतलब यह नहीं है कि HSMs निश्चित रूप से कमजोर नहीं हैं ।)
स्टीफन किट

"यदि आप महान सुरक्षा मानक चाहते हैं," तो आपके पास स्वचालित नौकरी डिक्रिप्ट या कुछ भी हस्ताक्षर नहीं हो सकता है।
जिमीबी

5

डिक्रिप्शन को स्वचालित करने का मतलब है कि आपको पासफ़्रेज़ को कहीं स्टोर करना होगा, या पासफ़्रेज़ का उपयोग नहीं करना चाहिए (जब तक कि मैं मेरा टाइप करते समय स्टीफन द्वारा प्रस्तुत अन्य उत्तर में अतिरिक्त विकल्पों का उपयोग नहीं करता)! अच्छे या महान सुरक्षा मानकों के लिए आपकी आवश्यकता से मेल नहीं खाते।

यानी आपकी आवश्यकता सुरक्षित होने के साथ संगत नहीं है।

आप चीजों पर भरोसा कर सकते हैं जैसे - आपको जड़ होना है, मैंने वह फ़ाइल दी है जिसमें मेरा पासफ़्रेज़ वास्तव में भ्रामक नाम संग्रहीत है, मैंने अंतर्निहित फ़ाइल सिस्टम को एन्क्रिप्ट किया है, आदि, लेकिन वे सभी परतें हैं। एक बार जब आप पहली बार जड़ होते हैं

वह विकल्प जो प्रक्रिया सूची में पासफ़्रेज़ को दिखाने से रोकता है --passphrase-file <file-name>

हालाँकि, यह पहली जगह में सिर्फ पासफ़्रेज़ को हटाने से ज्यादा सुरक्षित नहीं है।


टोनी को समझाने के लिए धन्यवाद, आपने इस मामले पर बेहतर विचार दिया। स्टीफन द्वारा उल्लिखित एक हार्डवेयर सुरक्षा मॉड्यूल मुख्य उद्देश्य होगा।
ज़क्क कोएत्ज़ी

@ZakkCoetzee: जैसा कि मैंने दूसरे जवाब में कहा, अगर वे जड़ हैं तो एचएसएम का उपयोग करने से हमलावर को क्या रोकता है?
मार्टिन बोनर

@MartinBonner जैसा कि ऊपर स्टीफन किट ने कहा है कि यह उन्हें कुंजी प्राप्त करने से रोकता है जो निश्चित रूप से कुंजी प्राप्त करने से बेहतर है।
ज़क्क कोटिज़ी

यह है, लेकिन बहुत बेहतर नहीं है। डिगिनोटार से पूछें (जिनके पास एचएसएम में अपनी कुंजी थी, लेकिन एचएसएम से जुड़ा और स्लॉट में प्रासंगिक स्मार्ट-कार्ड के साथ छोड़ दिया - ताकि एक हमलावर कई हमलावरों के प्रमाण पत्र पर हस्ताक्षर कर सके।)
मार्टिन बोनर मोनिका
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.