एन्क्रिप्टेड पार्टीशन पर डिटेक्ट का उपयोग करना


25

जब मैं उबंटू स्थापित कर रहा था, तो मैंने / घर का चयन किया / एन्क्रिप्ट किया गया। अब, क्या locateइस तरह एक एन्क्रिप्टेड विभाजन के साथ काम करना संभव है ?


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

4
आपकी /homeएक वर्चुअल फाइल सिस्टम (ई-क्रिप्टो) है। जब आप लॉग इन करते हैं तो यह एक सुलभ विभाजन के रूप में "माउंटेड" होता है। अपने /etc/updatedb.conf को चेक करें और क) अनदेखा फ़ाइल सिस्टम (PRUNEFS) b से ecryptfs हटाएं PRUNE_BIND_MUNTS = "नहीं"
m33lky

4
उसके बाद आप sudo updatedbनई फ़ाइलों को इंडेक्स करने के लिए चला सकते हैं ।
m33lky

ध्यान रखें कि डेटाबेस का पता लगाना अनएन्क्रिप्टेड स्पेस में जीवन का उपयोग करता है, संभवतः फाइलनेम का खुलासा करके आपके एन्क्रिप्शन का समझौता करता है
फ्लोरियन हेनले

जवाबों:


29

जैसा कि ऊपर उल्लेख किया गया है, मैं दोनों "रन डिटेक्ट (अपडेटेड) हूं", जैसा कि ऊपर उल्लेख किया गया है, और मैं अपने एन्क्रिप्टेड $ गृह के तहत खोज डेटाबेस का अपना हिस्सा रखता हूं

export LOCATE_PATH="$HOME/var/mlocate.db"

और फिर मैं फाइलों को $HOMEइसमें शामिल करता हूं

updatedb -l 0 -o $HOME/var/mlocate.db -U $HOME

अब मेरे पास पूरा इंडेक्स है $HOMEलेकिन जब तक $HOMEमाउंट और डिक्रिप्ट नहीं किया जाता है तब तक डेटाबेस दिखाई नहीं देता है।


यह एक अच्छा उपाय है। आपने अपने db को वहां कैसे स्थानांतरित किया?
2333 में m33lky

4
मैंने नहीं किया। मैं सिर्फ अपने (एन्क्रिप्टेड) ​​घर के पेड़ के लिए एक DB उत्पन्न किया, के साथ updatedb -l 0 -o $HOME/var/mlocate.db $HOMEman locateयह डिफ़ॉल्ट डेटाबेस ( /var/lib/mlocate/mlocate.db) की खोज करेगा , फिर डेटाबेस की सूची में खोज करेगा $LOCATE_PATH
वाल्टिनेटर

3
" जब आप लॉग इन हैं, तब परिभाषा ecryptfsसे हटाएं" नहीं , डिक्रिप्ट की गई है, लेकिन एन्क्रिप्ट की गई फ़ाइलों और फ़ाइलनामों को अनदेखा किया जा सकता है। जब आपका माउंट नहीं किया जाता है, तो अन्य लोगों के पास डीबी या अनएन्क्रिप्टेड तक पहुंच नहीं होगी। ) PRUNEFS/etc/updatedb.conf/home/$USER/home/$USER/.Private$HOME
फाइलनामों

2
updatedb -l 0 -o $HOME/var/mlocate.db $HOMEयाद आ रही है -Uयह होना चाहिएupdatedb -l 0 -o $HOME/var/mlocate.db -U $HOME
destan

2
मेरे खराब, @destin ने स्टीव कोल्लेर के bash_path_funcs ( linuxjournal.com/article/3645 ) का उपयोग करके, मैंने अपनी विधि को हटाने योग्य मीडिया में भी बढ़ा दिया है । हटाए जाने योग्य माध्यम के साथ (जैसा /media/_name_) मैं करता updatedb -l 0 -o ~/var/mlocate/_name_.db -U /media/_name_ हूं मेरे में .bashrc, मेरे पास है export LOCATE_PATH="$HOME/var/mlocate/mlocate.db for i in $HOME/var/mlocate/*.db ; do addpath -p LOCATE_PATH $i done uniqpath -p LOCATE_PATH और locateतब भी मुझे फ़ाइलनाम दिखा सकता है जब माध्यम माउंट नहीं होता है।
वाल्टिनेटर

3

जब आपके फाइल सिस्टम को डिक्रिप्ट किया जाता है और इसे पढ़ने / लिखने के लिए पर्यावरण चर से मिलान करने का प्रयास करते हैं, तो अपडेटेड रनिंग के बारे में कैसे?

मैन पेज को पढ़ने के बाद, अपने BASH RC फाइल में दो वैरिएबल जोड़ें।

man locate
echo "export LOCATE_PATH=$HOME/var/lib/mlocate/mlocate.db:$LOCATE_PATH" >> ~/.bashrc
echo "export DBPATH=$HOME/var/lib/mlocate/mlocate.db:$DBPATH" >> ~/.bashrc

ऊपर दी गई निर्देशिका बनाएं और $ उपयोगकर्ता नाम को mlocate समूह में जोड़ें।

mkdir -p ~/var/lib/mlocate/
sudo usermod -a -G mlocate $username

अपने उपयोगकर्ता को mlocate समूह में गिनने और नए वातावरण चर प्राप्त करने के लिए फिर से लॉग आउट करें। अब जब आप दौड़ेंगे,

updatedb -o $LOCATE_PATH

क्या अब एक डेटाबेस में डिक्रिप्टेड फ़ाइलें हैं? या, आपने इसे काम या बेहतर बनाने के लिए क्या किया?

आप उपयोगकर्ता के crontab में अपडेटेड जोड़ना चाह सकते हैं। पहला रन:

crontab -e

और निम्नलिखित पंक्ति जोड़ें:

0 12 * * * updatedb -o $HOME/var/locate

मार्टिन को मेरी टिप्पणी देखें मैं यह समझने की कोशिश कर रहा हूं कि क्या कोई सुरक्षा विचार हैं या उचित कॉन्फ़िगरेशन केवल उबंटू द्वारा अनदेखी की गई थी।
m33lky

Ecunitfs को /etc/updatedb.conf पर PRUNEFS चर में सूचीबद्ध होने के कारण, आपको संभवतः - nprunefs "nfs" का भी उपयोग करना होगा। यह एक अच्छा समाधान प्रतीत होता है क्योंकि यह उपयोगकर्ता प्रोफ़ाइल से प्रति उपयोगकर्ता सूचकांक को संग्रहीत और अद्यतन करता है।
जोओ पिंटो

@ m33lky मुद्दा यह है: आपने अपने होमडायर को एन्क्रिप्ट करने के लिए कहा है, इसलिए कोई भी (नहीं भी root!) पासवर्ड के बिना इसे पढ़ सकता है। स्मार्ट समाधान एक प्रति-उपयोगकर्ता का पता लगाने वाला डेटाबेस है। एक एकल-उपयोगकर्ता मशीन के लिए आसान समाधान यह है कि ecryptfsजब आप लॉग इन हों तो निकालें और स्कैन करें। भविष्य में, शायद locateवैश्विक डीबी और वर्तमान उपयोगकर्ता के होम डीबी से परिणाम एकत्र कर सकते हैं।
joeytwiddle

2

लॉग इन किए बिना डेटाबेस इंडेक्स को अपडेट करना वास्तव में संभव नहीं है। आपको लॉग इन करना चाहिए और अपडेटेड कमांड को चलाना चाहिए।

में अपने विन्यास की जाँच करें /etc/updatedb.conf। निकालें ecryptfsसे PRUNEFSऔर शायद /home/.ecryptfsसे PRUNEPATHS। के sudo updatedbबाद चलाने के लिए मत भूलना ।


1
अद्यतित। इसके अलावा, PRUNE_BIND_MOUNTS = "हाँ"। मैं इस तरह के चूक के पीछे के तर्क को समझने की कोशिश कर रहा हूं क्योंकि यह आपकी खोजों में / घर से गायब होने के परिणाम के लिए उपयोगकर्ता के अनुकूल नहीं है :)
m33lky

मुझे लगता है कि घर के लिए कार्यक्षमता प्रति उपयोगकर्ता अनुक्रमित है ... लेकिन यह अटकलें हैं।
मार्टिन ओवेन्स -डोक्टोर्मो-

एन्क्रिप्शन के बिना / घर अनुक्रमित हो जाता है, इसलिए मैं समान व्यवहार की उम्मीद करता हूं ...
4:33 पर m33lky

1
मैं यूजर इंटरफेस के नजरिए से स्थिति का वर्णन कर रहा था।
m33lky

2
यदि आपने पूरी डिस्क को एन्क्रिप्ट किया है, तो यह कोई समस्या नहीं होगी, यदि आपके पास केवल एक होम एन्क्रिप्शन था, तो अब आपको प्रति उपयोगकर्ता इंडेक्सिंग शुरू करने और प्रत्येक व्यक्तिगत एन्क्रिप्शन का उपयोग करने की आवश्यकता है ... वास्तव में आप केवल होम इंडेक्स को रोक सकते हैं उपयोगकर्ता के होम फोल्डर में .... जो सभी प्रमुख विकास और लागत के लिए है जो अधिकांश उपयोगकर्ता कभी नहीं देखते हैं। कृपया डेटाबेस टूल प्रोजेक्ट का पता लगाने के लिए बग की रिपोर्ट करें।
मार्टिन ओवेन्स -डॉक्टोर्मो-
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.