Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
なかなか楽にならないSSL/TLS証明書の話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Tatsuro Shibamura
PRO
October 26, 2018
Technology
1.9k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
なかなか楽にならないSSL/TLS証明書の話
Tatsuro Shibamura
PRO
October 26, 2018
More Decks by Tatsuro Shibamura
See All by Tatsuro Shibamura
AI Agent を本番環境へ―― Microsoft Foundry × Azure Serverless で作る Enterprise-Ready な基盤
shibayan
PRO
2
1.4k
Azure Cosmos DB パフォーマンス最適化入門 - 設計・開発・運用の実践テクニック
shibayan
PRO
0
600
Azure Serverless のパフォーマンスとコストを 最適化
shibayan
PRO
0
20
Microsoft Azure で実現する最新クラウドアーキテクチャ
shibayan
PRO
0
27
Hack Azure! #5 - Geek of Azure Serverless
shibayan
PRO
0
140
.NET Conf 2020 Online - .NET 5 リリース記念パーティートーク
shibayan
PRO
0
10k
Terraform Provider for Azure に貢献してみた話
shibayan
PRO
0
670
Azure Functions と SendGrid の良い関係
shibayan
PRO
0
1.4k
Azure Serverless を活用したリアルタイム Web のすべて
shibayan
PRO
1
3.1k
Other Decks in Technology
See All in Technology
2026-09-18 gotanda.sre Terraformで複数環境作ったり、複数Stateに分割したりそれとTerragrunt / Terraform multi envs and multi states
masasuzu
3
620
新機種発売前に見直そう!端末移行で再ログインが要るアプリ・要らないアプリは何が違うのか 〜シームレスに再開できる設計と実装〜
zozotech
PRO
0
220
データ界隈LT祭 第1回LT登壇
taromatsui_cccmkhd
2
1.5k
登壇の自信を奪う3匹のオバケ / 3 Ghosts That Rob You of Your Confidence in Public Speaking
pauli
9
1k
AI coding 整合正規方法
philipz
0
370
HHKBエバンジェリストになる方法
941
0
110
山手線を徒歩で一周してわかった、 位置情報アプリは「足」が最強のデバッガー
hinakko
0
170
ADKで始める業務改善 - AIエージェント開発時の考えと設計
harappa80
2
240
Railsのように考える: See through the Master
snoozer05
PRO
4
1.2k
SREは、MCPとAutopilotをこう使え!
kazumax55
3
910
アクセスキーこわい やめかたと漏らさない工夫
sassssan68
1
500
AgentCore Runtime上にAgentic Coding基盤を構築・展開する際の設計ポイントと限界点 / Design considerations and limitations when building an agentic coding platform on AgentCore Runtime
har1101
5
480
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Between Models and Reality
mayunak
4
460
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
How to Ace a Technical Interview
jacobian
281
24k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
460
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
Making Projects Easy
brettharned
120
6.8k
Code Reviewing Like a Champion
maltzj
528
40k
Building a Scalable Design System with Sketch
lauravandoore
464
34k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
550
Transcript
なかなか楽にならない 証明書の話 @shibayan NoOps Meetup Tokyo #2 SSL/TLS
はじめに • @shibayan • https://shibayan.jp/ • Microsoft MVP for Azure
• 最近はプロ無職
No "Uncomfortable" Ops • SSL/TLS 証明書の管理、凄くしんどくないですか? • 特殊な知識は必要ないので、割と誰でもできる • 12
ヵ月に 1 回ぐらいの作業 • 認証局からのメールで期限を思い出したり • スパムフォルダに入ったりして気が付かないことも • 非常に重要で、簡単な作業なのに、自動化があまりされてない • と感じています、個人的には
証明書発行の流れ (DV) • 認証局に作成した CSR を投げる • ドメインの所有を確認する • Whois
に登録されているメールアドレスにリンク送信 • 指定されたファイルをサーバーに置く • DNS で指定されたレコードを追加 • 証明書が発行される • 中間証明書と一緒にサーバーに配置したり、PFX にしたり
自動化されない理由 • 地味に自動化が難しい手順ばかり • CSR の作成、ドメイン所有の確認、証明書と秘密鍵の配置 • 証明書の期限は大体 12 ヵ月
• 手動でも何とかなってしまう雰囲気が出ている • そもそも認証局が自動化前提の作りになっていない
更新を忘れてしまうと • 当然ながら SSL/TLS 通信は上手くいかない • 証明書の検証に失敗するのでブラウザが警告画面を表示 • ブラウザ以外の通信でも同様 •
最近は常時 SSL や HSTS の流れによって致命傷に • http から https へのリダイレクトは一般的 • HSTS を使ってると有効期間内は強制的に https になってしまう
更新に失敗した例 • Windows Azure、11時間にわたる全世界的なストレージ障害。 原因はSSL証明書の失効 • https://www.publickey1.jp/blog/13/windows_azure11ssl.html • 致命的な問題に発展するのに、なかなか楽にならない
楽にしようとする動き • クラウドベンダーが認証局を持つ • AWS Certificate Manager • 外部の認証局とパートナーシップを結んでいる •
Azure Key Vault / App Service Certificate • Let’s Encrypt を利用している / ACME プロトコルの導入 • GCP の Managed SSL など数多くの例
AWS Certificate Manager • ELB / ALB / CloudFront /
API Gateway で使える • パブリック向けの場合 • ワイルドカード証明書も発行できる • 自動的に証明書の更新を行ってくれる • ドメインが利用中かつ SSL/TLS で外部からアクセス可能な場合 • 無料で使える!
Azure Key Vault • DigiCert と GlobalSign と連携している • 予めサインアップしてアカウント情報を追加しておく
• 事前に指定したポリシーに従って更新してくれる • 自己署名証明書の発行も出来る • 使いどころは微妙… • 恐らく有料 • 試す気にすらならない…
App Service Certificate は特殊 • GoDaddy と連携している (なぜ…) • Azure
Portal から購入出来る • 証明書と秘密鍵は Key Vault に格納される • 自動で更新もしてくれる (自動で課金される) • もちろん有料 • 1 ドメイン $69.99 / ワイルドカード $299.99
Let’s Encrypt • ACME プロトコルに基づいた自動での証明書発行 • 公式の certbot を使って管理可能 •
v2 からはワイルドカードでの発行も出来る • HTTP か DNS を利用してドメイン所有の確認 • 最近のパブリッククラウドでは Managed DNS は当たり前の機能 • 無料で使える!
ACME プロトコルについて • 認証局が証明書発行に必要な機能を定義している • REST ベースのシンプルな API • クライアントも世の中にはたくさんあるので簡単
• 対象のドメイン全てに対して HTTP か DNS で確認される • 特殊なファイル、もしくは TXT レコードを書き込む
certbot が使えるケース • nginx や Apache を直接公開している場合に使える • Let’s Encrypt
公式クライアントなので安心 • 各クラウドベンダーの Managed DNS 対応 (ただし Azure 除く) • 基本は Linux のみサポート • Windows 向け PR も上がっているようだが…
余談 : キーの管理について • 最近のパブリッククラウドではキー管理 / HSM は以下略 • HSM
= Hardware Security Module • AWS は KMS / CloudHSM • GCP は Cloud KMS / Cloud HSM • Azure は Key Vault
所感 • AWS Certificate Manager が突出して便利 • EC2 に付けれないけど、普通は LB
/ CF 挟むでしょう • Let’s Encrypt 周りを面倒見てくれる Managed SSL 良さ • ワイルドカードのサポートが入れば嬉しい • Azure は無料で使える SSL 証明書がない • 何でだ… • しかも GoDaddy でも結構高い
Azure と Let’s Encrypt の歴史
我慢できず自分で作った人たち • Web Apps 専用 • https://github.com/sjkp/letsencrypt-siteextension • App Service
向け • https://github.com/shibayan/azure-appservice-letsencrypt • Key Vault 向け • https://github.com/shibayan/azure-keyvault-letsencrypt
まとめ • SSL/TLS 証明書の管理は自動化出来る • DV 証明書の場合に限る、OV / EV は難しそうではある
• AWS なら ACM、GCP なら Managed SSL を使う • 大体は LB にアタッチできれば問題ないでしょう • Azure はお金を払うか、コミュニティ作成の Issuer を使う • Let’s Encrypt に最大限の感謝を
おまけ : Key Vault は割と便利 • SSL/TLS 証明書に特化した機能あり • Azure
の各サービスは Key Vault に格納されたキーを使える • 今のところは App Service / Application Gateway / Front Door • ひっそりと CSR 作成機能もある • 認証局から貰った証明書をマージして完成形に出来る • キーは安全に格納したまま発行できる