परिचय
इस पोस्ट में मैं गोपनीय और अन्य खतरनाक डेटा के सुरक्षित स्वागत, संचरण, भंडारण और प्रसंस्करण के लिए एक सुरक्षित प्रणाली का निर्माण करने के तरीके के बारे में बताने की कोशिश करूंगा। यह किसी के लिए एक रहस्य नहीं है कि अब विभिन्न लोग और संगठन इंटरनेट और अपने उपयोगकर्ताओं दोनों की स्वतंत्रता को चुरा रहे हैं, और अक्सर वे सफल होते हैं। इसलिए, अब हम अपने कंप्यूटर के अंदर एक छोटा लेकिन मजबूत किला बनाने की कोशिश करेंगे।
उकसाने के लिए "इस तरह की प्रणाली के साथ आप दुश्मन के लिए राज्य रहस्यों को मर्ज कर सकते हैं" मैं तुरंत जवाब देता हूं: परमाणु मिसाइलों की मदद से आप न केवल दुनिया का अंत कर सकते हैं, बल्कि हमारे ग्रह को धमकी देने वाले क्षुद्रग्रह को दूर या विभाजित भी कर सकते हैं।
हमें क्या चाहिए?
सबसे पहले, यह एक
बड़ी मात्रा में रैम के साथ पर्याप्त प्रदर्शन का एक कंप्यूटर है। इसका ऑपरेटिंग सिस्टम कोई फर्क नहीं पड़ता, क्योंकि इस पर स्थापित सॉफ्टवेयर क्रॉस-प्लेटफॉर्म है। अच्छी तरह से, शायद, विदेशी या बहुत प्राचीन ओएस के अपवाद के साथ।
दूसरी बात,
सॉफ्टवेयर । मैं इसे उस क्रम में सूचीबद्ध करूंगा जिसमें सिस्टम के निर्माण में इसकी आवश्यकता होगी:
- TrueCrypt
- VirtualBox (आधिकारिक साइट से अभी तक जल्दी मत करो)
- उबंटू । मैंने संस्करण 11.10 x86 पर किया था, क्योंकि उस समय 12.04 नहीं था। अभी स्विंग करने के लिए छवि रखो, ताकि समय न खोएं। डिस्क में कटौती करने की आवश्यकता नहीं है।
- टीओआर
- I2P
कृपया ध्यान दें कि उपरोक्त सभी सॉफ्टवेयर ओपन सोर्स हैं।
यह बहुत महत्वपूर्ण है , क्योंकि ये कार्यक्रम हमारी सुरक्षा के मूल हैं, और कुछ मालिकाना बुकमार्क बहुत महंगे हो सकते हैं।
चलो शुरू हो जाओ!
हार्ड ड्राइव के सीधे कैप्चर से डेटा को बचाने के लिए, हमें उन्हें एन्क्रिप्ट करने की आवश्यकता है। इसके लिए, हम TrueCrypt उपयोगिता का उपयोग करेंगे।
इसका उपयोग करके, हम एक फ़ाइल में संग्रहीत एक एन्क्रिप्टेड वॉल्यूम बनाते हैं। आप इसे एक विभाजन पर बना सकते हैं, लेकिन, मेरी राय में, यह कम सुविधाजनक है।
क्या मैं एक छिपा हुआ वॉल्यूम बना सकता हूं? प्रश्न विवादास्पद है। यह सुविधा इंग्लैंड में उपयोग के लिए है, जहां पीसी की जब्ती के दौरान पासवर्ड जारी करने में विफलता अपने आप में एक अपराध है। इसी समय, रूस में ऐसा कोई विधायी मानदंड नहीं है, और एक छिपे हुए विभाजन का उपयोग करने योग्य डिस्क स्थान को खा जाता है। मैंने छिपे हुए खंड को बनाना शुरू नहीं किया।
अनुभाग का आकार हम अपने विवेक पर चुनते हैं। व्यक्तिगत रूप से, मैंने 50 जीबी चुना।
एन्क्रिप्शन एल्गोरिथम - मैंने एईएस को चुना। सबसे पहले, वह अमेरिकी सेना द्वारा गोपनीयता के उच्चतम गिद्धों की रक्षा के लिए भरोसा किया जाता है, और दूसरी बात, यह नए इंटेल प्रोसेसर द्वारा त्वरित हार्डवेयर है और ट्रू क्रिप्टाइपर के पास इस त्वरण के लिए समर्थन है।
इसके अलावा, सब कुछ मानक है: हम एक जटिल और लंबे पासवर्ड के साथ आते हैं, यादृच्छिक माउस आंदोलनों के साथ एन्ट्रापी उत्पन्न करते हैं और एक खंड बनाते हैं। विभाजन का प्रकार NTFS होना चाहिए, क्योंकि यह बड़ी फ़ाइलों को संग्रहीत करेगा।
अगला, हमें एक वर्चुअल मशीन की आवश्यकता है। हम जो कुछ भी रक्षा करते हैं, उसमें संग्रहीत किया जाएगा।
यह इस तथ्य के कारण है कि:
- मुख्य ओएस में काम विभिन्न स्थानों में विभिन्न निशान छोड़ देता है;
- यदि मुख्य OS मालिकाना है (मैं एक उंगली से नहीं जीता) - यह बुकमार्क की उपस्थिति को बाहर नहीं करता है;
- मुख्य OS में एप्लिकेशन सॉफ़्टवेयर भी पिछली आवश्यकता के अंतर्गत आता है (पंकबस्टर को याद करें, जिसका EULA आपको उपयोगकर्ता की हार्ड ड्राइव को स्कैन करने की अनुमति देता है)।
हम वर्चुअलबॉक्स का उपयोग करेंगे, लेकिन मुख्य वितरण नहीं, बल्कि
पोर्टेबल । इंस्टॉलर को प्री-माउंटेड एन्क्रिप्टेड डिस्क में डाउनलोड करें, उपयोगिता का उपयोग करके समर्थित बॉक्स वितरण को चलाएं और डाउनलोड करें। अगला, उपयोगिता इसे अनपैक करेगी और पोर्टेबिलिटी के लिए कॉन्फ़िगर करेगी।
चलो दो हार्ड ड्राइव के साथ बॉक्सिंग में एक बॉक्स बनाएं: एक 8-10 जीबी के लिए और दूसरा शेष स्थान के लिए, ज़ाहिर है, दोनों को एक एन्क्रिप्टेड ड्राइव पर रखकर। चलो सेटिंग्स के माध्यम से जाते हैं, नेट में नेटवर्क डालते हैं और बाकी को अपनी पसंद के अनुसार कॉन्फ़िगर करते हैं - वहां कुछ भी विशेष रूप से महत्वपूर्ण नहीं है। उबंटा (जो मुझे आशा है, पहले ही डाउनलोड कर चुका है) की छवि को एक ड्राइव के रूप में कनेक्ट करें।
हम कार शुरू करते हैं और ओएस स्थापित करना शुरू करते हैं। डिस्क्स का विभाजन करते समय, हम कुछ ऐसा करेंगे: हम रूट को रखेंगे और पहले, छोटे, और / बड़े पर घर की अदला-बदली करेंगे। सभी डेटा हम / घर में स्टोर करेंगे। इस प्रकार, सिस्टम और डेटा का पृथक्करण बॉक्स की हार्ड ड्राइव की विभिन्न फाइलों के बीच होता है। अगला, हम आपकी पसंद के अनुसार सब कुछ करते हैं।
यह स्थापित है! अब हम सेटअप शुरू करते हैं।
विचार केवल दो चुने हुए लोगों के लिए नेटवर्क तक सीधी पहुंच को छोड़ना है - टीओआर और आई 2 पी राउटर।
सबसे पहले, हमने
आधिकारिक साइट से निर्देशों के अनुसार टीओआर को अपने स्वयं के भंडार (आधिकारिक संस्करण में पुराना हो सकता है)
से रखा । फिर हम डेवलपर्स के लिए अपने खुद के पीपीए-शलजम से I2P, फिर से स्थापित करेंगे - एक
निर्देश ।
कृपया ध्यान दें कि टीओआर स्वयं केवल SOCKS5 परदे के पीछे प्रदान करता है, और सभी कार्यक्रम इसका समर्थन नहीं करते हैं। इसलिए, पोलिपो स्थापित करें - एक मुफ्त HTTP प्रॉक्सी:
sudo apt-get install polipo
इसे सेट करें:
sudo nano /etc/polipo/config
इसमें एक पंक्ति जोड़ें:
proxyPort = 8118
नीचे हम असहजता (या कुछ गलत होने पर सही):
socksParentProxy = "localhost:9050"
socksProxyType = socks5
सहेजें। पॉलीप को पुनरारंभ करें:
sudo service polipo restart
अब I2P कॉन्फ़िगर करें:
sudo nano /etc/default/i2p
डेमॉन के रूप में लॉन्च चालू करें:
RUN_DAEMON="true"
उसी समय, हम फ़ाइल में देखते हैं कि राउटर उपयोगकर्ता के नाम के साथ काम कर रहा है - मेरे पास यह
i2psvc हैसहेजें।
भागो:
sudo service i2p start
अब हम उस उपयोगकर्ता का पता लगाते हैं जिससे TOR काम करता है:
lsof -c tor
मेरे पास यह
डेबियन-टोर है ।
और अब - सबसे स्वादिष्ट: हम हर चीज के लिए नेटवर्क तक पहुंच काट देते हैं जो टीओआर नहीं है और आई 2 पी नहीं है। एक बार फिर,
सब कुछ ।
यहां समाप्त iptables-पुनर्स्थापना स्क्रिप्ट है, बस फिर से उपयोगकर्ता नाम जांचें।
सामान्य नीति DROP है, सभी को स्थानीय नेटवर्क, I2P और TOR - बाहरी नेटवर्क तक पहुंच की अनुमति है।
sudo nano /etc/iptables.up.rules
सामग्री:
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT DROP [0:0]
-A OUTPUT -d 127.0.0.1/32 -j ACCEPT
-A OUTPUT -m owner --uid-owner debian-tor -j ACCEPT
-A OUTPUT -m owner --uid-owner i2psvc -j ACCEPT
COMMIT
नेटवर्क कॉन्फ़िगरेशन फ़ाइल खोलें:
sudo nano /etc/network/interfaces
आइए नियम लोडिंग कमांड जोड़ें:
pre-up iptables-restore < /etc/iptables.up.rules
यह मेरे लिए इस तरह दिखता है:
auto lo
iface lo inet loopback
pre-up iptables-restore < /etc/iptables.up.rules
चूंकि मैं नेटवर्क-मैनेजर के माध्यम से नेटवर्क का प्रबंधन करता हूं, इसलिए फ़ाइल में कोई eth0 इंटरफ़ेस नहीं है। बैकबैक बढ़ाते समय नियम निर्धारित किए गए हैं, लेकिन कोई अंतर नहीं है, क्योंकि ये नियम सभी इंटरफेस के लिए समान हैं।
नियमों को iptables पर अपलोड करें। आप नेटवर्क को पुनरारंभ कर सकते हैं, लेकिन हम यह करेंगे:
sudo iptables-restore < /etc/iptables.up.rules
हो गया! किले का निर्माण किया गया था, एक खंदक खोदी गई थी, जो दीवारों पर लगी हुई थी। लेकिन हमने अभी तक इसके निवासियों को पास जारी नहीं किए हैं! हम इसे ठीक करते हैं।
बाहरी इंटरनेट तक पहुंचने के लिए, टीओआर का उपयोग करना बेहतर होता है, जिसका HTTP इंटरफ़ेस हमारे पास पोर्ट 8118 पर है।
nano ~/.bashrc
अंत में जोड़ें:
export http_proxy="http://127.0.0.1:8118/"
अब बस टर्मिनल में
bash
उसी समय, शेल अपने कॉन्फ़िगरेशन को फिर से व्यवस्थित करता है। हालांकि, उपयुक्त, जिनके बिना उबंटु में - जैसे कि पानी के बिना (और न तो ज्वार और न ही सीड्स), मैं इस पर्यावरण चर पर छींकना चाहता था। आइए हम उन्हें व्यक्तिगत रूप से हमारे किले के अंतःविषय शासन की व्याख्या करें:
sudo nano /etc/apt/apt.conf.d/proxy
वहाँ होना चाहिए:
Acquire::http::Proxy "http://127.0.0.1:8118/";
बचाओ, बंद करो।
खैर, यह सब है। अब यह ब्राउज़र को रखने के लिए बना हुआ है (यदि कुछ डिफ़ॉल्ट फॉक्स को पसंद नहीं करता है) और बहुत तेजी से उपयोग करना शुरू नहीं करता है, लेकिन सभी पक्षों से सुरक्षित है। और मैं दोहराता हूं - वर्चुअल मशीन के अंदर प्रोग्राम को कम से कम एक हजार बुकमार्क के साथ भरा जा सकता है - यह डेटा को मर्ज कर सकता है, केवल वे अनाम होंगे। कोई भी बाहरी आईपी की गणना नहीं कर सकता है।
हालाँकि (इसके अलावा के लिए
अमराओ के लिए धन्यवाद),
ध्यान से देखें कि आप रूट से कौन से प्रोग्राम चलाते हैं! चूंकि एक दुर्भावनापूर्ण प्रोग्राम दो तरह से सुरक्षा को दरकिनार कर सकता है: iptables के लिए अपना स्वयं का दुर्भावनापूर्ण नियम लिखकर या कर्नेल स्पाइवेयर मॉड्यूल को लागू करके। दोनों प्रक्रियाओं के लिए रूट की आवश्यकता होती है।
मैंने पूरी तरह से अपने दम पर सिस्टम का निर्माण किया, तैयार किए गए हॉव-टू (यदि कोई मौजूद है, तो मुझे नहीं मिला) पर भरोसा किए बिना। इसलिए, मुझे पाठकों को कमियों के संभावित सुधारों और संकेतों से स्वीकार करने में खुशी होगी।
आपका ध्यान के लिए धन्यवाद! मुझे उम्मीद है कि कम से कम किसी को फायदा हुआ हो।