ProHoster > Blog > Rianachd > Automation de Let's Encrypt stiùireadh teisteanais SSL a’ cleachdadh dùbhlan DNS-01 agus AWS
Automation de Let's Encrypt stiùireadh teisteanais SSL a’ cleachdadh dùbhlan DNS-01 agus AWS
Tha am post a’ toirt cunntas air ceumannan gus riaghladh theisteanasan SSL a dhèanamh fèin-ghluasadach bho Leig leinn CA a chrioptachadh a ’cleachdadh DNS-01 dùbhlan и AWS.
acme-dns-slighe53 na inneal a leigeas leinn am feart seo a bhuileachadh. Faodaidh e obrachadh le teisteanasan SSL bho Let's Encrypt, sàbhail iad ann am Manaidsear Teisteanas Amazon, cleachd an Route53 API gus an dùbhlan DNS-01 a chuir an gnìomh, agus, mu dheireadh, cuir fios gu SNS. ANNS acme-dns-slighe53 Tha comas-gnìomh togte ann cuideachd airson a chleachdadh taobh a-staigh AWS Lambda, agus is e seo a tha a dhìth oirnn.
Tha an artaigil seo air a roinn ann an 4 earrannan:
cruthachadh faidhle zip;
cruthachadh dreuchd IAM;
cruthachadh gnìomh lambda a bhios a’ ruith acme-dns-slighe53;
cruthachadh timer CloudWatch a bhrosnaicheas gnìomh 2 uair san latha;
Tha acme-dns-route53 sgrìobhte ann an GoLang agus a’ toirt taic do dhreach gun a bhith nas ìsle na 1.9.
Feumaidh sinn faidhle zip a chruthachadh le binary acme-dns-route53 a-staigh. Gus seo a dhèanamh feumaidh tu a stàladh acme-dns-route53 bho stòr GitHub a’ cleachdadh an àithne go install:
$ env GOOS=linux GOARCH=amd64 go install github.com/begmaroman/acme-dns-route53
Tha am binary air a chuir a-steach $GOPATH/bin eòlaire. Thoir an aire gun do shònraich sinn dà àrainneachd atharraichte rè an stàlaidh: GOOS=linux и GOARCH=amd64. Bidh iad ga dhèanamh soilleir don neach-cruinneachaidh Go gum feum e binary a chruthachadh a tha freagarrach airson ailtireachd Linux OS agus amd64 - is e seo a tha a’ ruith air AWS.
Tha AWS an dùil gum bi am prògram againn air a chleachdadh ann am faidhle zip, mar sin cruthaichidh sinn acme-dns-route53.zip tasglann anns am bi am binary a chaidh a chuir a-steach às ùr:
$ zip -j ~/acme-dns-route53.zip $GOPATH/bin/acme-dns-route53
Note: Bu chòir am binary a bhith ann am freumh an tasglann zip. Airson seo bidh sinn a 'cleachdadh -j bratach.
A-nis tha am far-ainm zip againn deiseil airson a chleachdadh, chan eil air fhàgail ach àite a chruthachadh leis na còraichean riatanach.
A’ cruthachadh dreuchd IAM
Feumaidh sinn dreuchd IAM a stèidheachadh leis na còraichean a dh’ fheumas ar lambda nuair a thèid a chur gu bàs.
Canaidh sinn am poileasaidh seo lambda-acme-dns-route53-executor agus sa bhad a thoirt dhi prìomh dhreuchd AWSLambdaBasicExecutionRole. Leigidh seo leis an lambda againn logaichean a ruith agus a sgrìobhadh gu seirbheis AWS CloudWatch.
An toiseach, cruthaichidh sinn faidhle JSON a bheir cunntas air ar còraichean. Leigidh seo gu bunaiteach le seirbheisean lambda an dreuchd a chleachdadh lambda-acme-dns-route53-executor:
A-nis leig leinn an àithne a ruith aws iam create-role gus dreuchd a chruthachadh:
$ aws iam create-role --role-name lambda-acme-dns-route53-executor
--assume-role-policy-document ~/lambda-acme-dns-route53-executor-policy.json
Note: cuimhnich air a’ phoileasaidh ARN (Ainm Goireas Amazon) - bidh feum againn air anns na h-ath cheumannan.
Dleastanas lambda-acme-dns-route53-executor chruthachadh, a-nis feumaidh sinn ceadan a shònrachadh air a shon. Is e an dòigh as fhasa seo a dhèanamh an àithne a chleachdadh aws iam attach-role-policy, a 'dol seachad air poileasaidh ARN AWSLambdaBasicExecutionRole mar a leanas:
$ aws iam attach-role-policy --role-name lambda-acme-dns-route53-executor
--policy-arn arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole
Note: gheibhear liosta le poileasaidhean eile an seo.
A 'cruthachadh gnìomh lambda a tha a' ruith acme-dns-slighe53
Hooray! A-nis faodaidh tu ar gnìomh a chuir gu AWS a’ cleachdadh an àithne aws lambda create-function. Feumaidh an lambda a bhith air a rèiteachadh leis na caochladairean àrainneachd a leanas:
AWS_LAMBDA - ga dhèanamh soilleir acme-dns-slighe53 tha an cur gu bàs sin a’ tachairt taobh a-staigh AWS Lambda.
DOMAINS - liosta de raointean air an sgaradh le cromagan.