सभी डिप्लॉयमेंट गाइड डिप्लॉयमेंट

AWS पर SSL Certificate (ACM, EC2, ALB, CloudFront)

AWS आपकी architecture के basis पर HTTPS add करने के कई तरीके provide करता है। सही तरीका इस बात पर depend करता है कि आप load balancer, CloudFront, या एक standalone EC2 instance use करते हैं।

Decision Tree

क्या आप ALB, NLB, या CloudFront use कर रहे हैं?
├── हां → AWS Certificate Manager (ACM) use करें — free, auto-renewal
└── नहीं (standalone EC2)?
    ├── क्या आप Certbot install कर सकते हैं? → EC2 पर Certbot (auto-renewal)
    └── कोई root नहीं / quick setup? → GetHTTPS → EC2 पर manual install

Option 1: AWS Certificate Manager (ACM) — Load Balancer और CloudFront के लिए

ACM free SSL certificates provide करता है जो auto-renew होते हैं। ये सिर्फ AWS services (ALB, NLB, CloudFront, API Gateway) के साथ काम करते हैं — आप private key download नहीं कर सकते।

Certificate request करें

  1. Console में AWS Certificate Manager खोलें
  2. Request a certificateRequest a public certificate पर click करें
  3. अपने domains enter करें: example.com, *.example.com
  4. Validation choose करें: DNS validation (recommended) या Email
  5. Request पर click करें

DNS Validation

ACM आपको अपने DNS में add करने के लिए एक CNAME record देता है:

  • Name: _xxxx.example.com
  • Value: _yyyy.acm-validations.aws

अगर आपका DNS Route 53 में है, तो “Create records in Route 53” पर click करें — ACM इसे automatically add कर देता है।

ALB से Attach करें

  1. EC2 → Load Balancers पर जाएं → अपना ALB select करें
  2. Listeners tab → Add listener (या existing edit करें)
  3. Protocol: HTTPS, Port: 443
  4. Default action: अपने target group को forward करें
  5. Default SSL/TLS certificate: अपना ACM certificate select करें
  6. Save करें

CloudFront से Attach करें

  1. CloudFront पर जाएं → अपना distribution select करें
  2. General tab → Edit
  3. Custom SSL certificate: अपना ACM certificate select करें (us-east-1 में होना चाहिए)
  4. Save करें

Option 2: EC2 पर Let’s Encrypt (Standalone Instance)

अगर आप बिना load balancer के एक EC2 instance चलाते हैं, तो certificate directly server पर install करें।

GetHTTPS use करना (कोई installation required नहीं)

  1. GetHTTPS से certificate get करें
  2. Files अपने EC2 instance पर upload करें:
    scp fullchain.pem privkey.pem ec2-user@your-ec2-ip:/etc/ssl/
  3. Instance पर Nginx या Apache configure करें

Certbot use करना (auto-renewal)

# Amazon Linux 2023
sudo dnf install certbot python3-certbot-nginx
sudo certbot --nginx -d example.com

# EC2 पर Ubuntu
sudo snap install --classic certbot
sudo certbot --nginx -d example.com

Certbot automatically auto-renewal set करता है।

AWS पर ACM vs Let’s Encrypt

ACMLet’s Encrypt (GetHTTPS/Certbot)
CostFreeFree
ALB/CloudFront के साथ काम करता है❌ (LE को ACM में easily import नहीं कर सकते)
Directly EC2 पर काम करता है
Auto-renewal✅ (AWS-managed)✅ (Certbot) या manual (GetHTTPS)
Private key access❌ (AWS के पास)✅ (आपके पास)
Wildcard
Non-AWS use✅ (portable)

Thumb rule: ALB या CloudFront के behind किसी भी चीज़ के लिए ACM use करें। Standalone EC2 instances के लिए Let’s Encrypt use करें।

Security Group Configuration

Ensure करें कि आपका EC2 या ALB security group port 80 और 443 पर inbound traffic allow करता है:

Type        Protocol  Port  Source
HTTP        TCP       80    0.0.0.0/0
HTTPS       TCP       443   0.0.0.0/0

Port 80 HTTP→HTTPS redirect और Let’s Encrypt HTTP-01 challenge के लिए required है।

FAQ

क्या मैं directly EC2 पर ACM certificate use कर सकता हूं?

नहीं। ACM certificates सिर्फ AWS-managed services (ALB, NLB, CloudFront, API Gateway) से attach किए जा सकते हैं। आप private key export नहीं कर सकते। Standalone EC2 के लिए, GetHTTPS या Certbot use करें।

क्या मैं Let’s Encrypt certificate को ACM में import कर सकता हूं?

Technically हां (aws acm import-certificate), लेकिन यह ACM के through auto-renew नहीं होगा। आपको हर 90 days में फिर से import करना होगा। AWS services के लिए ACM के native certificates और EC2 के लिए Let’s Encrypt use करना simpler है।

ACM certificate के लिए कौन सा AWS region?

ALB/NLB के लिए: अपने load balancer के same region में certificate request करें। CloudFront के लिए: certificate mandatory us-east-1 (N. Virginia) में होना चाहिए, भले ही आपका origin कहीं भी हो।

क्या ACM really free है?

हां। ACM से public SSL/TLS certificates free हैं। Per certificate कोई charge नहीं है और renewal के लिए कोई charge नहीं है। आप सिर्फ उन AWS resources के लिए pay करते हैं जो certificate use करते हैं (ALB, CloudFront, etc.)।

ECS/Fargate service के लिए SSL कैसे handle करें?

अपनी ECS service के सामने एक ALB रखें और ALB listener पर ACM certificate add करें। ALB TLS terminate करता है और आपके containers को HTTP forward करता है। यह ECS के लिए standard pattern है।

S3 static website के लिए SSL कैसे handle करें?

S3 static website hosting custom SSL certificates को directly support नहीं करती। S3 के सामने CloudFront रखें और CloudFront distribution पर ACM certificate (us-east-1 से) add करें।

API Gateway के बारे में क्या?

AWS API Gateway में *.execute-api.region.amazonaws.com पर default रूप से free SSL included है। Custom domains (जैसे, api.example.com) के लिए, ACM certificate बनाएं और API Gateway में custom domain name configure करें।

क्या मुझे AWS पर ACM या GetHTTPS use करना चाहिए?

ScenarioUse करें
ALB / NLB / CloudFrontACM — free, auto-renewal, native integration
Standalone EC2GetHTTPS या Certbot — ACM keys EC2 में export नहीं कर सकता
ALB के behind EC2ACM ALB पर — EC2 को अपने certificate की need नहीं
ECS / FargateACM ALB पर — standard pattern
LightsailLightsail built-in — free Let’s Encrypt included

अगर आप बिना load balancer के pure EC2 पर हैं, तो GetHTTPS certificate get करने का सबसे fast तरीका है — कोई AWS CLI required नहीं।

संबंधित लेख

शुरुआत करें 2026-05-08
Free SSL certificate कैसे पाएं (step-by-step guide)
Let's Encrypt से 5 minutes में free SSL certificate पाएं — कोई software install नहीं, कोई account नहीं बनाना। 4 methods, दोनों challenge types, 6 platforms पर installation, और troubleshooting cover करने वाली complete guide।
डिप्लॉयमेंट 2026-05-08
Nginx पर SSL Certificate कैसे Install करें
Nginx पर SSL certificate install करने की step-by-step guide। File upload, full server block config, TLS best practices, HTTP/2, HSTS, redirect setup, testing, और 6 common errors का troubleshooting included है।
डिप्लॉयमेंट 2026-05-08
Docker और Reverse Proxy के साथ SSL Certificate
Nginx reverse proxy, automatic Let's Encrypt के साथ Traefik, या manual certificate mounting use करके Docker containers के लिए HTTPS configure करें।
अपने browser में मुफ़्त SSL certificate पाएँ
कोई installation नहीं, कोई account नहीं। आपकी private key कभी आपका device नहीं छोड़ती।
अपना certificate पाएँ