हालाँकि PostgreSQL अंतर्निहित एन्क्रिप्शन विकल्प प्रदान नहीं करता है, आप तृतीय-पक्ष एन्क्रिप्शन विधियों का उपयोग करके डेटा एन्क्रिप्शन को आराम से सेट कर सकते हैं। आज का ट्यूटोरियल फ़ाइल सिस्टम-स्तरीय एन्क्रिप्शन को सक्षम करने के लिए पारदर्शी डेटा एन्क्रिप्शन (टीडीई) विधि का उपयोग करने पर केंद्रित है।
PostgreSQL में आराम से डेटा एन्क्रिप्शन कैसे सेटअप करें
PostgreSQL में डेटा एन्क्रिप्शन को आराम पर सेट करते समय, लक्ष्य डिक्रिप्शन कुंजी की आवश्यकता के द्वारा फ़ाइल सिस्टम पर डेटा को अपठनीय बनाना है। इस तरह, अनधिकृत पहुंच समाप्त हो जाती है।
जब PostgreSQL आपके सर्वर पर चल रहा हो, तो आप लिनक्स यूनिफाइड कुंजी सेटअप (LUKS) जैसे तृतीय-पक्ष टूल का उपयोग करके फ़ाइल सिस्टम-स्तरीय एन्क्रिप्शन सेटअप कर सकते हैं। आप अपने सिस्टम के लिए उचित समाधान पा सकते हैं. यहां, हम उबंटू के साथ काम कर रहे हैं और निम्नलिखित चरणों का उपयोग करके डेटा एन्क्रिप्शन सेटअप कर रहे हैं।
चरण 1: फाइलसिस्टम एन्क्रिप्शन टूल इंस्टॉल करें
एक बार जब आप एन्क्रिप्शन विधि का चयन कर लेते हैं, तो आपको आवश्यक उपकरण इंस्टॉल करने होंगे। हम फ़ाइल सिस्टम-स्तरीय एन्क्रिप्शन विधि का चयन करते हैं और LUKS स्थापित करते हैं। LUKS स्थापित करने के लिए, क्रिप्टसेटअप को निम्नानुसार स्थापित करें:
सूडो उपयुक्त-स्थापित करें cryptsetup
इंस्टॉलेशन जारी रखने के लिए 'y' दबाएँ और सुनिश्चित करें कि सब कुछ अपेक्षा के अनुरूप इंस्टॉल हो।
चरण 2: एक एन्क्रिप्टेड कंटेनर सेटअप करें
चूँकि हम फ़ाइल सिस्टम-स्तरीय एन्क्रिप्शन स्थापित कर रहे हैं, हमें अपनी डिस्क पर एक एन्क्रिप्टेड निर्देशिका बनानी होगी जिसमें PostgreSQL डेटा हो। निम्नलिखित कमांड से अपने ऑपरेटिंग सिस्टम पर उपलब्ध डिवाइस की जाँच करें:
सूडो fdisk -एल
इसके बाद, उपयुक्त डिवाइस का चयन करें और निम्न कमांड चलाएँ। यहां, हम इसका उपयोग करते हैं /dev/sdb उपकरण। आपको 'हाँ' टाइप करके कार्रवाई की पुष्टि करने और फिर एक पासफ़्रेज़ दर्ज करने के लिए कहा जाएगा।
फिर आपको निम्न आदेश चलाकर LUKS का उपयोग करके इसे एन्क्रिप्ट करना होगा:
चरण 3: कंटेनर को प्रारूपित करें
निर्मित कंटेनर के लिए, हमें इसे प्रारूपित करना होगा। हम निम्नलिखित कोड चलाकर 'mkfs.ext4' विकल्प का उपयोग करते हैं:
सूडो mkfs.ext4 / देव / नक्शाकार / पोस्टग्रेस_एन्क्रिप्टेड
चरण 4: कंटेनर को माउंट करें
इसके बाद, एन्क्रिप्टेड कंटेनर को माउंट करें। में एक निर्देशिका बनाकर प्रारंभ करें /mnt/ निम्नलिखित नुसार:
सूडो mkdir / mnt / postgresएक बार निर्देशिका बन जाने के बाद, आगे बढ़ें और 'माउंट' कमांड का उपयोग करके एन्क्रिप्टेड कंटेनर को माउंट करें और पथ निर्दिष्ट करें।
सूडो पर्वत / देव / नक्शाकार / पोस्टग्रेस_एन्क्रिप्टेड / mnt / postgres /चरण 5: PostgreSQL डेटा को स्थानांतरित करें
अब तक, हमने अपने PostgreSQL डेटा को संग्रहीत करने के लिए एक एन्क्रिप्टेड कंटेनर बनाया है, लेकिन हमें अभी तक डेटा को स्थानांतरित नहीं करना है। डेटा स्थानांतरित करने से पहले, हमें PostgreSQL सेवा को रोकना होगा।
सूडो systemctl पोस्टग्रेस्क्ल को रोकेंPostgreSQL डेटा को स्थानांतरित करने के लिए, निम्नलिखित 'कॉपी' कमांड चलाएँ और सुनिश्चित करें कि आप इसे उस निर्देशिका में कॉपी करें जिसे हमने पहले बनाया था:
सूडो rsync -का / था / उदारीकरण / पोस्टग्रेस्क्ल / mnt / postgresइसके बाद, मूल PostgreSQL डेटा को बैकअप स्थान पर ले जाकर बैकअप लें।
सूडो एमवी / था / उदारीकरण / पोस्टग्रेस्क्ल / था / उदारीकरण / postgresql_backup
फिर आपको त्वरित पहुंच के लिए निर्देशिका के लिए एक प्रतीकात्मक लिंक बनाना होगा।
इतना ही। हम PostgreSQL डेटा को कॉपी करने और अपने फ़ाइल सिस्टम-स्तरीय एन्क्रिप्टेड कंटेनर में स्थानांतरित करने में कामयाब रहे ताकि यह सुनिश्चित हो सके कि हम बाकी डेटा को सुरक्षित रखते हैं।
चरण 6: PostgreSQL कॉन्फ़िग फ़ाइल संपादित करें
कॉन्फ़िगरेशन फ़ाइल में data_directory कीमती PostgreSQL डेटा स्थान को दर्शाती है। हालाँकि, हमें इसे हमारे द्वारा बनाए गए एन्क्रिप्टेड कंटेनर में PostgreSQL डेटा के स्थान से मिलान करने के लिए संपादित करना होगा। तो, टेक्स्ट एडिटर का उपयोग करके PostgreSQL कॉन्फ़िगरेशन फ़ाइल खोलें। data_directory अनुभाग का पता लगाएं. इसे संपादित करने से पहले यह निम्नलिखित में दिखाए अनुसार दिखाई देता है। आपके सिस्टम पर स्थापित PostgreSQL संस्करण के आधार पर पथ भिन्न हो सकता है।
एन्क्रिप्टेड कंटेनर को निर्देशित करने के लिए पथ बदलें जिसे हमने चरण 4 में बनाया था। हमारे मामले में, नया पथ इस प्रकार है:
चरण 7: सहेजें, बाहर निकलें और पुनरारंभ करें
PostgreSQL कॉन्फ़िगरेशन फ़ाइल को सहेजें और बाहर निकलें। इसके बाद, PostgreSQL को प्रारंभ या पुनरारंभ करें। आप PostgreSQL में डेटा एन्क्रिप्शन को आराम से सेटअप करने में कामयाब रहे।
इतना ही! आप PostgreSQL का सुरक्षित रूप से उपयोग जारी रख सकते हैं और नए फ़ाइल सिस्टम-स्तरीय एन्क्रिप्शन का आनंद ले सकते हैं।
निष्कर्ष
PostgreSQL में आराम से डेटा एन्क्रिप्शन सेट करने में यह निर्धारित करना शामिल है कि किस एन्क्रिप्शन विधि का उपयोग करना है और फिर इसे सेट करना है। हमने फ़ाइल सिस्टम-स्तरीय एन्क्रिप्शन सेटअप करने के लिए LUKS का उपयोग करके TDE एन्क्रिप्शन का चयन किया। इसके अलावा, हमने इसे स्थापित करने के लिए अनुसरण किए जाने वाले प्रत्येक चरण के बारे में विस्तार से बताया। इतना ही! इसे आज़माएं और दिए गए चरणों का पालन करें।