To any SSL guru's:

I have two (servlet/jsp) web sites set up (CompanyA and CompanyB), with
each site capable of being accessed normally and via SSL. I have a
certificate for each site, and both certificates are contained in a
common "keystore". I am unable to persuade the Orion server to associate
the correct SSL certificate with the appropriate site. When I attempt to
access either site via SSL, I always get the certificate for CompanyB -
which was the last one imported into the keystore. (I don't know if
that's significant or not.)

The locations of significant files:

CompanyA is at:
orion/applications/CompA/CompA-web/WEB-INF/web-site.xml
orion/applications/CompA/CompA-web/WEB-INF/secure-web-site.xml

CompanyB is at:
orion/applications/CompB/CompB-web/WEB-INF/web-site.xml
orion/applications/CompB/CompB-web/WEB-INF/secure-web-site.xml

The Keystore is at:
orion/keystore
(The CN for each certificate matched the domain name of each site -
i.e. www.companya.com, and www.companyb.com)

Orion configuration file:
orion/config/server.xml

The file contents (minus the dtd header info):
CompanyA web-site.xml:
<web-site host="[ALL]" port="80" display-name="Company A"
virtual-hosts="www.companya.com">
  <default-web-app application="CompA" name="CompA-web" shared="true" />

  <web-app applicatioin="CompA" name="CompA-web" root="/CompA/CompA-web"
/>
</web-site>

CompanyA secure-web-site.xml:
<web-site host="[ALL]" secure="true" display-name="Company A"
virtual-hosts="www.companya.com">
  <default-web-app application="CompA" name="CompA-web" shared="true" />

  <web-app applicatioin="CompA" name="CompA-web" root="/CompA/CompA-web"
/>
  <ssl-config keystore="../../../../keystore" keystore-password="123456"
/>
</web-site>

(CompanyB files look the same - except CompA is CompB etc.)

Orion server.xml configuration file:
<application-server
  application-directory="../applications"
  deployment-directory="../application-deployments">

  <library path="../lib" />

  <rmi-config path="./rmi.xml" />

  <principals path="./principals.xml" />

  <log>
    <file path="../log/server.log" />
  </log>

  <global-application name="default" path="application.xml" />

  <global-web-app-config path="global-web-application.xml" />
  <web-site path="./default-web-site.xml" />

  <application name="CompA" path="../applications/CompA/" />
  <web-site path="../applications/CompA/CompA-web/WEB-INF/web-site.xml"
/>
  <web-site
path="../applications/CompA/CompA-web/WEB-INF/secure-web-site.xml" />

  <application name="CompB" path="../applications/CompB/" />
  <web-site path="../applications/CompB/CompB-web/WEB-INF/web-site.xml"
/>
  <web-site
path="../applications/CompB/CompB-web/WEB-INF/secure-web-site.xml" />

</application-server>

When I attempt to access either https://www.companya.com or
https://www.companyb.com, I gain access to the appropriate site, BUT
always using the certificate for www.companyb.com.

Thanks in advance for any help or insight into what I am doing wrong!

        -Dale


Reply via email to