Cynhyrchu Tystysgrif SSL/TLS wedi dod i ben: Trwsio Terfynau Methiant Caled HSTS a Gadewch i ni Amgryptio Blociau CAA/Terfyn Cyfradd¶
Mae niferoedd brys yn amrywio yn ôl gwlad. Mae'r dudalen hon yn defnyddio 911, rhif yr Unol Daleithiau a Chanada. Mae llawer o wledydd eraill yn defnyddio 112, 999, neu rif arall. Dewch o hyd i'r rhif ar gyfer eich gwlad.
Pan fydd cynhyrchiad SSL/TLS (HTTPS) tystysgrif yn dod i ben - hyd yn oed gan eiliad wedi mynd heibio ei notAfter Stamp amser UTC - pob porwr modern (Chrome, Safari, Firefox, Edge), ap symudol (iOS App Transport Security, Android Network Security Config), derbynnydd bachyn gwe (Stripe, Shopify, Twilio, GitHub), a chleient API i fyny'r afon ar unwaith yn torri cysylltedd â NET::ERR_CERT_DATE_INVALID neu SSL_ERROR_RX_RECORD_TOO_LONG. Yn waeth eto, os yw eich parth yn anfon y Strict-Transport-Security (HSTS) pennawd neu wedi'i lunio i'r porwr Rhestr Rhag-lwytho HSTS, mae Chrome a Safari yn dileu'r botwm ffordd osgoi "Uwch -> Ymlaen i'r Safle (anniogel)" yn gyfan gwbl, gan arwain at blacowt methiant caled 100 y cant i bob defnyddiwr ledled y byd. Yn aml, mae'r cronjob adnewyddu awtomataidd (Certbot, acme.sh, Caddy, cert-manager, neu AWS ACM) wedi bod yn methu'n dawel am 30 diwrnod oherwydd DNS cyfyngol CAA cofnod, DNSSEC wedi torri DS cofnod, a firewall blocio porthladd 80 (HTTP-01 her), neu weinydd gwe (nginx / haproxy) a adnewyddodd y ffeil ar ddisg (fullchain.pem) ond ni ail-lwythodd ei brosesau gweithiwr cof. Os achoswyd eich cyfnod segur gan gofrestriad parth a ddaeth i ben neu weinyddwyr enwau wedi'u herwgipio yn hytrach na'r dystysgrif X.509 ei hun, newidiwch ar unwaith i herwgipio enw parth, DNS sydd wedi dod i ben, a meddiannu gwefan; os yw eich gweinydd yn gwbl anghyraeddadwy neu allan o ofod disg felly certbot methu ysgrifennu at /etc/letsencrypt, gw disg gweinydd 100% adferiad llawn a dim gofod neu argyfwng cynnal gwe, mudo, ac adfer wrth gefn. Os yw'r blacowt TLS hwn yn analluogi telemetreg ysbyty, APIs anfon brys, neu seilwaith diogelwch cyhoeddus, ffoniwch eich rhif argyfwng lleol (911 yn yr Unol Daleithiau a Chanada, 112 ar draws yr Undeb Ewropeaidd, 999 yn y Deyrnas Unedig) neu edrychwch ar ein cyfeiriadur rhyngwladol o rhifau brys.
Gwnewch hyn nawr¶
- Gwiriwch mewn 10 eiliad a yw'r dystysgrif ar ddisg wedi'i hadnewyddu'n barod, a methodd eich gweinydd gwe neu'ch balans llwyth â'i hail-lwytho i RAM:
- Cymharwch y soced TLS byw yn erbyn y
.pemffeil ar ddisg ar hyn o bryd:# 1. What the live server is serving over the network: echo | openssl s_client -servername example.com -connect example.com:443 2>/dev/null | openssl x509 -noout -dates -issuer -serial # 2. What is actually sitting on disk in /etc/letsencrypt/live/: sudo openssl x509 -in /etc/letsencrypt/live/example.com/fullchain.pem -noout -dates -issuer -serial - Os yw'r ffeil ar ddisg yn dangos dyfodol dilys
notAfterdyddiad tra bod y porthladd byw443yn dangos dyddiad dod i ben: Eich cleient ACME (certbot/acme.sh) wedi llwyddo wythnosau yn ôl, ondnginx,apache2,haproxy, neupostfixni chafodd ei ail-lwytho erioed, neu (haproxy/vault) yn gofynfullchain.pem+privkey.pemconcatenated i mewn i un bwndel. Rhedegsudo nginx -t && sudo systemctl reload nginx(neusudo systemctl reload apache2 haproxy) a bydd eich cyfnod segur yn dod i ben mewn 2 eiliad. - PEIDIWCH â rhedeg
certbot renew --force-renewaldro ar ôl tro mewn dolen os bydd adnewyddu'n methu: Mae Let's Encrypt yn gorfodi terfyn cyfradd llym o 5 tystysgrif ddyblyg fesul 7 diwrnod a 5 dilysiad wedi methu fesul cyfrif, fesul enw gwesteiwr, yr awr. Rhedeg--force-renewalbum gwaith mewn panig heb drwsio'r gwaelodnginxbydd ail-lwytho neu nam DNS/wal dân yn cloi'ch parth allan o gyhoeddiad Let's Encrypt am hyd at 7 diwrnod. - Os ydych chi'n taro Terfyn Cyfradd Gadewch i ni Amgryptio (
429 Too Many Requests), newidiwch eich cleient ACME i ail Awdurdod Tystysgrif cyhoeddus am ddim (ZeroSSL,Buypass Go SSL, neuGoogle Trust Services) neu ychwanegu is-barth taflu i ffwrdd SAN ar unwaith: - Pob cleient ACME (
certbot,acme.sh,caddy,cert-manager) yn gallu gofyn am dystysgrif ymddiried am ddim gan CA gwahanol mewn 30 eiliad (--server https://acme.zerossl.com/v2/DV90neuhttps://api.buypass.com/acme/directory), gan osgoi terfyn cyfradd Let's Encrypt yn llwyr. - Fel arall, dim ond i'r un set o Enwau Eraill Pwnc yn union y mae'r terfyn "5 tystysgrif ddyblyg fesul 7 diwrnod" Let's Encrypt (
SANs). Ychwanegu un is-barth dilys ychwanegol (-d example.com -d www.example.com -d tlsfix1.example.com) yn ei gwneud yn dystysgrif nad yw'n ddyblyg ac yn osgoi terfyn cyfradd y Dystysgrif Ddyblyg ar unwaith. - ** Gwiriwch a yw DNS
CAArecord neu wedi torriDNSSECyn rhwystro eich Awdurdod Tystysgrif rhag cyhoeddi (CAA record for example.com prevents issuance)**: - Holwch am Awdurdodiad Awdurdod Ardystio eich parth (
CAA) cofnodion:dig +short CAA example.com. Os oes gan eich DNS0 issue "sectigo.com"neu0 issue "amazon.com"(neu ar barth rhiant), Gadewch i ni Amgryptio (letsencrypt.org) a ZeroSSL (sectigo.com) yn cael eu gwahardd gan RFC 8659 rhag eu cyhoeddi nes i chi ychwanegu0 issue "letsencrypt.org"i'ch parth DNS. - ** Os porthladd
80(HTTP-01her) wedi'i rwystro gan wal dân, CDN, neu ISP, neu os yw'ch gweinydd gwe yn gwrthod cychwyn oherwydd tystysgrif coll, defnyddiwch--standaloneneu--dns(DNS-01) dilysu**: - Stopio
nginx/apacheyn fyr ac yn rhedegsudo certbot certonly --standalone -d example.com, neu ddefnyddio--manual --preferred-challenges dnsi ddilysu trwy gludo a_acme-challenge.example.comTXTcofnodwch i mewn i'ch consol DNS heb gyffwrdd porthladd80. - ** Os yw'ch gwefan yn eistedd y tu ôl i Cloudflare, AWS CloudFront, neu Fastly, gwiriwch a yw'r dystysgrif sydd wedi dod i ben ar y CDN Edge neu ar eich Gweinyddwr Tarddiad (
Error 526 Invalid SSL Certificate)**: - Ar Cloudflare, os daeth eich tystysgrif gweinydd tarddiad i ben a Cloudflare wedi'i osod i
Full (Strict), mae defnyddwyr yn gweld Gwall 526. Wrth i chi drwsio'r dystysgrif tarddiad, gallwch adfer traffig safle byw mewn 5 eiliad trwy gynhyrchu ** tystysgrif CA Cloudflare Origin 15 mlynedd** yn dangosfwrdd Cloudflare (neu newid modd SSL/TLS dros dro oFull (Strict)iFullam y 10 munud y mae'n ei gymryd i ddisodli'r tarddiad.pemffeil).
Danger
Peidiwch byth â cheisio "trwsio" cloi allan HSTS Preload trwy osod Strict-Transport-Security: max-age=0 tra bod eich tystysgrif SSL/TLS yn dal i ddod i ben: Mae RFC 6797 yn gwahardd porwyr yn benodol rhag prosesu neu anrhydeddu unrhyw rai Strict-Transport-Security pennawd (gan gynnwys max-age=0) dros gysylltiad TLS di-ymddiried, hunan-lofnod, neu sydd wedi dod i ben, neu dros blaen HTTP. Ar ben hynny, os oes gan eich parth includeSubDomains; preload wedi'i lunio ar restr rhaglwytho HSTS statig Chromium/Firefox/Safari, hyd yn oed max-age=0 ni fydd dros gysylltiad dilys yn dileu'r faner rhaglwytho ar gyfer ymwelwyr tro cyntaf. Yr unig ffordd i adfer mynediad i barth sydd wedi'i gloi gan HSTS yw gosod tystysgrif X.509 ddilys y gellir ymddiried ynddi'n gyhoeddus ar borth 443.
Coeden benderfynu: gwneud diagnosis a thrwsio tystysgrif SSL/TLS cynhyrchiad sydd wedi dod i ben¶
Dilynwch y goeden benderfynu hon i nodi'r union haen fethiant (CDN Edge vs Origin Daemon Memory vs. ACME Challenge vs. CA Rate Limit) ac adfer traffig HTTPS mewn munudau:
flowchart TD
Start["Defnyddwyr / API yn Adrodd NET::ERR_CERT_DATE_INVALID neu Cloudflare Error 526"] --> CheckLive["Rhedeg: openssl s_client -servername domain -connect parth: 443 | openssl x509 -noout -dates -issuer"]
CheckLive --> WhereExpired{"Pa Dystysgrif Sydd Wedi Darfod Mewn Gwirionedd?"}
WhereExpired -->|"Disk fullchain.pem Yn DDILYS, Ond Live Port 443 YN DDIWEDDARAF"| StaleDaemon["Cof Daemon Hen neu Storfa Tystysgrif Hollti: Ail-lwytho nginx / apache2 / haproxy / postfix, neu Ailadeiladu Bwndel PEM HAProxy Cyfun"]
WhereExpired -->|"Mae CDN Edge Cert (Cloudflare / CloudFront / Fastly) wedi dod i ben"| CDNFix["Gwiriwch Cofnodion DNS CAA ar gyfer CDN CA (letsencrypt.org / pki.goog / digicert.com / amazon.com) a Toggle Universal SSL neu Ail-ddilysu ACM"]
WhereExpired -->|"Gweinydd Tarddiad fullchain.pem ar Ddisg Yn DOD I ben"| DryRun["Rhedeg: sudo certbot adnewyddu --dry-run (neu acme.sh --renew -d domain --debug)"]
DryRun --> WhyFailed{"Pam Methodd Adnewyddu ACME?"}
WhyFailed -->|"429 Gormod o Geisiadau (Terfyn Cyfradd wedi mynd y tu hwnt)"| RateLimit["Ffordd Osgoi Ar Unwaith: Argraffiad o ZeroSSL / Buypass / Gwasanaethau Ymddiriedolaeth Google NEU Ychwanegu 1 Is-barth Ychwanegol SAN (-d fix1.example.com)"]
WhyFailed -->|"Cofnod CAA yn Atal Cyhoeddi neu SERVFAIL (DNSSEC)"| CAADNS["Rhedeg: cloddio CAA example.com -> Ychwanegu 0 rhifyn 'letsencrypt.org' (a 'sectigo.com') neu Trwsio Cofnod DNSSEC DS sydd wedi torri yn y Cofrestrydd"]
WhyFailed -->|"Gwrthodwyd y Cysylltiad / Goramser / 404 ymlaen /.well-known/acme-challenge/"| HttpBlock["Dolen wedi'i Rhwystro neu Ailgyfeirio Porthladd 80: Agor Porthladd TCP 80 yn Firewall, Eithrio /.well-known/ o Auth/Rewrite, neu Defnyddiwch Her DNS-01"]
WhyFailed -->|"Rheolwr tystysgrif Kubernetes Archeb yn yr Arfaeth"| K8sFix["Rhedeg: kubectl disgrifio her -> Gwiriwch anodiad dosbarth Ingress, polisi rhwydwaith cod datrys HTTP01, neu Webhook TLS"]
StaleDaemon --> VerifyAll["Gwirio Cadwyn & OCSP Stapling: openssl s_client -connect parth: 443 -status"]
CDNFix --> VerifyAll
RateLimit --> VerifyAll
CAADNS --> VerifyAll
HttpBlock --> VerifyAll
K8sFix --> VerifyAll
Cam 1: Deall pam HSTS (Strict-Transport-Security) yn achosi blacowt methiant caled llwyr¶
Pan nad yw gwefan yn yn defnyddio HSTS, mae tystysgrif sydd wedi dod i ben yn dangos rhybudd rhyngosodol (Your connection is not private) gyda dolen "Advanced -> Ymlaen i example.com (anniogel)" sy'n galluogi defnyddwyr anobeithiol i glicio drwodd.
Fodd bynnag, mae bron pob cymhwysiad gwe cynhyrchu modern, banciau, llwyfannau SaaS, a .dev / .app / .page / .bank mae parthau lefel uchaf yn gorfodi HTTP Strict Transport Security (HSTS, Clwb Rygbi 6797):
1. HSTS deinamig (max-age=31536000): Mae unrhyw borwr sydd wedi ymweld â'ch gwefan o fewn y 365 diwrnod diwethaf wedi cadw'r polisi yn ôl Strict-Transport-Security: max-age=31536000; includeSubDomains. Hyd nes y daw'r amserydd hwnnw i ben, mae'r porwr ** yn gwahardd ** y defnyddiwr rhag clicio trwy unrhyw wall tystysgrif (ERR_CERT_DATE_INVALID, ERR_CERT_COMMON_NAME_INVALID, neu ERR_CERT_AUTHORITY_INVALID).
2. ** Rhaglwyth HSTS statig (preload rhestr neu .dev / .app gTLD): Os cyflwynwyd eich parth i hstspreload.org - neu os yw'ch parth yn defnyddio TLD Preloaded Registry-like .dev, .app, .page, .new, .chrome, neu .bank - mae pob copi o Chrome, Edge, Firefox, Safari, ac Android WebView ar y Ddaear wedi'i god caled i'w barth deuaidd fel y'i gorfodir gan HSTS cyn i'r defnyddiwr ymweld â'ch gwefan am y tro cyntaf erioed.
3. Pam includeSubDomains yn torri offer mewnol a gweinyddwyr llwyfannu: Os yw'ch parth gwraidd (example.com) yn anfon Strict-Transport-Security: max-age=31536000; includeSubDomains, pob is-barth (vpn.example.com, internal-jira.example.com, printer.example.com) hefyd wedi'i gloi i mewn i fodd methiant caled HSTS.
4. ** Pam integreiddiadau API a Webhook (Stripe, Twilio, Slack, iOS ATS) methu ar unwaith: Cleientiaid TLS gweinydd-i-weinydd (libcurl, Python requests/urllib3, Nôd.js undici, Ewch crypto/tls, Java SSLContext) perfformio Clwb Rygbi 5280 llym notAfter dilysu yn ddiofyn ac nid oes ganddynt unrhyw gysyniad o ddefnyddiwr "cliciwch drwodd." Yn ystod toriad TLS, bydd bachau gwe Stripe a Shopify yn methu â danfon ac yn mynd i mewn i giwiau ailgynnig esbonyddol.
Cam 2: Y diagnostig 60 eiliad - A yw'r dystysgrif eisoes wedi'i hadnewyddu ar ddisg?¶
Mewn tua 35 y cant o doriadau cynhyrchu Let's Encrypt, mewn gwirionedd adnewyddwyd y dystysgrif ar ddisg wythnosau yn ôl gan certbot.timer neu acme.sh, ond mae'r daemon rhedeg yn dal i wasanaethu'r hen dystysgrif sydd wedi dod i ben o RAM.
Cam 1: Cymharwch y soced rhwydwaith byw yn erbyn y ffeil ar-ddisg¶
Rhedeg y ddau orchymyn ar eich gweinydd:
# Check what the live port 443 socket is presenting in RAM:
echo | openssl s_client -servername example.com -connect 127.0.0.1:443 2>/dev/null | openssl x509 -noout -subject -issuer -dates -serial
# Check what is actually sitting on the filesystem:
sudo openssl x509 -in /etc/letsencrypt/live/example.com/fullchain.pem -noout -subject -issuer -dates -serial
Cam 2: Trwsiwch y 4 trap cyffredin "Wedi'i Adnewyddu ar Ddisg, Wedi dod i Ben mewn RAM".¶
| Gwasanaeth / Dirprwy | Pam Mae'n Parhau i Weinyddu'r Hen Dystysgrif sydd wedi dod i Ben Ar ôl Adnewyddu | Gorchymyn Union i Atgyweirio Ar Unwaith ac yn Barhaol |
|---|---|---|
Nginx / Apache |
certbot defnyddio --webroot neu --standalone (neu dns-* ategyn) yn lle --nginx, felly nid oedd unrhyw fachyn ail-lwytho ôl-adnewyddu erioed yn arwydd o'r broses feistr. |
Rhedeg sudo nginx -t && sudo systemctl reload nginx. Ychwanegu bachyn gosod parhaol i mewn /etc/letsencrypt/renewal-hooks/deploy/reload-nginx.sh:systemctl reload nginx (sudo chmod +x y sgript). |
HAProxy |
HAProxy ei gwneud yn ofynnol fullchain.pem AC privkey.pem concatenated i cyfuniad sengl .pem ffeil (combined.pem). Certbot wedi'i ddiweddaru fullchain.pem a privkey.pem, ond combined.pem yw'r copi 90 diwrnod oed o hyd. |
Ailadeiladu'r bwndel ac ail-lwytho HAProxy:sudo sh -c 'cat /etc/letsencrypt/live/example.com/fullchain.pem /etc/letsencrypt/live/example.com/privkey.pem > /etc/haproxy/certs/example.com.pem'sudo chmod 600 /etc/haproxy/certs/example.com.pem && sudo systemctl reload haproxy |
** Symlink toredig i mewn /etc/letsencrypt/live/** |
Rhywun wedi'i gopïo â llaw /etc/letsencrypt/archive/example.com/fullchain3.pem i mewn /etc/nginx/ssl/ yn lle pwyntio nginx.conf i'r /etc/letsencrypt/live/example.com/fullchain.pem symlink, neu creodd Certbot linach ddyblyg o'r enw /etc/letsencrypt/live/example.com-0001/. |
Rhedeg sudo certbot certificates i weld os example.com-0001 ei greu. Pwynt ssl_certificate mewn /etc/nginx/ i'r gweithgar /etc/letsencrypt/live/<lineage>/fullchain.pem symlink ac ail-lwytho Nginx. |
** Cynhwysydd Dociwr (nginx / traefik / postfix)** |
Adnewyddwyd yr OS gwesteiwr /etc/letsencrypt/archive/example.com/fullchain4.pem a diweddaru'r symlink, ond roedd y cynhwysydd Docker yn rhwymo'r inod ffeil sengl (a oedd heb ei gysylltu / ei ddisodli) neu ni dderbyniwyd y broses cynhwysydd y tu mewn i'r gofod enw byth SIGHUP. |
Rhwymo-mount y cyfan /etc/letsencrypt cyfeiriadur (byth yn sengl .pem ffeil oherwydd mae targedau symlink yn newid wrth adnewyddu) a rhedeg docker kill -s HUP <nginx_container>. |
Cam 3: Trwsio DNS CAA blociau cofnodi a DNSSEC methiannau dilysu¶
Os ydych yn rhedeg sudo certbot renew --dry-run a gweld:
- urn:ietf:params:acme:error:caa :: CAA record for example.com prevents issuance
- urn:ietf:params:acme:error:dns :: DNS problem: SERVFAIL looking up A/CAA for example.com
1. Sut DNS CAA (RFC 8659) yn blocio adnewyddu tystysgrif¶
Mae'n ofynnol yn gyfreithiol i bob Awdurdod Tystysgrif cyhoeddus yn ôl Gofynion Sylfaenol Fforwm yr Awdurdod Cymwys/Porwr ymholi DNS CAA cofnodion cyn rhoi unrhyw dystysgrif. Mae'r CA yn cerdded i fyny'r goeden DNS o sub.app.example.com -> app.example.com -> example.com:
- Os example.com wedi sero CAA cofnodion, caniateir i unrhyw CA eu cyhoeddi.
- Os example.com wedi hyd yn oed sengl CAA cofnod (er enghraifft, 0 issue "amazon.com" wedi'i ychwanegu'n awtomatig pan greodd rhywun ddosbarthiad CloudFront AWS, neu 0 issue "digicert.com"), gwaherddir yn llwyr bob Awdurdod Tystysgrif arall ar y Ddaear rhag rhoi tystysgrif ar gyfer example.com neu unrhyw un o'i is-barthau.
- Ar ben hynny, os ydych yn gofyn am dystysgrif Cerdyn Gwyllt (*.example.com) ac mae eich parth yn diffinio penodol 0 issuewild "ca.example" tag, mae'r CA yn gwirio'r issuewild eiddo yn hytrach na issue.
Trwsiad diagnostig a sydyn ar gyfer CAA blociau:¶
- Gwirio
CAAcofnodion ar yr enw gwesteiwr a'r parth apex: - Gwiriwch hefyd a
sub.example.comyn aCNAMEgan bwyntio at barth arall (Fesul RFC 8659, mae CAs hefyd yn gwirio'rCAAcofnodion ar dargedau CNAME). - Yn dangosfwrdd eich darparwr DNS (Cloudflare, Route 53, Cloud DNS, Namecheap), peidiwch â dileu'r rhai presennol
CAAcofnodion a ddefnyddir gan eich CDN neu AWS ACM; yn lle hynny, atodi ychwanegolCAAcofnodion yn awdurdodi Let's Encrypt a'ch CAs wrth gefn: - (Sylwer: Defnyddiau ZeroSSL
sectigo.comfel ei ddynodwr CAA sylfaenol, ac mae Google Trust Services yn ei ddefnyddiopki.goog.)* - Arhoswch 60 eiliad i'ch gweinyddwyr enwau awdurdodol ddiweddaru (
dig @ns1.yourdns.com CAA example.com) ac ail-redeg ar unwaithsudo certbot renew. Gan fod CAs yn perfformio chwiliadau ailadroddus byw gan osgoi caches cyhoeddus wrth ailgynnig, mae cyhoeddi yn llwyddo ar unwaith.
2. Trwsio DNS problem: SERVFAIL looking up CAA (DNSSEC diffyg cyfatebiaeth)¶
Mae Let's Encrypt, Google Trust Services, a ZeroSSL yn gorfodi dilysiad DNSEC yn llym ar bob chwiliad DNS (A, AAAA, TXT, a CAA). Hyd yn oed os oes gan barth na CAA cofnod, rhaid i'r Awdurdod Cymwys dderbyn cofnod sy'n ddilys yn cryptograffig NOERROR (ateb gwag) neu NXDOMAIN (NSEC / NSEC3 gwadu bodolaeth wedi'i ddilysu) ymateb.
- Os oes gan eich cofrestrydd parth hen hanes DS (Arwyddwr Dirprwyo) yn cofnodi ar ôl i chi fudo darparwyr DNS (er enghraifft, symud o GoDaddy i Cloudflare neu Route 53 heb analluogi DNSSEC yn gyntaf), datrysiadau ailadroddus sy'n gorfodi dychweliad DNSSEC SERVFAIL.
- Gwiriwch mewn 5 eiliad: Rhedeg delv @8.8.8.8 example.com CAA neu brawf yn dnsviz.net. Os dig @8.8.8.8 example.com yn dychwelyd status: SERVFAIL tra dig +cd @8.8.8.8 example.com (+cd = Mae Gwirio Anabl, gan anwybyddu DNSSEC) yn dychwelyd eich cyfeiriad IP, mae eich cadwyn DNSSEC wedi torri. Mewngofnodwch i'ch cofrestrydd parth ar unwaith a naill ai dileu'r hen stori DS cofnodi neu gopïo'r presennol DS paramedrau gan eich gwesteiwr DNS gweithredol.
Cam 4: Osgoi Terfynau Cyfradd Gadewch i ni Amgryptio (429 Too Many Requests) yn ystod cyfnod segur gweithredol¶
Yn ystod digwyddiad anhrefnus, mae peirianwyr yn aml yn ailgychwyn cynwysyddion neu'n rhedeg certbot dro ar ôl tro nes bod Let's Encrypt yn gwrthod pob cais gyda:
- urn:ietf:params:acme:error:rateLimited :: Error creating new order :: too many certificates (5) already issued for this exact set of domains in the last 168h0m0s
- urn:ietf:params:acme:error:rateLimited :: Error creating new order :: too many failed authorizations (5) recently
Mae amseroedd aros yn amrywio o 1 awr (ar gyfer awdurdodiadau a fethwyd) i 7 diwrnod (168 awr) (ar gyfer y terfyn 5 tystysgrif dyblyg). Peidiwch ag aros 1 awr neu 7 diwrnod tra bod eich safle cynhyrchu i lawr. Mae gennych ddau ateb cwbl gyfreithlon ar unwaith:
Gweithle A (Gorau): Newidiwch Awdurdod Tystysgrif ACME i ZeroSSL, Buypass, neu Google Trust Services mewn 30 eiliad¶
Mae'r protocol ACME (RFC 8555) yn safon agored. Mae pob prif borwr a system weithredu yn ymddiried yn ZeroSSL (gwreiddyn Sectigo), Buypass Go SSL (CA Norwyaidd), a Gwasanaethau Ymddiriedolaeth Google (pki.goog) yn union yr un fath â Let's Encrypt (ISRG Root X1). Nid oes yr un ohonynt yn rhannu terfynau cyfradd gyda Let's Encrypt.
- Opsiwn 1: Cyhoeddi ar unwaith drwy
Certbotgan ddefnyddio Buypass Go SSL (Nid oes angen allwedd cyfrif/EAB, dilysrwydd 180 diwrnod): - (Sylwer: Mae Buypass yn cefnogi tystysgrifau aml-barth hyd at 5 SAN, ond nid cerdyn gwyllt
*.example.comtystysgrifau)* - Opsiwn 2: Cyhoeddi ar unwaith drwy
acme.sh(sy'n rhagosod i ZeroSSL neu'n newid CAs gyda--server): - Opsiwn 3: Mater trwy Wasanaethau Ymddiriedolaeth Google (
pki.goog) ACME Cyhoeddus: Yn Google Cloud Console (neu drwygcloud publicca external-account-keys create), cynhyrchu Rhwymo Cyfrifon Allanol am ddim (EAB) allwedd mewn 10 eiliad a rhedeg:
O gwmpas B: Osgowch y terfyn Let's Encrypt "5 Tystysgrif Dyblyg" trwy ychwanegu un enw gwesteiwr SAN ychwanegol¶
Gadewch i ni Amgryptio terfyn dyblyg o 168 awr (too many certificates (5) already issued for this exact set of domains) tracio'r set yn nhrefn yr wyddor o enwau gwesteiwr SAN ar y dystysgrif, tra bod terfyn cyffredinol y Parth Cofrestredig yn 50 tystysgrif yr wythnos.
1. Creu DNS diniwed A cofnod yn pwyntio at yr un gweinydd: tls-recovery-01.example.com -> <your_server_ip>.
2. Gofynnwch am y dystysgrif gyda'ch parthau gwreiddiol ** a ** yr enw gwesteiwr newydd:
sudo certbot certonly --nginx --cert-name example.com \
-d example.com -d www.example.com -d tls-recovery-01.example.com
--cert-name example.com diweddaru eich presennol /etc/letsencrypt/live/example.com/ cyfeiriadur yn ei le fel nad oes rhaid i chi hyd yn oed olygu nginx.conf.) Oherwydd {example.com, tls-recovery-01.example.com, www.example.com} yn set newydd sbon o barthau, mae Let's Encrypt yn cyhoeddi'r dystysgrif ar unwaith.
Cam 5: Trwsio wedi torri HTTP-01 heriau (Port 80) neu ddefnyddio DNS-01 dilysu brys¶
Pryd certbot renew yn methu â Timeout during connect (likely firewall problem) neu Invalid response from http://example.com/.well-known/acme-challenge/...: 404 (neu 403), ni all y gweinyddwyr dilysu CA gyrraedd eich tocyn her HTTP ar borth TCP 80.
Pam HTTP-01 yn torri'n sydyn ar weinyddion a weithiodd 60 diwrnod yn ôl¶
- Grŵp Diogelwch Cwmwl / UFW /
iptablesar gau Port 80: Fe galedodd rhywun y wal dân i ganiatáu porthladd yn unig443(HTTPS), gan anghofio bod RFC 8555HTTP-01dilysu bob amser yn dechrau ar borth HTTP plaen 80 (er y bydd yn dilyn a301ailgyfeirio ihttps://ar porthladd443). - ** IPv6 toredig (
AAAA) Cofnod**: Mae gan eich parth IPv4 (A) cofnod ac IPv6 (AAAA) cofnod. Mae'n well gan Let's Encrypt ** IPv6 (AAAA) cyntaf**. Os yw'ch cyfeiriad IPv6 yn anghywir, wedi'i rwystro ganip6tables, neu heb ei rwymo yn Nginx (listen [::]:80;), amseroedd dilysu i ben er bod IPv4 yn gweithio'n iawn. - ** Nginx / Llwybrydd Cymhwysiad (
React/Next.js/Django/Rails) rhyng-gipio/.well-known/acme-challenge/**: Eichserverblocio ar borthladd 80 dirprwy yr holl draffig (location / { proxy_pass http://localhost:3000; }) i ap backend yn lle gwasanaethu.well-knownoddi ar ddisg.
Dau atgyweiriad ar unwaith ar gyfer torri HTTP-01 dilysu¶
Atgyweiriad 1: Ychwanegwch flaenoriaeth uchel bwrpasol /.well-known/acme-challenge/ bloc yn Nginx (Port 80)¶
Sicrhewch fod eich porthladd 80 bloc i mewn /etc/nginx/sites-enabled/ yn gwasanaethu tocynnau ACME yn uniongyrchol o /var/www/letsencrypt cyn unrhyw return 301 https://... neu proxy_pass cyfarwyddeb:
server {
listen 80;
listen [::]:80;
server_name example.com www.example.com;
location ^~ /.well-known/acme-challenge/ {
default_type "text/plain";
root /var/www/letsencrypt;
allow all;
}
location / {
return 301 https://$host$request_uri;
}
}
sudo mkdir -p /var/www/letsencrypt/.well-known/acme-challenge
sudo nginx -t && sudo systemctl reload nginx
sudo certbot certonly --webroot -w /var/www/letsencrypt -d example.com -d www.example.com
Atgyweiriad 2: Ffordd Osgoi Port 80 a gweinyddwyr gwe yn gyfan gwbl gyda llawlyfr DNS-01 (TXT) her¶
Os yw porthladd 80 wedi'i rwystro gan ISP/wal dân i fyny'r afon neu os na all eich cydbwysydd llwyth lwybro .well-known i nodau backend lluosog, dilyswch trwy DNS mewn 2 funud:
Please deploy a DNS TXT record under the name: _acme-challenge.example.com with the following value: XyZ123...
1. Agorwch eich consol DNS a chreu'r TXT cofnod _acme-challenge gyda a 60 ail TTL.
2. Arhoswch a gwiriwch mewn ail ffenestr derfynell cyn pwyso Enter:
3. Unwaith dig yn argraffu eich union linyn tocyn, pwyswch Enter yn Certbot. Ysgrifennir at eich tystysgrif a'ch allwedd breifat /etc/letsencrypt/live/example.com/ ar unwaith. * (Ar ôl i'r toriad gael ei ddatrys, gosodwch yr ategyn DNS awtomataidd fel python3-certbot-dns-cloudflare neu python3-certbot-dns-route53 felly nid oes angen adnewyddu â llaw yn y dyfodol TXT mynediad.)*
Cam 6: Gwirio ôl-adferiad (Cadwyn Ganolradd, Stapling OCSP, a CDN Purge)¶
Camgymeriad cyffredin ar ôl amnewid tystysgrif brys yw gosod cert.pem (y dystysgrif dail yn unig) yn lle fullchain.pem (y dystysgrif dail + tystysgrif canolradd CA). Porwyr bwrdd gwaith (Chrome, Firefox) yn aml yn cuddio tystysgrif ganolradd goll trwy AIA (Authority Information Access) mynd ar drywydd neu cached canolradd, tra curl, Python, OpenSSL, apps Android, a bachau gwe Stripe / Twilio yn methu ar unwaith unable to verify the first certificate (SSL certificate problem: unable to get local issuer certificate).
- Gwiriwch fod eich gweinydd yn anfon y Gadwyn Ganolradd gyflawn (
fullchain.pem): Rhedeg:Rhaid i chi weld o leiaf dwy lefel (echo | openssl s_client -servername example.com -connect example.com:443 2>/dev/null | grep -E "Verify return code|depth="depth=0dy barth adepth=1y CA canolradd megisLet's Encrypt E5/R11neuZeroSSL RSA Domain Secure Site CA) aVerify return code: 0 (ok). Os gwelwchVerify return code: 21 (unable to verify the first certificate), newidiwch eich cyfluniad gweinydd gwe ocert.pemifullchain.pem. - Clirio storfa hen OCSP Stapling yn Nginx / Apache:
Os
ssl_stapling on;yn cael ei alluogi, ail-lwytho'r gweinydd gwe a gwirioopenssl s_client -servername example.com -connect example.com:443 -status 2>/dev/null | grep -A 15 "OCSP response". - ** Ffurfweddu monitro darfodiad SSL aml-haen (gwiriad TCP Allanol + Prometheus
blackbox_exporter)**: Peidiwch byth â dibynnu ar nodiadau atgoffa e-bost yn unig (e-byst atgoffa diwedd dod i ben Let's Encrypt yn 2025). Monitro'r soced porthladd byw 443 yn allanol (probe_ssl_earliest_cert_expiry - time() < 86400 * 14) a gosod gwiriad cron dyddiol ymlaensudo certbot renew --dry-run.
Rhifau brys rhanbarthol a phrotocolau asiantaethau¶
Er bod tystysgrif TLS sydd wedi dod i ben fel arfer yn cael ei datrys gan dimau peirianneg, gall toriad tystysgrif sy'n torri pyrth gofal iechyd, bachau gwe anfon brys, dilysu bancio, neu seilwaith cyhoeddus y llywodraeth ysgogi llifoedd gwaith digwyddiadau rheoleiddiol:
- Unol Daleithiau a Chanada:
- Diogelwch Bywyd / Dioddefaint Clinigol / Dosbarthu: Deialu
911os bydd methiant tystysgrif TLS yn torri i ffwrdd telemetreg claf, e-rhagnodi, neu gyfathrebu anfon brys. - Asiantaeth Seiberddiogelwch a Seilwaith (
CISA) (UD): Dylai asiantaethau sifil ffederal o dan Cyfarwyddeb Weithredol Rhwymo CISA (BOD) 18-01 a gweithredwyr seilwaith hanfodol sy'n profi cyhoeddi tystysgrif heb awdurdod (cyfaddawd CA neu herwgipio BGP/DNS) adrodd i1-844-Say-CISA(1-844-729-2472) neucisa.gov/report. - Canolfan Seiberddiogelwch Canada: Cysylltwch
1-833-CYBER-88(1-833-292-3788). - Deyrnas Unedig:
- Gwasanaethau Argyfwng: Deialu
999os bydd toriad TLS yn effeithio ar systemau clinigol hanfodol y GIG neu ddiogelwch bywyd. - Canolfan Seiberddiogelwch Genedlaethol (
NCSC): Os byddwch yn darganfod tystysgrif anawdurdodedig a gyhoeddwyd ar gyfer eich parth yn Tryloywder Tystysgrif (crt.sh) logiau sy'n nodi herwgipio DNS, adroddwch drwyncsc.gov.uk. - Undeb Ewropeaidd:
- Gwasanaethau Argyfwng: Deialu
112ar draws holl aelod-wladwriaethau’r UE. - Tystysgrifau Dilysu Gwefan Cymwys Cyfarwyddeb NIS2 a eIDAS (
QWACs): Rhaid i endidau hanfodol a phwysig o dan Gyfarwyddeb NIS2 sy’n profi cyfnod hir o ddiffyg argaeledd neu allweddi PKI dan fygythiad hysbysu eu CSIRT cenedlaethol o fewn 24 awr. - Awstralia a Seland Newydd:
- Gwasanaethau Argyfwng: Deialu
000yn Awstralia neu111yn Seland Newydd; cysylltwch â ACSC (1300 CYBER1) ar gyfer digwyddiadau seilwaith. - India ac Asia-Môr Tawel:
- India (
CERT-In/ Rheolwr Awdurdodau ArdystioCCA): deialwch112ar gyfer ymateb brys; adrodd am gyfaddawd IEC neu doriadau seilwaith sylweddol iincident@cert-in.org.ino fewn 6 awr.
Cwestiynau cyffredin¶
Pam na allaf i neu fy defnyddwyr glicio "Uwch -> Ymlaen i'r safle (anniogel)" yn Chrome neu Safari yn ystod y cyfnod hwn?¶
Pan fydd eich parth yn anfon y Strict-Trafnidiaeth-Diogelwch (HSTS) Pennawd HTTP - neu'n defnyddio parth lefel uchaf fel .dev, .ap, .tudalen, neu .banc sydd wedi'i god caled i mewn i'r porwr HSTS Preload List - Mae RFC 6797 yn ei gwneud yn ofynnol i'r porwr drin unrhyw dystysgrif sydd wedi dod i ben, wedi'i hunan-lofnodi neu heb ei chyfateb fel gwall angheuol na ellir ei adennill. Mae'r porwr yn dileu'r botwm ffordd osgoi "Ewch ymlaen beth bynnag" yn fwriadol i atal ymosodwyr gweithredol Dyn-yn-y-Canol (MitM) rhag twyllo defnyddwyr i glicio trwy dystysgrif ffug. Er y gall datblygwr ar bwrdd gwaith Chrome deipio'r dilyniant bysellfwrdd cudd mae hyn yn anniogel yn uniongyrchol ar y sgrin gwall i'w osgoi'n lleol i'w brofi, ni all defnyddwyr go iawn; rhaid i chi osod tystysgrif ddilys ar borth 443.
Peidiodd Let's Encrypt ag anfon e-byst rhybudd dod i ben a daeth fy nhystysgrif i ben heb rybudd - pam y digwyddodd hynny?¶
Ymddeolodd Let's Encrypt ei wasanaeth e-bost hysbysu dod i ben yn swyddogol yng nghanol 2025 i leihau gorbenion cadw data ac oherwydd y dylai setiau ACME awtomataidd fonitro iechyd adnewyddu yn uniongyrchol. Er mwyn atal syrpreis yn y dyfodol, rhaid i chi fonitro stamp amser dod i ben ysgwyd llaw gwirioneddol TLS dros y rhwydwaith gan ddefnyddio monitor uptime allanol (fel Prometheus blackbox_allforiwr, Uptime Kuma, Gwell Stack, neu wiriadau Datadog Synthetic TLS) rhybuddio ar 21 diwrnod, 14 diwrnod, a 7 diwrnod cyn nidAr ol.
Pam mae fy ngwefan yn gweithio'n iawn yn Chrome a Firefox ar fy ngliniadur, ond yn methu ar ffonau Android, curl, a webhooks Stripe ar ôl i mi ddiweddaru'r dystysgrif?¶
Rydych wedi ffurfweddu eich gweinydd gwe (tystysgrif ssl_ yn Nginx neu SSLCertificateFile yn Apache) i bwyntio at cert.pem (y dystysgrif dail yn unig) yn lle llawnchain.pem (y dystysgrif ddeilen wedi'i bwndelu gyda'r dystysgrif CA Canolradd). Mae porwyr bwrdd gwaith fel Chrome a Firefox yn lawrlwytho tystysgrifau canolradd coll yn y cefndir yn awtomatig gan ddefnyddio'r ffeil Mynediad at Wybodaeth yr Awdurdod (AIA) URL y tu mewn i'ch tystysgrif dail, gan guddio camgyfluniad eich gweinydd. Fodd bynnag, cyrl, Nid yw OpenSSL, dilysydd ymddiriedolaeth system Android, Python, a gweinyddwyr gwe-ook yn perfformio ar drywydd AIA ac yn gwrthod y cysylltiad â methu cael tystysgrif cyhoeddwr lleol. Pwyntiwch eich ffurfwedd ato llawnchain.pem ac ail-lwythwch eich gweinydd.
Sut mae gwirio a roddodd haciwr neu weinyddwr twyllodrus dystysgrif SSL anawdurdodedig ar gyfer fy mharth?¶
Mae'n ofynnol i bob Awdurdod Tystysgrif y mae'r cyhoedd yn ymddiried ynddo gofnodi pob tystysgrif a gyhoeddir i'r cyhoedd Logiau Tryloywder Tystysgrif (CT). (RFC 6962) cyn y bydd porwyr yn ymddiried ynddo. Agor https://crt.sh/?q=%25.yourdomain.com neu Fonitor Tryloywder Tystysgrif Cloudflare i weld pob tystysgrif a roddwyd erioed ar gyfer eich parth a'i is-barthau. Os gwelwch dystysgrif a gyhoeddwyd gan CA anghyfarwydd na wnaethoch ei hawdurdodi, archwiliwch eich cofrestrydd DNS a'ch parth DNS awdurdodol ar unwaith am addasiadau anawdurdodedig, dirymwch y dystysgrif twyllodrus gyda'r CA dyroddi, a chlowch eich DNS i lawr gyda CAA cofnodion (`0 issue "letsencrypt.org"`).
Beth os yw fy nghlwstwr Kubernetes cert-manager methu ag adnewyddu ein tystysgrif Ingress ac mae'r Gorchymyn yn sownd Pending?¶
Rhedeg kubectl cael trefn, her -A ac yna kubectl disgrifio her . Yn 90 y cant o Kubernetes tystysgrif-reolwr toriadau, y cm-acme-http-datryswr-* mae pod dros dro yn rhedeg, ond naill ai (1) mae gan yr adnodd Ingress anodiad dosbarth mynediad hen ffasiwn felly nid yw'r llwybr datryswr byth yn gysylltiedig â'ch cydbwysedd llwyth, (2) a Kubernetes Polisi Rhwydwaith yn rhwystro traffig sy'n dod i mewn i'r pod datryswr ar borthladd 8089, neu (3) mae problem DNS pin gwallt/hollti-gorwel yn atal tystysgrif-reolwrhunan-wiriad mewnol rhag cyrraedd eich IP cydbwysedd llwyth cyhoeddus (gellir ei drwsio trwy basio --dns01-recursive-nameservers=8.8.8.8:53,1.1.1.1:53 i'r tystysgrif-reolwr args lleoli).
Ga i gopïo fy /etc/letsencrypt/ ffolder i weinydd newydd yn ystod ymfudiad brys yn lle ail-gyhoeddi?¶
Oes. Os bu farw eich prif weinydd a'ch bod yn mudo i weinydd newydd tra bod y gyfradd wedi'i chyfyngu gan Let's Encrypt, cadwch ddolennau syml wrth gopïo /etc/letsencrypt/ defnyddio tar -czpf letsencrypt_backup.tar.gz /etc/letsencrypt (Peidiwch byth â defnyddio plaen sgp -r, sy'n troi symlinks i mewn /etc/letsencrypt/byw/ i mewn i ffeiliau statig dyblyg ac yn torri adnewyddiadau yn y dyfodol). Echdynnu'r archif hwnnw i'r gweinydd newydd (`sudo tar -xzpf letsencrypt_backup.tar.gz -C /`), pwyntiwch Nginx/Apache at `/etc/letsencrypt/live/domain/fullchain.pem`, a bydd eich tystysgrif bresennol yn gweithio ar unwaith ar y cyfeiriad IP newydd.
Canllawiau cysylltiedig¶
- Herwgipio enw parth, DNS sydd wedi dod i ben, a meddiannu gwefan
- Disg gweinydd 100% yn llawn (0 beit am ddim): cronfa ddata ac adferiad gofod sero
- Cloi gweinyddwr parth arferol Google Workspace neu Microsoft 365 ac achub DNS TXT
- Argyfwng gwe-letya, mudo, ac adfer copi wrth gefn
- Herwgipio DNS, ad-drefnu llwybrydd ISP WAN, a spoofing porth caeth
- Rhifau brys yn ôl gwlad
Ffynonellau a chanllawiau swyddogol¶
- Tasglu Peirianneg Rhyngrwyd (
IETF): * RFC 8555 (Amgylchedd Rheoli Tystysgrif Awtomatig / ACME), RFC 8659 (Awdurdodiad Awdurdod Ardystio DNS / CAA), a RFC 6797 (HTTP Strict Transport Security / HSTS)*. - Sefydliad Cenedlaethol Safonau a Thechnoleg (
NIST) (Unol Daleithiau): Cyhoeddiad Arbennig 800-52 Dat. 2: Canllawiau ar gyfer Dethol, Ffurfweddu, a Defnyddio Gweithrediadau Diogelwch Haenau Trafnidiaeth (TLS) & SP 1800-16: Sicrhau Trafodion Gwe: Rheoli Tystysgrif Gweinyddwr TLS. - Grŵp Ymchwil Diogelwch Rhyngrwyd (
ISRG/ Gadewch i ni Amgryptio Dogfennaeth Swyddogol): Cyfeirnod Terfynau Cyfradd, Rheolau Tystysgrif Dyblyg, a Datrys Problemau Her ACME. - Asiantaeth Diogelwch Seiberddiogelwch a Seilwaith (
CISA) (Unol Daleithiau): Cyfarwyddeb Weithredol Rhwymo 18-01: Gwella Diogelwch E-bost a'r We (Canllaw Gweithredu HTTPS a HSTS). - Canolfan Seiberddiogelwch Genedlaethol (
NCSC) (Y Deyrnas Unedig): Defnyddio TLS i Ddiogelu Data'n Berffaith Wrth Symud a Chanllawiau Monitro Tryloywder Tystysgrif.