Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

MySQL क्लाइंट के लिए TLS सक्षम करें


TLS को SSL (सिक्योर सॉकेट लेयर) के नाम से भी जाना जाता है। यह ट्रांसपोर्ट लेयर सिक्योरिटी को संदर्भित करता है।

जब MySQL क्लाइंट और सर्वर के बीच एक अनएन्क्रिप्टेड कनेक्शन होता है, तो नेटवर्क तक पहुंच रखने वाला व्यक्ति सभी ट्रैफ़िक देख सकता है और क्लाइंट और सर्वर के बीच भेजे या प्राप्त किए जा रहे डेटा का निरीक्षण कर सकता है। जब उपयोगकर्ता किसी नेटवर्क पर सुरक्षित तरीके से जानकारी स्थानांतरित करना चाहता है, तो एक अनएन्क्रिप्टेड कनेक्शन स्वीकार्य नहीं है।

किसी भी प्रकार के डेटा को अपठनीय बनाने के लिए एन्क्रिप्शन का उपयोग करना पड़ता है। एन्क्रिप्शन एल्गोरिदम में आमतौर पर सुरक्षा तत्व शामिल होते हैं जो कई प्रकार के ज्ञात हमलों का विरोध करने में मदद करते हैं, जिनमें से कुछ में एन्क्रिप्टेड संदेशों के क्रम को बदलना या डेटा को दो बार फिर से चलाना शामिल है। MySQL क्लाइंट और सर्वर के बीच होने वाले एन्क्रिप्टेड कनेक्शन का समर्थन करता है जहां वे दोनों TLS प्रोटोकॉल का उपयोग करते हैं। लेकिन एन्क्रिप्शन कमजोर होने के कारण MySQL एन्क्रिप्टेड कनेक्शन के लिए SSL प्रोटोकॉल का उपयोग नहीं करता है।

टीएलएस यह सुनिश्चित करने के लिए एन्क्रिप्शन एल्गोरिदम का उपयोग करता है कि सार्वजनिक नेटवर्क पर प्राप्त होने वाला डेटा विश्वसनीय डेटा है। इसमें डेटा परिवर्तन, हानि, या फिर से चलाने का पता लगाने के कई तरीके हैं। टीएलएस एल्गोरिदम का भी उपयोग करता है जो X.509 मानक की सहायता से पहचान सत्यापन के साथ आते हैं।

TLS सक्षम करने के चरण

MySQL प्रति-कनेक्शन के आधार पर एन्क्रिप्शन करता है। किसी दिए गए उपयोगकर्ता के लिए एन्क्रिप्शन या तो वैकल्पिक या अनिवार्य हो सकता है। यह उपयोगकर्ता को अनुप्रयोगों की आवश्यकताओं के आधार पर एक एन्क्रिप्टेड या अनएन्क्रिप्टेड कनेक्शन चुनने में सक्षम बनाता है।

आइए समझते हैं कि MySQL क्लाइंट के लिए TLS को कैसे सक्षम किया जा सकता है:

  • कॉन्फ़िगरेशन फ़ाइल में ssl-प्रमाणपत्र और ssl-कुंजी पैरामीटर निर्दिष्ट किए जाने चाहिए जब सर्वर प्रारंभ हो।
  • प्रमाणपत्र या कुंजी ओपनएसएसएल की सहायता से हस्ताक्षरित और उत्पन्न होती है।
  • इस कुंजी को MySQL में mysql_ssl_rsa_setup टूल का उपयोग करके भी जेनरेट किया जा सकता है:
    mysql_ssl_rsa_setup --datadir=./certs
  • यदि पैरामीटर सही हैं, तो एक सुरक्षित कनेक्शन को आउटपुट के रूप में पास किया जाता है जो उसके प्रारंभ होने पर सक्षम हो जाता है।
  • प्रमाण पत्र, कुंजी और सीए पुनः लोड किए जाते हैं- ALTER INSTANCE RELOAD TLS कथन सर्वर इंस्टेंस पर निष्पादित किया जाता है। यह सुनिश्चित करता है कि सर्वर इंस्टेंस को फिर से लोड नहीं करना पड़ेगा।
  • नया लोड किया गया प्रमाणपत्र, कुंजी, और CA कनेक्शन के बाद प्रभावी रूप से प्रदर्शित होता है जिसे सफलतापूर्वक निष्पादित किया गया है।
  • MySQL क्लाइंट को एन्क्रिप्टेड कनेक्शन का उपयोग करने के लिए कॉन्फ़िगर किया गया है- एक एन्क्रिप्टेड कनेक्शन को डिफ़ॉल्ट रूप से सेट करने का प्रयास किया जाता है। यदि सर्वर एन्क्रिप्टेड कनेक्शन का समर्थन नहीं करता है, तो एक अनएन्क्रिप्टेड कनेक्शन स्वचालित रूप से वापस आ जाता है।
  • क्लाइंट के कनेक्शन व्यवहार को --ssl-mode पैरामीटर का उपयोग करके बदला जा सकता है:
    --ssl-mode=REQUIRED- Tells that en encrypted connection is needed.

प्रमाणीकरण को सक्षम करने की आवश्यकता है:यदि ssl-ca पैरामीटर निर्दिष्ट नहीं है, तो क्लाइंट या सर्वर डिफ़ॉल्ट रूप से प्रमाणीकरण नहीं करता है।

  • एसएसएल-प्रमाणपत्र और एसएसएल-कुंजी पैरामीटर सर्वर में निर्दिष्ट किए जाने चाहिए।
  • --ssl-ca पैरामीटर MySQL क्लाइंट में निर्दिष्ट है।
  • --ssl-mode MySQL क्लाइंट में VERIFY_CA के लिए निर्दिष्ट है।
  • सर्वर में कॉन्फ़िगर किया गया प्रमाणपत्र (ssl-cert) क्लाइंट --ssl-ca पैरामीटर द्वारा निर्दिष्ट CA द्वारा हस्ताक्षरित है।
  • यदि नहीं, तो प्रमाणीकरण विफल हो जाता है।

सर्वर से MySQL क्लाइंट को प्रमाणित करने के लिए:

  • ssl-cert, ssl-key, और ssl-ca पैरामीटर निर्दिष्ट सर्वर हैं।
  • --ssl-cert और --ssl-कुंजी पैरामीटर क्लाइंट में निर्दिष्ट हैं।
  • सर्वर-कॉन्फ़िगर प्रमाणपत्र और क्लाइंट-कॉन्फ़िगर प्रमाणपत्र सर्वर द्वारा निर्दिष्ट एसएसएल-सीए द्वारा हस्ताक्षरित हैं।
  • सर्वर-टू-क्लाइंट प्रमाणीकरण वैकल्पिक है। यदि क्लाइंट टीएलएस हैंडशेक के दौरान अपना पहचान प्रमाणपत्र नहीं दिखाता है, तो टीएलएस कनेक्शन अभी भी स्थापित है।
  • जांचें कि क्या वर्तमान कनेक्शन किसी एन्क्रिप्शन का उपयोग करता है।

  1. माइक्रोसॉफ्ट विंडोज पर MySQL इंस्टाल करना

    आइए समझें कि माइक्रोसॉफ्ट विंडोज पर MySQL कैसे इंस्टाल किया जा सकता है - MySQL केवल माइक्रोसॉफ्ट विंडोज 64-बिट ऑपरेटिंग सिस्टम के लिए उपलब्ध है। समर्थित Windows प्लेटफ़ॉर्म जानकारी देखने के लिए, https:// www.mysql.com/support/supportedplatforms/database.html पर जाएँ। Microsoft Windows पर MySQL को

  1. विंडोज सिस्टम में टीएलएस विफलताओं, टाइमआउट के लिए समाधान

    हमने TLS हैंडशेक . के बारे में बात की है , और यह कैसे विफल हो सकता है। हमने यह भी चिह्नित किया कि बहुत सी टीएलएस विफलताएं हुई थीं क्योंकि माइक्रोसॉफ्ट ने कुछ ठीक करने की कोशिश की थी। एक सुरक्षा अद्यतन सीवीई-2019-1318 ने हाल ही में टीएलएस और एसएसएल के लिए रोल किया है। इसके परिणामस्वरूप TLS कनेक्शन रु

  1. ठीक करें:वाईफ़ाई के लिए DHCP सक्षम नहीं है

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