Azure - SSL & Traffic Manager - Multiple regions - azure

I'm expanding my Azure SSL web app across multiple regions, and thus need to setup a traffic manager.
My current configuration works, and is:
SSL cert: www.bloop.com
Web App: uk-bloop.azurewebsites.net (Custom domain assigned)
Registrar (Go Daddy):
CNAME awverify awverify.uk-bloop.azurewebsites.net
CNAME awverify.www awverify.uk-bloop.azurewebsites.net
I can visit https://www.bloop.com, and everything works fine.
I now wish to add a USA region app: usa-bloop.azurewebsites.net into the mix.
I have added a traffic manager, and assigned the two endpoints, and it all seems to be working correctly:
bloop.trafficmanager.net
-> usa-bloop.azurewebsites.net
-> uk-bloop.azurewebsites.net
And that all seems great - the problem, is how can I assign a custom domain (& SSL Cert) to usa-bloop.azurewebsites.net? I cannot verify it, as the CNAME points to the uk region, and I cannot add two CNAME records, with the same name. If I point the CNAME to the traffic manager DNS, will Azure 'pass on' the verification to both the individual applications?
i.e:
Registrar (Go Daddy):
CNAME awverify awverify.bloop.trafficmanager.net
CNAME awverify.www awverify.bloop.trafficmanager.net

Minimum stuff required:
(you don't even need the awverify if CNAME is good enough - awverify is just for A)
Traffic Manager Endpoints:
Make sure your DNS configuration looks something like this (using tm.snobu.org instead of www.bloop.com):
$ dig tm.snobu.org
tm.snobu.org. 3397 IN CNAME simpletm.trafficmanager.net.
simpletm.trafficmanager.net. 97 IN CNAME app-eastus.azurewebsites.net.
app-eastus.azurewebsites.net. 1086 IN CNAME waws-prod-blu-039.vip.azurewebsites.windows.net.
waws-prod-blu-039.vip.azurewebsites.windows.net. 54 IN CNAME waws-prod-blu-039.cloudapp.net.
waws-prod-blu-039.cloudapp.net. 14 IN A 23.96.103.159
Set (the same) custom domain for both Web Apps:
Upload the SSL cert (in my case for tm.snobu.org) and set bindings for both Web Apps.
That's it.
The request shown above is not made over HTTPS because i don't have a cert handy, but you get the point.

In my opinion, you could configure SSL for each of your Azure websites, and configure DNS CNAME to point to the Traffic Manager, not the original website. And then you could add endpoints to point to your Azure Websites in Traffic Manager. I would recommend you to read this blog that explained how to scale Azure Websites globally with Traffic Manager.

Related

Azure Front Door and DNS Configuration

I'm having issue configuring my DNS to make all traffic routed from the root domain (no www) to the Azure front door. The below is what I have done so far:
Create the front door (frontend/backend/routing)
On-Board my custom domain (let's say hello.com) on front door
Now as per Microsoft guide I have to add a CNAME record to the DNS hosting provider (domain.com) to route the traffic to front door. But I have been told by domain.com that I cannot have A record and CNAME record named #
So I've found this solution https://learn.microsoft.com/en-gb/azure/frontdoor/front-door-how-to-onboard-apex-domain
Then I have created a DNS Zone on my Azure environment named "hello.com" and followed the guide.
Still I cannot see the traffic going through the front door.
Is that because I have 2 DNS servers? (one hosted on domain.com and another one on Azure)?
Can It be propagation time ?
Also how does azure know that I'm the owner of hello.com domain ?
As the linking document, to onboard a root or apex domain on your Front Door, you could use alias records in Azure DNS.
There are other DNS providers as well that support CNAME flattening or
DNS chasing, however, Azure Front Door recommends using Azure DNS for
its customers for hosting their domains.
If you select to use Azure DNS to host DNS domains, first you need to create an Azure DNS zone (hello.com) in Azure and delegate the domain to Azure DNS via changing the name server records for the domain in your original DNS registrar. You can verify the delegation by using a tool such as nslookup to query the Start of Authority (SOA) record for your zone. It can take up to 72 hours to propagate worldwide, although it typically takes a few hours.
Then, you can add an alias record for the zone apex in the DNS configuration for the domain to be onboarded. After this, you can add the apex domain name in the custom host name field on the Front Door designer tab.
To access your backend web app with the custom domain, ensure that you have created appropriate routing rules for your apex domain or added the domain to existing routing rules. Or, you may enable HTTPS on your custom domain.

How to configure DNS for Azure CDN with multiple endpoints and root

I own a domain "x.wiki" which is managed via domains.google
I have a website, which is split up into multiple endpoints using azure cdn.
sub1-x.azureedge.net - Subdomain 1 (intended site route with all content)
sub2-x.azureedge.net - Subdomain 2 (subdomain with limited
content)
sub3-x.azureedge.net - Subdomain 3 (subdomain with limited
content)
I want to serve these as follows.
www.x.wiki -> sub1-x.azureedge.net
x.wiki -> sub1-x.azureedge.net
sub2.x.wiki -> sub2-x.azureedge.net
sub3.x.wiki -> sub3-x.azureedge.net
currently it only works with www. / sub2. / sub3.
x.wiki doesnt resolve
Does anyone know how I can get this working correctly?
My understanding is that due to limitations with CNAME i cannot do this easily, however azureCDN to my knowledge does not give me an IP for use with custom domains.
Here is my DNS configuration.
You also use alias records to point your DNS zone apex x.wiki to Azure CDN endpoints. If your domain DNS provider does not support alias record for root domain, you could optionally to host your domain in Azure DNS.
In the Azure DNS zone, you could create an alias record like this,
Then, you will see one A record and one CNAME for your CDN endpoint.
After the records are verified, you could add the hostname x.wiki in the custom domain of your CDN endpoint.
Alternatively, you could try the workaround in this blog.
Set up a CNAME “cdnverify.” to
“cdnverify..azureedge.net”. Once all is verified and set up
(including SSL provisioning if desired), delete the CNAME and use
ANAME for the root record.
The answer to this is to redirect root to WWW from my DNS provider.
The cdnverify cname is not necessary.
https://www.tachyonstemplates.com/2018/google-domains-forward-root/
May re-open this if i still cant get adsense to resolve the root (because it is a redirect)

Cloudflare Setup with Azure WebApp

I have a domain name registered with GoDaddy, e.g., "mysite.com", and have followed the Azure instructions to map that domain's CNAME and A records to my Azure WebApp, i.e.,
I then updated GoDaddy's nameservers to point to cloudflare so cloudflare is now in charge of my DNS records, i.e.,
Within cloudflare I have SSL set to Full and the certificate appears to be active
and my DNS records in cloudflare pointing to my azurewebsites domain name, i.e.,
It has been over 36 hours since I updated the nameservers, but as you can see from cloudflares DNS records screenshot above (see Status), all traffic appears to be routing around cloudflare directly to Azure, i.e., I'm not hitting cloudflare. Putting domain mysite.azurewebsites.net in whatsmydns also shows everything pointing to Azure.
What have I missed in the setup to ensure all traffic routes through cloudflare?
Probably a little late but you need to click on that grey cloud icon in Cloudflares settings. The icon will then go orange and the traffic will be routed through Cloudflare.
CloudFlare appears to transparently replace all CNAME records to A, so this CNAME record is not visible for Azure. You have to change nameservers of your domain to its original ones (provided by GoDaddy in your case), add CNAME through GoDaddy DNS panel, wait for Azure to see it, approve domain in Azure, and only then migrate to CloudFlare.

Client cname pointing to my domain on cloudflare

A client of ours has the domain client.com
Our application is at superapp.mycompany.com
We want the client to be able to access our application via their own subdomain, like: superapp.client.com.
Normally we'd just tell the client to add a cname for superapp and point it to superapp.mycompany.com. Then on our server (IIS) we'd bind their domain to our app and everything would work as intended.
However, we can't replicate this functionality when our mycompany.com domain is managed via cloudflare.
When we navigate to superapp.client.com we get the following error page:
Error 1001
What happened?
You've requested a page on a website (superapp.client.com) that is on the Cloudflare network. Cloudflare is currently unable to resolve your requested domain (superapp.client.com).
Is there any way that Cloudflare can be used in this fashion?, this seems like a pretty standard set up for a multi tenant application that supports custom domains.
We don't need all the protection that Cloudfront offers for these client domains, but we want to use the Cloudfront nameservers for out application (mainly for fast switching of DNS records in the event we migrate servers, etc).
Any help is appreciated.
I hope it's not too late. But just found a way to do so.
You just need to add your client's domain (Add site in Cloudflare) to your account.
You don't need to change client domain's NS. So in your Cloudflare panel this domain will showing as "Pending Nameserver Update".
Next step is add the CName record to this domain.
Although the NS of client domain is not changed to CF, but CF has a lookup record as CName for it.
Hope it helps.
Just in case someone arrived here with same issue as me. Here is the answer. For short, no that won't work.
Since Cloudflare is a reverse proxy for the domain that is on Cloudflare, the CNAME redirect for the domain (not on Cloudflare) wouldn't know where to send the traffic to.
Ref: https://support.cloudflare.com/hc/en-us/articles/360017421192-Cloudflare-DNS-FAQ#CloudflareDNSFAQ-CanICNAMEadomainnotonCloudflaretoadomainthatisonCloudflare
If you don't need the CDN benefits, you can still use Cloudflare nameservers to manage your DNS zone and keep your current configuration. Just make sure the CDN is deactivated for the target subdomain in your zone (superapp.mycompany.com in your case).
You can tell if the CDN is activated or deactivated for a subdomain by looking at the cloud icon on the right of each DNS entry: if the cloud is orange the CDN is active, if it is gray, it isn't.
Cloudflare also supports external CNAME resolution in their CDN infrastructure, but it's only available for its Enterprise customers:
https://support.cloudflare.com/hc/en-us/articles/217371987-Managed-CNAME

awverify CNAME not being picked up

I have setup a CNAME for my domain using the awverify.www.DOMAIN.com. I'm using CloudFlare as my DNS provider. It's been more than 48 hours and using some dig tools on the internet, I can request the awverify domain and get the right response, yet Azure management portal still says it's not a relevant domain.
Any tips/advice???
Cheers!
Do you have that record marked with our proxy (orange cloud) in your DNS settings? That record may need to go direct until they verify (grey cloud). Try changing the cloud to off of CloudFlare in the DNS settings for that record to see if it helps.

Resources