Create a Domain name and generate a free Certificate Authority signed certificate for it.
I started the Dockerized solutions challenge https://hackattic.com/challenges/dockerized_solutions and one of the perquisites, was to buy a domain name and generate a Certificate Authority (CA) signed certificate for it.
If any of this sounds strange or you're finding it difficult to generate a CA-signed Certificate for your domain name, this article is for you.
Included in this article is a tip on how to find coupons on the internet and purchase what you need at a discounted price. It is also worth noting that this article is part of the series on the solution to the Dockerized Solutions challenge. (You can find the challenge here https://hackattic.com/challenges/dockerized_solutions).
What is a domain name and how can I obtain one?
A domain name is your website's address. Think of it as a signpost on the internet highway. While computers understand numerical IP addresses, we humans prefer something more readable and memorable. Hence, domain names.
Where to get one?
For the purpose of this article, We'll be procuring a domain name from [Namecheap.com](http://Namecheap.com)\.
2. Saving on Your Purchase
Before diving into the purchase, consider installing the [joinhoney.com](http://joinhoney.com)\ browser extension. It's a tool that automatically scours the web for coupon codes, potentially saving you some money on your domain name purchase. Of course, if you're not interested, feel free to skip to the next step.
3. Purchasing the Domain Name
- Navigate to [Namecheap.com](http://Namecheap.com)\.
- Create an account.
- Search for your desired domain name and its extension.
- Once decided, add it to your cart.
- Proceed to checkout, apply any available coupon from joinhoney, and finalize your purchase.
4. Generating a Certificate Authority signed certificate for the domain name
Basics
A CA-signed certificate is a digital seal of trust. It is a type of SSL (secure sockets layer) certificate often referred to as a Transport Layer Security certificate.
That may have been a little too much, here’s a breakdown
An SSL certificate serves two functions, Authentication and Encryption. It is a digital certificate that authenticates a website's identity and enables an encrypted connection between a website and a web server.
It is of 2 types
A self-signed certificate is usually generated by a user for their domain. It is not signed by any certificate authority. Websites that use this type of certificate are classified as insecure because the authenticity of their certificate cannot be verified.
A certificate authority signed certificate is a certificate that is issued and signed by a trusted certificate authority.
How to get one?
We'll be obtaining ours from [SSL.com](http://SSL.com)\.
5. Generating Your CA-signed Certificate
- Create an account on [SSL.com](http://SSL.com)\.
- Navigate to [SSL.com](http://SSL.com)'s free certificate page\ and add the free plan to your cart.
- Complete the checkout process.
- Follow the provided instructions, filling out the necessary details. During this step, you'll create a CSR (Certificate Signing Request) and receive a private key.
- Finish the process via the link sent to your email.
- Once your certificate is ready, visit the certificate details page, select "other platforms," and download.
Congratulations! You now possess both a domain name and a CA-signed certificate for it.
The above steps are prerequisites for the challenge because the challenge explicitly requires a TLS certificate. A TLS certificate can only be tied to a domain name.