Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Let's Let's Encrypt
Search
Kohei Ota
January 23, 2018
Technology
260
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Let's Let's Encrypt
Kohei Ota
January 23, 2018
More Decks by Kohei Ota
See All by Kohei Ota
CloudNative Meets WebAssembly: Exploring Wasm's Potential to Replace Containers
inductor
4
3.6k
The Cloud Native Chronicles: 10 Years of Community Growth Inside and Outside Japan
inductor
0
190
Cracking the KubeCon CfP
inductor
2
930
KubeCon Recap -Platform migration at Scale-
inductor
1
1.1k
コンテナビルド最新事情 2022年度版 / Container Build 2022
inductor
3
600
データベースとストレージのレプリケーション入門 / Intro-of-database-and-storage-replication
inductor
28
6.7k
KubeConのケーススタディから振り返る、Platform for Platforms のあり方と その実践 / Lessons from KubeCon case studies: Platform for Platforms and its practice
inductor
3
1k
オンラインの技術カンファレンスを安定稼働させるための取り組み / SRE activity for online conference platform
inductor
1
1.4k
Kubernetesネットワーキング初級者脱出ガイド / Kubernetes networking beginner's guide
inductor
23
7.8k
Other Decks in Technology
See All in Technology
認知負荷をGemini で溶かす — GKE 基盤「Orbit」における AI エージェントの実践
sansantech
PRO
1
320
攻撃と防御で学ぶAI時代のプロダクトセキュリティ演習
recruitengineers
PRO
9
3k
『三匹の子ぶた』から学ぶネットワークセキュリティの昔と今 / Network Security: Then and Now Through the Lens of The Three Little Pigs
nttcom
1
6.2k
FPGAが実現する遠方宇宙の高空間分解能天体撮影 -大型地上望遠鏡の視力を補正する「補償光学」とは?-
komei_mt
0
400
Webアクセシビリティ入門 2026
recruitengineers
PRO
3
650
猫付きpingコマンドを自作
uyuki234
0
250
まちスペース®とデジタルツインと「まちづくり」
hiro_ogi
0
130
ホームラボ紹介
y_sera15
0
200
【GCC2026】大規模言語モデルを活用した内製検索サービスの社内展開や業務活用
bandainamcostudios
PRO
0
210
LLM・AIエージェントシステムベストプラクティス
shibuiwilliam
6
1.4k
[ChatGPT Work LT]事務作業が苦手な人のための バックオフィスの「半」自動化
chimaki_iot
0
310
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
24k
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
370
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
67k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
960
Art, The Web, and Tiny UX
lynnandtonic
304
22k
First, design no harm
axbom
PRO
2
1.2k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
230
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
420
Why Our Code Smells
bkeepers
PRO
340
58k
Transcript
LET’S ENCRYPT ͬͯΈΑ͏ͷձ INDUCTOR@DISCORDΠϯϑϥษڧձ
ςΩετ ຊͷΞδΣϯμ ▸ ࣗݾհ ▸ SSLͷΈʹ͍ͭͯ ▸ Let's Encryptʹ͍ͭͯ ▸
SSLূ໌ॻΛઃஔ͢Δ ▸ αʔόʔͷίϯϑΟάΛ৮ͬͯΈΔ ▸ ϔομͱ͔ͷ֬ೝͷํ
ςΩετ ͓લͩΕͩΑ ▸ Wiki wo yonde kudasai ▸ https://wiki.infra-workshop.tech/user/inductor ▸
σʔληϯλʔͷதͰαʔόʔͱ͔NWͱ͔ΆͪΆͪͯͨ͠ ӡ༻ͷதͷਓΛͬͯͨ ▸ ࠓPHP/Android Javaͱ͔։ൃͯ͠Δ ▸ ࣍ͷࣄͱ͋ΔاۀͷDevOpsܥΠϯϑϥ෦ୂΛ༧ఆ
ςΩετ SSLͷ؆୯ͳ͘͠Έ ▸ ެ։伴ೝূͱڞ௨伴ೝূͷϋΠϒϦου ▸ ࠷ॳͷ伴ަ࣌ͷΈެ։伴Λ͏ ▸ ଓཱ֬ޙΫϥΠΞϯτ͝ͱʹಠཱͷڞ௨伴Ͱ௨৴͢Δ ▸ SSHͰΑ͘ΘΕΔ伴ೝূ
ެ։伴ೝূ ▸ ᷿ͰͷΞΫηϥϨʔγϣϯ ϒʔετͱͳΜͷؔ ͋Γ·ͤΜ
ςΩετ ެ։伴ೝূͱ ▸ ެ։伴ɾൿີ伴ͱݺΕΔ2छྨͷ伴Λͬͯ҉߸Խ௨৴Λߦ͏ํ๏ ▸ ެ։伴ɿΈΜͳʹ͢҉߸ԽΛ͔͚ΔͨΊͷ伴 ▸ ൿີ伴ɿαʔόʔ͚͕ͩ࣋ͭ෮߸Խ༻ͷ伴 ▸ ϦΫΤετ࣌ʹެ։伴Λड͚औͬͨΫϥΠΞϯτ͕ɺใΛެ։伴Ͱ҉߸Խ্ͨ͠Ͱαʔ
όʔʹૹ৴ˠαʔόʔଆൿີ伴ΛͬͯதΛݟΔ ▸ αʔόʔ্ʹ͋Δൿີ伴Ͱ͔͠த͕Θ͔Βͳ͍Αʂͱ͍͏Έ ▸ ϝϦοτɿͲͷϢʔβʔʹରͯ͠ಉ͡ެ։伴ΛͤΔͷͰɺ伴ͷཧָ͕ɻൿີ伴Λαʔ όʔ͔Β౪·Εͳ͍ݶΓ(ཧ্)҆શ ▸ σϝϦοτɿΫϥΠΞϯτଆͱαʔόʔଆͰҟͳΔ伴Λ͏ͨΊॲཧ͕ෳࡶɺ·ͨɺύ ϑΥʔϚϯεѱ͍
ςΩετ ڞ௨伴ೝূͱ ▸ ҉߸Խɾ෮߸Խʹಉ͡伴Λ༻͍Δ҉߸ํࣜ ▸ ΈΜͳͰಉ͡伴Λ͏ͱΈΜͳ͕σʔλΛݟΕ͍ͯͷͰɺ ී௨ΫϥΠΞϯτ͝ͱʹผʑͷ伴Λੜͯ͠ཧ͢Δ ▸ ϝϦοτɿ伴ͷछྨ͕1ͭͳͷͰܭࢉ͕͍ ▸
σϝϦοτɿΫϥΠΞϯτ͕૿͑Δຖʹ伴ͷ͕ଟ͘ͳΔͷ Ͱཧ͕େมɻ·ͨɺڞ௨伴Λ࠷ॳʹ͢ͱ͖ʹใ͕౪· Εͯ͠·͏ͱɺ෮߸͞Εͯ͠·͏ͷͰ͍
ςΩετ վΊͯɺSSLͷ؆୯ͳ͘͠Έ ▸ ެ։伴ೝূͱڞ௨伴ೝূͷϋΠϒϦου ▸ ࠷ॳͷ伴ަ࣌ͷΈެ։伴Λ͏(࠷ॳ͚ͩܭࢉ͕ͪΐ͍ॏ͍) ▸ ଓཱ֬ޙΫϥΠΞϯτ͝ͱʹಠཱͷڞ௨伴Ͱ௨৴͢Δ(͋ͱ·͠) ▸ SSHͰΑ͘ΘΕΔ伴ೝূ
ެ։伴ೝূ ▸ ᷿ͰͷΞΫηϥϨʔγϣϯ ϒʔετͱͳΜͷؔ ͋Γ·ͤΜ
ςΩετ WHAT IS LET’S ENCRYPT? ▸ Let's EncryptmozillaɺAkamaiɺCiscoɺGoogleɺ FacebookͳͲΛΛ͡Ίͱͨ͠େखITاۀͷࢧԉΛड͚ͯ 2014ʹઃ͞ΕͨϓϩδΣΫτͰɺݸਓͰ৴པ͞Εͨ
αʔόূ໌ॻΛແྉͰൃߦ͢Δ͜ͱ͕Ͱ͖Δ͓खܰαʔϏε Ͱ͢ɻ ▸ 2016ͷय़ΑΓਖ਼ࣜʹαʔϏε͕։࢝͠ɺओཁͳ࠷৽OSͰ ͋ΕඞཁͳύοέʔδͷಋೖඇৗʹεϜʔζʹߦ͏͜ ͱ͕Ͱ͖·͢ɻ
ςΩετ ແྉͰূ໌ॻशಘͰ͖Δͬͯʁ ▸ Ұൠతʹɺ৴པࡁΈͷSSLূ໌ॻΛऔಘ͢ΔͨΊʹຊਓ֬ೝ͕ඞཁͰ͢ɻ Let's encryptͰɺݸਓใΛΘͣҎԼ݅ͷͱͰূ໌ॻΛൃߦ͍ͯ͠·͢ɻ ▸ 1. DVূ໌ॻͷΈൃߦͰ͖Δɻ
͜Εɺॴࡏ֬ೝͳͲͷ৹ࠪΛؚΉOVূ໌ॻͳͲൃߦͰ͖ͳ͍͜ͱΛҙຯ͠· ͢ɻ ৴པੑͷ໘Ͱݴ͑ɺݸਓɾݕূ༻ͳͲɺ࠷ݶͷ༻్ʹ͏ͷ͕ݡ໌Ͱ͢ɻ ▸ 2. ূ໌ॻͷ༗ޮظݶ3ϲ݄ͷΈɻ ແྉͰ͋Δ͜ͱɺສ͕ҰͷࣄނͳͲΛ͙ͨΊʹ͜ͷظؒΛઃఆ͍ͯ͠Δͦ ͏Ͱ͢ɻ
ςΩετ ͰɺΊΜͲ͍͘͞ΜͰ͠ΐ͏ʁ ▸ ࠓͷͱ͜ΖϫΠϧυΧʔυʹରԠͯ͠ͳ͍ͷͰαϒυϝΠϯ͝ͱʹशಘ͕ඞཁͰ͢ (ෳαϒυϝΠϯͱ͔·ͱΊͯऔಘ͢ΔΦϓγϣϯ͋Γ·͢) ▸ ϫΠϧυΧʔυࠓͷ2݄ʹରԠ༧ఆͬͯެࣜͰॻ͍ͯ͋Γ·͕͢ɺ ͱͱ1݄͍ͬͯͬͯͨΜͰదʹظ͓͖ͯ͠·͠ΐ͏ ▸ ACMEϓϩτίϧͱ͍͏ূ໌ॻࣗಈൃߦͷϓϩτίϧΛ͏ͷͰɺίϚϯυҰൃͰҰॠͰऔಘ
Ͱ͖·͢ɻ ▸ ༷ΦʔϓϯͳͷͰɺίϚϯυΛࣗͰ࡞Γ͍ͨͬͯਓͰେৎʂ ▸ Apacheͱ͔nginxʹউखʹઃఆΛՃͯ͘͠ΕΔίϚϯυΦϓγϣϯ͋Γ·͕͢ɺݱࡏTLS SNIνϟϨϯδʹ੬ऑੑ͕ݟ͔͍ͭͬͯΔͨΊ࣮࣭͑·ͤΜɻ ▸ 3ϲ݄ͷظݶɺࣗಈߋ৽ʹ͢ΕΑ͍Ͱ͢ɻ
ςΩετ Δ͜ͱ(Ͳ͏ͤͩ͠HTTP/2ͱ͔ͬͱ͜) ▸ αʔόʔΛ༻ҙ͢Δ ▸ DNSͷAϨίʔυΛ͋ͯΔ ▸ certbotͰূ໌ॻΛऔಘ͢Δ ▸ αʔόʔͷઃఆʹॻ͖Ճ͑Δ
▸ ͓ΘΓ