Issue a certificate in a different account than the domain - amazon-web-services

I have an account A where a domain is hosted, and A is the owner of that domain. I have another account B where I would like to issue a certificate in the subdomain of account A. Any guidance on how to achieve this?
Account A Domain - www.example.com
Account B - www.accountb.example.com

Basically whenever we request ACM certificate it will ask to validate the domain. You can do it using DNS validation and Email validation.
Below link explain if you don't have route53 domain. You can basically manually add the DNS entries to the account A route 53 domain configuration.
https://docs.aws.amazon.com/acm/latest/userguide/dns-validation.html

Related

How do I make AWS validate my cross-account subdomain certificate?

In AWS account X, I already have a hosted zone and a valid certificate for my domain, mydomain.com.
In AWS account Y, I would like to create a subdomain mysubdomain.mydomain.com and create a certificate for that subdomain.
In account Y I requested a certificate for mysubdomain.mydomain.com (also covering *.mysubdomain.mydomain.com). I created a hosted zone for mysubdomain.mydomain.com and added a CNAME record to that hosted zone based on the newly requested certificate.
Finally, in my original hosted zone in account X, I created an NS record for mysubdomain.mydomain.com and copied over the name servers from the hosted zone in account Y.
My certificate request is still pending validation. Is there a step I have missed which is needed to make AWS validate the certificate?
EDIT: additionally, when I do nslookup -mysubdomain.mydomain.com, I get server can't find mysubdomain.mydomain.com: NXDOMAIN. (nslookup works for the root domain.) That might help diagnose the issue?

Issue AWS certificate for a single subdomain to be used with CloudFront?

My client has a domain example.com hosted somewhere.
We need to create a subdomain cloudfront.example.com in my AWS cloud in order to make my Cloudfront Distribution accessible on that subdomain.
CF requires an SSL certificate to work with a custom domain.
I was only able to find a solution which leads to 4th level subdomains via creating an AWS Hosted Zone (3rd level domain) in my AWS account where I can then create another subdomain (4th level).
Is it possible to register a single record in my client's DNS table to point to my CF Distro?
Yes, you can use the client's DNS. What you need to do:
Use ACM to create an SSL certificate for cloudfront.example.com. You will see a necessary CNAME to confirm the SSL certificate
Add CNAME to your client's DNS that will validate the certificate
In CloudFront, define alternate domain name (CNAME) as cloudfront.example.com
In the client's DNS add a CNAME for cloudfront.example.com to point to your CloudFront distribution domain name (it's going to be some-hash.cloudfront.net)

How does certificate manager work for multiple domians

I'm working with certification manager, Can someone pls explain me certification manager for multiple certificates.
For example
domain_name = foo.dev
alternate_domian_names = *.foo.dev , bar.com
so should create CNAME record for all 3 domain name (foo.dev,*foo.dev and bar.com) and validate for all the 3?
For the DNS foo.dev,*.foo.dev these seem to same parent DNS so single validation will work and you will need to add bar.com so All you will need to create 2 CNAME for the above DNS validation one for foo.dev and one for bar.com.
You can also compare CNAME record for foo.com or *.foo.com it should be same that is generated by AWS ACM.
You can attach a maximum 10 Domain names for each ACM certificate by default.
Understanding Automatic Domain Validation
To validate a domain, ACM sends automated, periodic HTTPS requests to
it. For domains that start with www., ACM also sends HTTPS requests to
the parent domain. For example, if your domain is www.example.com, ACM
sends periodic requests to www.example.com and to example.com. For
domains that don't start with www., ACM also sends HTTPS requests to
www.domain. ACM treats wildcard domain names (for example, *.example.com) the same as the parent domain. For examples, see the following table.
How ACM domain validation works
Yes. I can't find documentation describing this, but at least when using DNS validation, you have to create a DNS record for each Subject Alternative Name.

How can I use the same domain name in different AWS accounts?

I want to use the same domain name in different AWS account. The domain is hosted by AWS.
I have two accounts: Account A and Account B.
In Account A, I have created a certificate with AWS Certificate Manager to have a custom domain name like example.com.
What I want to achieve is using the same domain name in Account B. In order to do that I have created a new certificate with the same domain name in Account B and then in Route 53 I have created a new hosted zone with the same domain name. The certificate is issued via email validation for Account B.
I have created a S3 static website hosting and created CloudFront distribution with this domain name in Account B.
I have followed all the steps to create static website hosting from Use CloudFront to Serve a Static Website.
When I call the link example.com instead of navigating to the static website it gives the following error:
example.com’s server IP address could not be found.
ERR_NAME_NOT_RESOLVED
My question is what should I do to use the same domain name in different AWS accounts?
I have come up with a solution. It seems that the record set in Account B does not work and requests the address to hosted zone in Account A so creating the record set in Account A and using the CNAME of the distribution in Account B is the solution. The request goes to the record set in Account A and then it routes to the distribution in Account B.
The below diagram presents the solution:

Adding AWS SSL to an external DNS

I have bought a domain from an external resource and I tried to add the AWS SSL certificate into DNS as a CNAME record
Although the AWS Certivicate Name starts with a ' _ ' character, when I tried to add it in DNS it gives me an error as
"Server name can be use letters hypens and dots only"
I do not have any experience regarding this and want to know if I'm doing anything wrong in DNS Validation for AWS SSL Certificate.
There are couple of options to solve this:
1. Use Email verification method to get the certificate, if you haven't enabled Privacy protection on the registrar, you'll get a verification email from AWS ACM and you can verify a certificate or ACM also sends verification emails to 5 different email addresses such as:
administrator#your_domain_name
hostmaster#your_domain_name
postmaster#your_domain_name
webmaster#your_domain_name
admin#your_domain_name
Use Route53, Create a HostedZone for your domain in Route53 and use the name servers Route53 provided and use it on your current registrar.
Create and transfer all the records to Route53 , you don't need to transfer the domain, just use Route53 nameservers to your current registrar.