आप यह जांचना चाहेंगे कि धीमा क्लाइंट एसएसएल एन्क्रिप्शन करता है या नहीं। यह डिफ़ॉल्ट रूप से तब होता है जब इसे सर्वर पर सेट किया जाता है और क्लाइंट को एसएसएल समर्थन के साथ संकलित किया जाता है।
बड़ी मात्रा में डेटा पुनर्प्राप्त करने वाले प्रश्नों के लिए, समय अंतर महत्वपूर्ण है। इसके अलावा कुछ लिनक्स वितरण जैसे डेबियन/उबंटू में डिफ़ॉल्ट रूप से एसएसएल है, यहां तक कि स्थानीयहोस्ट के माध्यम से टीसीपी कनेक्शन के लिए भी।
एक उदाहरण के रूप में, एक गर्म कैश के साथ कुल 64Mbytes वजन वाली 1,5M पंक्तियों को पुनर्प्राप्त करने वाली क्वेरी के लिए समय अंतर है।
एन्क्रिप्शन के बिना:
$ psql "host=localhost dbname=mlists sslmode=disable" Password: psql (9.1.7, server 9.1.9) Type "help" for help. mlists=> \timing Timing is on. mlists=> \o /dev/null mlists=> select subject from mail; Time: 1672.258 ms
एन्क्रिप्शन के साथ:
$ psql "host=localhost dbname=mlists" Password: psql (9.1.7, server 9.1.9) SSL connection (cipher: DHE-RSA-AES256-SHA, bits: 256) Type "help" for help. mlists=> \o /dev/null mlists=> \timing Timing is on. mlists=> select subject from mail; Time: 7017.935 ms
इसे विश्व स्तर पर बंद करने के लिए, कोई SSL=off
set सेट कर सकता है में postgresql.conf
।
क्लाइंट पतों की विशिष्ट श्रेणियों के लिए इसे बंद करने के लिए, pg_hba.conf
में प्रविष्टियां जोड़ें hostnossl
. के साथ अधिक सामान्य host
. से पहले पहले क्षेत्र में प्रविष्टियां।
क्लाइंट-साइड को बंद करने के लिए, यह इस बात पर निर्भर करता है कि ड्राइवर sslmode
. को कैसे उजागर करता है कनेक्शन पैरामीटर। यदि ऐसा नहीं होता है, तो PGSSLMODE
पर्यावरण चर का उपयोग किया जा सकता है यदि ड्राइवर को libpq
. के शीर्ष पर कार्यान्वित किया जाता है ।
यूनिक्स डोमेन सॉकेट के माध्यम से कनेक्शन के लिए (local
), SSL का उनके साथ कभी भी उपयोग नहीं किया जाता है।