Bind multiple SSLs on single website in IIS 8+ - iis

I have one website configured for Windows Server 2012 IIS 8. This one website can be accessed by xyz.com or abc.com (2 different top level domain names). Is it possible to configure SSLs for both?

Yes. You can configure two different domains with two different certificates for the same IP and port no(443). After providing the domain name in Binding, enable check box Require Server Name Identification(IIS8). If you do not enable this check box, two websites will have the same single certificate, if you change one website binding file, it will reflect in other website also.. I have experienced.
Please refer below link.
http://www.orcsweb.com/blog/fred/host-different-ssls-on-one-ip-with-iis-8-sni/

As Windows Azure web site is powered by IIS, you can see from the offerings that it is possible to bind multiple SSL to a single site,
http://azure.microsoft.com/en-us/pricing/details/web-sites/#web-sites
The trick is to use SNI,
http://www.iis.net/learn/get-started/whats-new-in-iis-8/iis-80-server-name-indication-sni-ssl-scalability

Yes you can add multiple https bindings each with their own separate ssl certificate to the same site in IIS. However you'll want to bind them to separate IP addresses so that the certificate for xyz.com is bound using the IP address for xyz.com, and the certificate for abc.com is bound using the IP address for abc.com. But frankly, it'd be better practice to have one redirect to the other, or just make 2 sites in IIS and keep everything separate.

Related

Is it possible to host more than one site in IIS 8.5?

This is not my strong suit, all help will be appreciate it.
I'm hosting a site that is using an SSL certificate, I have created a second site that dont use SSL certificates, but I'm not able to get it to diplay it in the browser. I just get this error:
The domain rd.orders.com is not assigned to a site.
Please verify that everything is set up correctly.
I have done a research and I cant find anything related to this type of issue.
IIS supports hosting multiple websites on a single server, you can assign a unique IP address to each Web site, designate a non-standard TCP port number for a Web site, or use host headers. Of the three methods, it is more common to use host headers than to assign unique IP addresses to Web sites or to use non-standard TCP port numbers.
And if you want to configure a host header for a site, you can perform this procedure by using the user interface (UI), by running Appcmd.exe commands in a command-line window, by editing configuration files directly, or by writing WMI scripts
For more details, I recommend that you could refer to this document: Configure a Host Header for a Web Site.

Multiple websites on one IIS server

So if I have two domains i.e. domain1.example and domain2.example, both pointing to the exact same IP address (i.e. 192.0.2.1) on port 80.
How do I take users from domain1.example to one site, and users requesting from domain2.example to another site?
Additionally how do I set up subdomains? Someone requesting x.domain1.example should go to a third site.
When you configure the site in IIS you can assign the necessary host name in the bindings and the site will only respond to this.

Supporting SSL for multiple catch-all sites in IIS

Scenario
We have a multi-tenant SaaS application deployed on a VM hosted with a service provider. We have multiple domains pointing to this VM (let us call them abc.com and xyz.com). Each of our tenant gets a unique sub-domain URL from one of these domains.
In our IIS installation no domains are explicitly defined - as a result, when a request hits the IIS, as no domains are defined, all requests are automatically routed to the default site.
With this arrangement, we are able to serve a any number of sub-domains for each of the primary domains pointing to the VM without having to explicitly create these sub-domains. For example, t1.abc.com, t2.abc.com, t3.xyz.com, t4.xyz.com are all served by our application without having to create these sub-domains in IIS instance.
In our application, when we get the request, by checking the requested URL, we can easily identify the tenant from which the request is coming. All further data access is automatically restricted to the data created by the particular tenant.
Issue
We need to provide secure communication to all our application users through SSL. We can purchase wildcard SSL for each of the domains (viz abc.com, xyz.com). Now the issue is, how do we deploy multiple SSLs on a single website/application defined in IIS?
This will require us to have two separate sites defined in IIS for abc.com and xyz.com. Unfortunately, these will not be "catch-all" sites for the corresponding sub-domains. By default, IIS allows only one "catch-all" site.
From what I understand from some of the posts, we can have multiple "catch-all" site (for separate domains) in IIS, provided each of them is bound to a separate IP address. Though I could not find any document providing the steps for the same. Can someone point me to the document / steps for doing this?
It is not necessary to have 2 separate boxes for abc.com and xyz.com domains. You can request your CA to combine all DNS records into single SSL certificate with all required Subject Alternative Names SAN.
We also ran into this problem before and SAN certificate worked really well with our multi-tenant configuration. I would also recommend to use load balancer like Nginx for SSL offload to serve your client faster and even more secure. In this case you can just point new client to the Load Balancer.

Binding multiple site instance using SAN SSL on one single IP and port in IIS 7

I have a SAN certificate which has domains A, B C added to it. In my IIS, I've created a site instance for each of those domain.
I was only able to add https binding to one of the site instance. Surprisingly, https works for all those 3 domains. The confusing part is non-https traffics all goes to the correct domain, but https all the traffics goes to "the site" with https bindings on, instead of executing the code base in the corresponding domain!
> Eg. Assuming a SAN certificate contains www.a.com, www.b.com, www.c.com
> 1. create 3 separate site instance for www.a.com, www.b.com, www.c.com in IIS 7
> 2. Add https binding to www.a.com site
> 3. browse to http://www.b.com opens home page on b.com
> 4. browse to https://www.b.com opens home page on a.com!
Is it possible to use SAN SSL to secure multiple domains on one IP and port to resolve this issue?
After digging around, there is no way you can do it. When you create multiple site instance in IIS, you are only able to bind one of them to the IP with the certificate installed on. The way around it is
create multiple application in the single site instance
create all the http bindings under that site instance
use url rewrite to dynamically route the request to the correct application
First you need to create a cert with X509v3 extensions: link
Then, there's a feature known as "SNI" which lets you use multiple SSL certificates on the same IP. Wiki
Let me know how it goes. :)

IIS 6: Set up 2 SSL web apps on the same server on port 443

I was asked to create a sharepoint web application with ssl on a server with sharepoint 2010 installed. The problem is that this port seems to be in use for hosting our subversion repository. So when i try to browse my sharepoint site, it just shows a page with my repository. I've read about installing certificates and configuring multiple sites on one port with host headers but i never succeeded to complete this job. I would really appreciate some help here.
Thanks!
Assuming you're talking about individual SSL certificates (as opposed to a single wildcard certificate), I believe each website HAS to have its own IP address. AFAIK it is not possible to run multiple websites with multiple SSL certificates under the same IP address.
Depending on who is hosting the server, you would need a new IP address to be allocated to the server, and then within IIS you use the new IP address against the hostheader of your new website. You should find that the certificate works correctly, if not then try removing the certificate from the website and re-allocating it.
You would only be able to use a wildcard certificate if the primary domains of the websites were the same (e.g. website1.mydomain.com and website2.mydomain.com).
Thomas,
I've run into a similar situation before where the requirements dictated that we use 1 ip address, but the domains will be different (eg. website1.com, somesite.org, website2.us).
You can achieve this by using a Unified Communications certificate with Subject Alternative names. Currently, Digicert offers a UC certificate that can achieve this, but some other CA's will not.
Essentially you will have 1 certificate bound to :443 on the same ip address. The big drawback to this is that if the cert goes down, all the sites SSL will not work.
You have to manually (via powershell) bind each domain to port 443 however, but the instructions are fairly simple.
Server Name Indication would be another way, but it's not even an option in IIS 6

Resources