मैं अपने सर्वर पर git को कैसे एन्क्रिप्ट करूं?


12

सबसे पास जो मैंने पा लिया है: मैंने उस /Privateफ़ोल्डर में gitolite का उपयोग करके स्थापित किया है ecryptfs-utils ( sudo apt-get install ecryptfs-utils adduser git ecryptfs-setup-privateफिर बाकी रूट इंस्टॉल का उपयोग करके gitolite को कॉन्फ़िगर किया गया था)।

यह तब तक ठीक था जब तक कोई व्यक्ति gitपासवर्ड का उपयोग करके उपयोगकर्ता के रूप में लॉग इन किया गया था ( su gitरूट का उपयोग नहीं होता है)। चूंकि निजी फ़ोल्डर एक पासवर्ड के साथ लॉगिंग के माध्यम से सक्रिय होता है और जीआईओलाइट आरएसए कुंजियों का उपयोग करता है (आवश्यक) निजी फ़ोल्डर छिपा होता है यह त्रुटि तब होती है।

क्या कोई तरीका है जो मैं रिबूट के बाद अपने सर्वर में लॉग इन कर सकता हूं, पासवर्ड टाइप कर सकता हूं और अगली बार मशीन के पुनरारंभ होने तक उपयोगकर्ता का निजी फ़ोल्डर उपलब्ध है?

या शायद गिट रिपॉजिटरी के लिए एक फ़ोल्डर एन्क्रिप्ट करने का एक आसान तरीका है?


मुझे नहीं पता तुम्हारा क्या मतलब है। SSH पर पुश और पुलिंग पहले से एन्क्रिप्टेड है। क्या आपको उससे आगे एन्क्रिप्शन की आवश्यकता है?
जॉन्सकेब

su - gitकाम करता है ? इसके अलावा, एफएस को एन्क्रिप्ट करने का क्या मतलब है यदि आप चाहते हैं कि यह हमेशा उपलब्ध हो तो मशीन चालू हो सकती है? क्या ऑफलाइन हमलों से सुरक्षा करना कड़ाई से है?
हांक गे

@jonescb फाइलसिस्टम एन्क्रिप्शन

@ हंक गे: हाँ। ऑफ़लाइन हमले सभी मैं इसके साथ सुरक्षित करना चाहते हैं। यह हमेशा इतनी उचित रूप से ऑफ़लाइन उपलब्ध होना चाहिए + उपयोगकर्ता को सुरक्षित करने के लिए जो एन्क्रिप्टेड फ़ाइलों का उपयोग करता है + अच्छे सॉफ़्टवेयर का उपयोग करके जो कि फ़ाइलों को एक्सेस करने के लिए कहा जाता है, वास्तव में मैं कर सकता हूं। -edit- और su - gitयह दुर्भाग्य से हल नहीं है।

शायद आप दूसरे धागे को बंद करना चाहते हैं: unix.stackexchange.com/questions/10355/…
D4RIO

जवाबों:


4

आपको बस फ़ाइल को निकालने की आवश्यकता है ~/.ecryptfs/auto-umount

यह फ़ाइल एक ध्वज है जो लॉगआउट पर pam_ecryptfs की जाँच करता है। यह फ़ाइल डिफ़ॉल्ट रूप से सेटअप पर मौजूद है, साथ ही ~/.ecryptfs/auto-mount, जैसे कि आपकी निजी निर्देशिका स्वचालित रूप से माउंट / लॉगिन / लॉगआउट की गई है। लेकिन प्रत्येक को उस व्यवहार को बदलने के लिए स्वतंत्र रूप से हटाया जा सकता है। का आनंद लें!


2

तुम एक धब्बा / साफ गिट्टी फिल्टर दृष्टिकोण का उपयोग कर सकते हैं; यह रिपॉजिटरी की सामग्री को एन्क्रिप्ट करेगा, और इसे कार्यशील पेड़ के साथ काम करने के लिए डिक्रिप्ट करेगा।

Https://gist.github.com/873637 देखें ।

हालाँकि, यह फ़ाइलों के नामों को एन्क्रिप्ट नहीं करेगा।


1

क्षमा करें, टिप्पणी के रूप में पोस्ट नहीं कर सकता ...

शायद आप sshfs के माध्यम से अपने ssh को माउंट कर सकते हैं और अंदर encfs का उपयोग कर सकते हैं?


गिट बहुत स्वचालित है। मुझे नहीं लगता कि मैं git सामान करने से पहले / बाद में ssh पर कमांड निष्पादित करने के लिए git बता सकता हूं

मेरा मतलब था कि अपने रिमोट डायर को sshfs के साथ एक स्थानीय डायर के रूप में माउंट करें, फिर एक एन्क्रिप्टेड फोल्डर को उस के साथ माउंट करें और उसके बाद अपने git फोल्डर का उपयोग करें। Git को यह जानने की जरूरत नहीं है कि क्या हो रहा है।
17

1

का उपयोग करें screen। बस एक स्क्रीन बनाएं, उपयोगकर्ता में su करें और वही करें जो आपको करने की आवश्यकता है। Ctrl + A, d का उपयोग करके इससे अलग करें। फिर आपको प्रक्रिया को मारने के बिना डिस्कनेक्ट करने में सक्षम होना चाहिए, इस प्रकार किसी को हर समय लॉग इन किया जाता है।


0

शायद एक GPG एन्क्रिप्टेड टार में अपने रेपो पैकिंग। हर बार अपने घर से निजी कुंजी को हटाना संभव है, इसलिए आपका रेपो लगभग अपरिहार्य होगा। हर बार जब आप लॉग-इन करते हैं, तो आप अपने घर की निजी कुंजी लिखते हैं, रेपो को डिक्रिप्ट करते हैं, और इसका उपयोग करते हैं।


0

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

ecryptfs-umount-private
ecryptfs-rewrap-passphrase .ecryptfs/wrapped-passphrase
ecryptfs-mount-private

0

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.