ఉచిత Let's Encrypt సర్టిఫికెట్
certbot తో VPS పై HTTPS సర్టిఫికెట్ను ఎలా జారీ చేయాలి మరియు ఆటోమేటిక్గా రిన్యూ చేయాలి, పోర్ట్ 80 ఇప్పటికే వాడుకలో ఉన్న సందర్భంతో సహా.
23 ఆగస్టు, 2026న నవీకరించబడింది
బ్రౌజర్ “Not secure” అని చూపించకుండా ఉండాలంటే, ఫారమ్లు మరియు పేమెంట్లు పని చేయాలంటే మీకు ఒక సర్టిఫికెట్ అవసరం. Let's Encrypt దీన్ని 90 రోజుల పాటు ఉచితంగా జారీ చేస్తుంది, ఆటోమేటిక్ రిన్యూవల్తో సహా.
సన్నాహం
మూడు విషయాలు చెక్ చేయండి, లేకపోతే జారీ విఫలమవుతుంది:
dig +short example.ru # should return your machine's address
ss -tulpn | grep -E ':80|:443'
- డొమైన్ యొక్క A రికార్డ్,
/hosting/vds/m/<id>వద్ద ఉన్న ప్యానెల్లోని “Overview” ట్యాబ్లో చూపిన అడ్రస్కు పాయింట్ అవుతోంది; - పోర్ట్ 80 బయటి నుండి చేరుకోగలిగేలా ఉంది — డొమైన్ యాజమాన్యాన్ని ధృవీకరించడానికి Let's Encrypt దీన్ని ఉపయోగిస్తుంది;
- ఒక వెబ్ సర్వర్ నడుస్తోంది: Nginx లేదా Apache.
మీరు Caddy ఉపయోగిస్తుంటే ఏమీ చేయాల్సిన అవసరం లేదు — అది స్వయంగా సర్టిఫికెట్లను జారీ చేస్తుంది.
జారీ
apt install -y certbot python3-certbot-nginx # Debian, Ubuntu
dnf install -y certbot python3-certbot-nginx # AlmaLinux, CentOS Stream
certbot --nginx -d example.ru -d www.example.ru
Apache కోసం, python3-certbot-apache మరియు --apache ఫ్లాగ్తో అదే విధానం. Certbot సర్టిఫికెట్ బ్లాక్ను మరియు HTTP-నుండి-HTTPS రీడైరెక్ట్ను కాన్ఫిగ్లోనే జోడిస్తుంది.
ఫలితాన్ని చెక్ చేయండి:
certbot certificates
curl -I https://example.ru
ఆటో-రిన్యూవల్
ప్యాకేజ్ ఒక సిస్టమ్ టైమర్ను ఇన్స్టాల్ చేస్తుంది, అదే రిన్యూవల్ను కూడా నిర్వహిస్తుంది. టైమర్ యాక్టివ్గా ఉందని నిర్ధారించుకుని, ఒక టెస్ట్ రిన్యూవల్ రన్ చేయండి:
systemctl list-timers | grep certbot
certbot renew --dry-run
డ్రై రన్ తప్పనిసరి. రెండు నెలల తర్వాత రిన్యూవల్ విఫలమయ్యే పరిస్థితిని ఇది పట్టుకుంటుంది — ఉదాహరణకు, మీరు సైట్ కాన్ఫిగ్ను రీనేమ్ చేశారు మరియు వెరిఫికేషన్ ఫైల్ను ఎక్కడ ఉంచాలో certbotకు ఇక తెలియదు.
పోర్ట్ 80 ఆక్యుపైడ్గా ఉన్నప్పుడు
పోర్ట్ 80లో ఒక అప్లికేషన్ నడుస్తుంటే, అక్కడ వెబ్ సర్వర్ పెట్టలేకపోతే, ప్రత్యేక మోడ్ ఉపయోగించండి:
certbot certonly --standalone --preferred-challenges http -d example.ru
చెక్ జరిగే సమయంలో Certbot తన స్వంత తాత్కాలిక సర్వర్ను ప్రారంభిస్తుంది. అలా చేయాలంటే, మీరు అప్లికేషన్ను ఆపాల్సి ఉంటుంది: --pre-hook మరియు --post-hook దీన్ని ఆటోమేటిక్గా చేయగలవు.
జారీ తర్వాత, సర్టిఫికెట్లు /etc/letsencrypt/live/example.ru/లో ఉంటాయి: fullchain.pem మరియు privkey.pem.
సాధారణ ఎర్రర్లు
| లక్షణం | కారణం |
|---|---|
Timeout during connect | పోర్ట్ 80 ఫైర్వాల్ బ్లాక్ చేసింది, లేదా డొమైన్ వేరే మెషీన్కు పాయింట్ అవుతోంది |
too many certificates already issued | డొమైన్ కోసం వారపు లిమిట్ చేరుకున్నారు — వేచి ఉండండి లేదా --stagingతో డీబగ్ చేయండి |
| జారీ తర్వాత సైట్ పాత సర్టిఫికెట్ను అందిస్తోంది | మీరు వెబ్ సర్వర్ను రీలోడ్ చేయలేదు: systemctl reload nginx |
| సర్టిఫికెట్ గడువు ముగిసింది | టైమర్ డిసేబుల్ అయింది — systemctl enable --now certbot.timer చెక్ చేయండి |
/etc/letsencryptడైరెక్టరీ మీ డేటాలో భాగం. మెషీన్ యొక్క ఆటోమేటిక్ బ్యాకప్లు ఉండవు, కాబట్టి మీ వెబ్ సర్వర్ కాన్ఫిగ్లతో పాటు దీన్ని కూడా మీ బ్యాకప్లో చేర్చండి.