SSL एक उपडोमेन के साथ जारी करता है


0

मेरे पास एक वेबसाइट है जिस पर एक वेबमेल क्लाइंट है।

यहाँ संरचना की एक प्रति है

web_root/
  mail/ <--Webmail client
  index.html <--Normal website

मैं एक उपडोमेन बिंदु से कोशिश कर रहा हूं mail.site.com सेवा मेरे site.com/mail/ SSL आधारित कनेक्शन का उपयोग करते हुए यह सब।

मैं निम्नलिखित से अवगत हूँ:

  • DNS रिकॉर्ड्स केवल IP पते की ओर इशारा करते हैं और यहां मुझे कोई फायदा नहीं होगा
  • मुझे site.com और mail.site.com के लिए दो अलग-अलग SSL प्रमाणपत्र चाहिए (जो मेरे पास है)
  • मुझे दो का उपयोग करने की आवश्यकता है VirtualHosts मेरे httpd.conf के अंदर

जब मैं mail.site.com से जुड़ने की कोशिश करता हूं तो सब कुछ ठीक चलता है। ब्राउज़र में हरे रंग का छोटा ताला, सही पृष्ठ दिखाता है, आदि। हालाँकि मैं जिस समस्या का सामना कर रहा हूं वह यह है कि जब मैं site.com से जुड़ने की कोशिश करता हूं तो मुझे रेड लॉक और एक त्रुटि मिलती है जो कहती है कि "आपका कनेक्शन सुरक्षित नहीं है!" जब मैं उस त्रुटि को क्लिक करता हूँ, तो वह दिखाता है mail/ निर्देशिका और उचित पृष्ठ नहीं। इसके अतिरिक्त, जब मैं एसएसएल प्रमाणपत्र को देखता हूं, तो प्रमाण पत्र के लिए mail.site.com और नहीं site.com जैसे होना चाहिए

मैं स्पष्ट रूप से गलत कॉन्फ़िगरेशन कर रहा हूं, और मैंने बिना किसी लाभ के कई समान पोस्ट के माध्यम से खोज की है।

सारांश में, मैं सभी अनुरोधों के लिए अनुमति देने के लिए अपनी httpd.conf फ़ाइल को कैसे कॉन्फ़िगर करूं site.com उपयुक्त प्रमाणपत्र का उपयोग करने के लिए और सभी अनुरोधों के लिए सही स्थान और जाने के लिए mail.site.com उपयुक्त प्रमाणपत्र का उपयोग करें और की सामग्री प्रदर्शित करें web_root/mail/?


संदर्भ के लिए अपाचे विन्यास फाइल।

httpd.conf

ServerRoot "/xampp/apache"
Listen 80

LoadModule access_compat_module modules/mod_access_compat.so
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule allowmethods_module modules/mod_allowmethods.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authz_core_module modules/mod_authz_core.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule dav_lock_module modules/mod_dav_lock.so
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
LoadModule headers_module modules/mod_headers.so
LoadModule include_module modules/mod_include.so
LoadModule info_module modules/mod_info.so
LoadModule isapi_module modules/mod_isapi.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule cache_disk_module modules/mod_cache_disk.so
LoadModule mime_module modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule status_module modules/mod_status.so
LoadModule version_module modules/mod_version.so

<IfModule unixd_module>
    User daemon
    Group daemon
</IfModule>

<Directory />
    AllowOverride none
    Require all denied
</Directory>

DocumentRoot "/xampp/htdocs"

<Directory "/xampp/htdocs">
    Options Indexes FollowSymLinks Includes ExecCGI
    AllowOverride All
    Require all granted
</Directory>

<IfModule dir_module>
    DirectoryIndex index.php index.pl index.cgi index.asp index.shtml index.html index.htm \
                   default.php default.pl default.cgi default.asp default.shtml default.html default.htm \
                   home.php home.pl home.cgi home.asp home.shtml home.html home.htm
</IfModule>

<Files ".ht*">
    Require all denied
</Files>

ErrorLog "logs/error.log"
LogLevel warn

<IfModule log_config_module>
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common
    <IfModule logio_module>
        LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
    </IfModule>
    CustomLog "logs/access.log" combined
</IfModule>

<IfModule alias_module>
    ScriptAlias /cgi-bin/ "/xampp/cgi-bin/"
</IfModule>

<Directory "/xampp/cgi-bin">
    AllowOverride All
    Options None
    Require all granted
</Directory>

<IfModule mime_module>
    TypesConfig conf/mime.types
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
    AddHandler cgi-script .cgi .pl .asp
    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml
</IfModule>

<IfModule mime_magic_module>
    MIMEMagicFile "conf/magic"
</IfModule>

Include conf/extra/httpd-mpm.conf
Include conf/extra/httpd-multilang-errordoc.conf
Include conf/extra/httpd-autoindex.conf
Include conf/extra/httpd-languages.conf
Include conf/extra/httpd-userdir.conf
Include conf/extra/httpd-info.conf
Include conf/extra/httpd-vhosts.conf
Include "conf/extra/httpd-proxy.conf"
Include "conf/extra/httpd-default.conf"
Include "conf/extra/httpd-xampp.conf"

<IfModule proxy_html_module>
    Include conf/extra/proxy-html.conf
</IfModule>

Include conf/extra/httpd-ssl.conf

<IfModule ssl_module>
    SSLRandomSeed startup builtin
    SSLRandomSeed connect builtin
</IfModule>

AcceptFilter http none
AcceptFilter https none

<IfModule mod_proxy.c>
    <IfModule mod_proxy_ajp.c>
        Include "conf/extra/httpd-ajp.conf"
    </IfModule>
</IfModule>

एसएसएल-httpd.conf

NameVirtualHost 64.255.105.66:443

<VirtualHost 64.255.105.66:443>
    DocumentRoot "/xampp/htdocs"
    ServerName site.com
    ServerAlias site.com
    ServerAdmin support@site.com

    ErrorLog "/xampp/apache/logs/error.log"
    TransferLog "/xampp/apache/logs/access.log"

    SSLEngine on
    SSLCertificateFile "C:\\SSL\\site\\cert.crt"
    SSLCertificateKeyFile "C:\\SSL\\site\\privkey.key"
    <FilesMatch "\.(cgi|shtml|phtml|php)$">
        SSLOptions +StdEnvVars
    </FilesMatch>
    <Directory "C:\\xampp\\htdocs\\">
        SSLOptions +StdEnvVars
        SSLRequireSSL
    </Directory>
    BrowserMatch "MSIE [2-5]" \
         nokeepalive ssl-unclean-shutdown \
         downgrade-1.0 force-response-1.0

    CustomLog "/xampp/apache/logs/ssl_request.log" \
          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

</VirtualHost>                                  


<VirtualHost 64.255.105.66:443>
    DocumentRoot "/xampp/htdocs/mail"
    ServerName mail.site.com
    ServerAlias site.com
    ServerAdmin support@site.com

    SSLEngine on
    SSLCertificateFile "C:\\SSL\\mail_site\\cert.crt"
    SSLCertificateKeyFile "C:\\SSL\\mail_site\\privkey.key"

    <FilesMatch "\.(cgi|shtml|phtml|php)$">
        SSLOptions +StdEnvVars
    </FilesMatch>
    <Directory "C:\\xampp\\htdocs\\mail\\">
        SSLOptions +StdEnvVars
        SSLRequireSSL
    </Directory>
    BrowserMatch "MSIE [2-5]" \
         nokeepalive ssl-unclean-shutdown \
         downgrade-1.0 force-response-1.0
</VirtualHost>

जवाबों:


1

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

FWIW, मेरे सेटअप में से एक पर समान कॉन्फ़िगरेशन है (लेकिन 2 पूरी तरह से अलग डोमेन के लिए)। हमारे विन्यास में अंतर हैं:

  1. मैं एक निर्देश NameVirtualHost *: 443 का उपयोग करता हूं (हालांकि मुझे यकीन नहीं है कि यह है अब और भी आवश्यक)

  2. मैं उपयोग करता हूं & lt; वर्चुएलहोस्ट *: 443 & gt; मेरी साइटों को बांधने के लिए

अन्य टिप्पणी -

मेल वर्चुअलहोस्ट के लिए, जैसा कि आप रीडायरेक्ट कर रहे हैं, आपके पास एक बहुत ही सरल वर्चुअलहोस्ट हो सकता है - मैं कुछ ऐसा करने की कोशिश करूँगा

<VirtualHost *:443>
ServerName mail.site.com

SSLEngine On
SSLCertificateFile "C:\\SSL\\mail_site\\cert.crt"
SSLCertificateKeyFile "C:\\SSL\\mail_site\\privkey.key"

RewriteEngine On
RewriteRule ^/(.*)     https://example.com/mail/$1 [L,R]
</VirtualHost>

(मैं ऊपर फिर से लिखना नियम में example.com बल्कि site.com का उपयोग करना था - उपयुक्त रूप में परिवर्तन - यह इस साइट की सीमा प्रतीत होती है!)


आपके जवाब से काम नहीं चला बल्कि मुझे हल खोजने में मदद मिली। मैंने पाया कि जब मैंने सर्वर उर्फ ​​लाइन को हटाया था तो वह टूट गई सब कुछ जबरदस्त हंसी। मैं सर्वर उपनाम और सर्वर नाम दोनों को सही करने के लिए समाप्त हो गया और यह काम कर गया!
David Chapman
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.