nginx http to https प्रॉक्सी को स्व-हस्ताक्षरित प्रमाण पत्र के साथ


17

मेरे पास एक निर्दिष्ट पोर्ट के साथ http अनुरोधों को दूसरे https url पर पुनर्निर्देशित करने के लिए एक nginx प्रॉक्सी है।

यहाँ मेरा विन्यास अब तक है:

server {
   listen 59848;
   location / {
      resolver 8.8.8.8;
      proxy_pass https://example.com$uri$is_args$args;
   }
}

ध्यान दें कि "example.com" केवल इस उदाहरण के लिए उपयोग किया जाता है और बाद में मैं केवल स्थानीयहोस्ट से भेजे जाने के अनुरोध को प्रतिबंधित कर दूंगा।

यह ठीक काम करता है, जब तक कि "प्रॉक्सी_पास" url के पीछे का सर्वर एक प्रसिद्ध SSL प्राधिकरण द्वारा हस्ताक्षरित वैध एसएसएल प्रमाणपत्र का उपयोग करता है (जो रूट सर्टिफिकेट किसी तरह nginx द्वारा उपयोग किया जाता है)।

लेकिन मुझे समस्या है कि मुझे nginx-साइड पर कस्टम स्व-हस्ताक्षरित SSL क्लाइंट प्रमाणपत्र का उपयोग करना होगा। क्या किसी को पता है कि इस स्व-हस्ताक्षरित प्रमाणपत्र को नगनेक्स में कैसे स्थापित किया जाए?


क्या आपने यह काम किया है? मैंने आपके और इसी तरह के विन्यास की कोशिश की, लेकिन वैसे भी क्लाइंट सर्वर के कारण कनेक्ट नहीं कर सकता है जो निर्दिष्ट पोर्ट को नहीं सुनता है। केवल यह serverनिर्देश काम नहीं करता है। लेकिन nginx शुरू होता है और विन्यास में निर्दिष्ट अन्य बंदरगाहों को सुनता है।
4

जवाबों:


15

nginx डिफ़ॉल्ट रूप से स्व-हस्ताक्षरित प्रमाण पत्र के उपयोग की अनुमति देता है:

Syntax:     proxy_ssl_verify on | off;
Default:    proxy_ssl_verify off;
Context:    stream, server
Enables or disables verification of the proxied server certificate. 

proxy_ssl_verifyनिर्देश निकालें या इसे करने के लिए सेट करें off
इसके बारे में अधिक यहाँ पढ़ें:
https://www.nginx.com/resources/admin-guide/nginx-tcp-ssl-upstreams/
http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_ssl_verify

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.