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 EncryptでSSL証明書を自動更新
Search
yukitkns
September 01, 2024
56
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Let's EncryptでSSL証明書を自動更新
yukitkns
September 01, 2024
More Decks by yukitkns
See All by yukitkns
OCI Stack Monitoringでリソース監視をする
yukitkns
1
710
WAFログの推奨ルールを確認する
yukitkns
0
57
OCI ロギングでカスタム・ログを収集する
yukitkns
1
800
多段接続について
yukitkns
0
72
「寺子屋Oracle Cloud:Win Story研究会『ハイブリッドクラウド・マルチクラウド』」に参加してみて
yukitkns
1
150
開発未経験者がはじめて DevOpsを触ってみた
yukitkns
0
180
「寺子屋Oracle Cloud:Win Story研究会『OCVSのリフト案件』」に参加してみて
yukitkns
0
170
ここがスゴいよ、OCM!!
yukitkns
1
170
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
580
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
130
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
610
How to build a perfect <img>
jonoalderson
1
5.6k
Raft: Consensus for Rubyists
vanstee
141
7.5k
Designing for Timeless Needs
cassininazir
1
250
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
180
WCS-LA-2024
lcolladotor
0
630
KATA
mclloyd
PRO
35
15k
Transcript
Let’s EncryptでSSL証明 書を自動更新
今回やりたいこと • Let’s Encrypt でSSL証明書を取得 • その後に自動更新ができるかどうか確認を行う
Let’s Encrypt とは? • 2014年に作られた非営利のルート認証局 • ACME(Automatic Certificate Management Environment)プロトコルを使用したSSL
証明書の自動発行/更新システムを運営 • 誰でも無料でSSL証明書を作ることができるのが最大の特徴 →運用費用は寄付によって賄われているから、無料で取得できることが可能 • 3億のWebサイトにSSL証明書を発行(2022年末時点)
Let’s Encrypt の認証方法について • Let’s Encrypt は Certbot を使用してSSL証明書を取得 Certbot…SSL証明書を発行・管理するためのオープンソースのツール
• Let’s Encrypt から証明書を取得する際には、ACME 標準で定義された「チャレン ジ」を使用。 • 証明書が証明しようとしているドメイン名があなたの管理下にあることを検証。 • チャレンジには2種類の認証方法がある。 • HTTPチャレンジ • DNSチャレンジ
HTTPチャレンジ • 現在最も多く使われているチャレンジ • Let’s Encrypt は ACME クライアントにトークンを発行、 ACME
クライアントは ウェブサーバー上のhttp://<YOUR_DOMAIN>/.well-known/acme- challenge/<TOKEN>という場所に1つのファイルを設置 • 自動更新の場合は、明示的に配置する必要はなく、トークンを自動更新してくれる • ACME クライアントがLet’s Encrypt にファイルが準備できたことを伝えると、Let’s Encrypt はそのファイルを取得 • 正当なレスポンスが得られた場合、検証は成功したとみなされ、証明書の発行に進 むことができる。
DNSチャレンジ • ドメイン名が登録されている DNS があなたの管理下であることを証明するために は、ドメイン名の TXT レコードに特定の値を設定する必要がある。 • Let’s
Encrypt は ACME クライアントにトークンを提供し、クライアントは、この トークンとあなたのアカウントの鍵を使用して TXT レコードを生成。 • そのレコードを DNS の_acme-challenge.<YOUR_DOMAIN>に設定。 • その後、Let’s Encrypt が DNS システムにそのレコードを照会し、正しい値と一致 すれば、証明書の発行が可能となる。
両チャレンジの利点 • HTTPチャレンジ • 簡単に証明書を取得できる • DNSチャレンジ • ワイルドカード証明書を発行可能
SSL証明書取得の流れ ① サーバ内で秘密鍵を作り、秘密鍵から CSR(Certificate Service Request)を作成。 ② 認証局へサーバ証明書の発行申請としてCSRを 送付。 ③
各種認証後、秘密鍵で署名したサーバ証明書 を作成。 ④ 申請者へサーバ証明書として送付。
Let’s EncryptでSSL証明書を発行するまでの手 順 1. Snapのインストール 2. Certbotのインストール 3. SSL証明書を作成 4.
HTTPSの有効化 5. SSL証明書の自動更新 ※今回はApacheを使用。 ここからは先日私が投稿したQiita記事の内容を元に説明
Let’s Encrypt 特有の仕様について (チャレンジの種類は問わず) • 同一コモンネームの制限 同一コモンネームの発行可能数が週5枚まで • 登録ドメイン数制限 1つのドメインにつき週50枚までの制限
ここでのドメインはFQDNではなくルートドメイン 例えば、sub.example.jp と sub2.example.jp と sub3.example.jp の SSL証明書を発行する場合、カウントは3となる
最後に • 今回投稿した記事は以下のURLとなっています。 「Let‘s Encrypt で SSL証明書を自動更新」 https://qiita.com/yukitkns/items/fb49bbd6f9cc289ecaac • 以前Cloudii
の方にもLet’s Encrypt についてを取り上げています ので合わせて確認お願いします。 「DNS-OCIプラグインを使ったSSL証明書の取得方法につい て」 https://cloudii.jp/news/blog/oracle-cloud/dns-oci-ssl/