はじめに
前回は、Chrome ブラウザの独自証明書ストアにルート認証局(CA)証明書を登録し、その動作確認を行いました。
結果、ブラウザへの証明書の登録により、Windows/macOS/Linux 上の Chromium系 ブラウザから HTTPS テスト環境に警告表示なしでアクセスができるようになることを確認できました。
そこで、今回は、Chromium 系とは異なるブラウザの代表として、独自の証明書ストアを保持する Firefox ブラウザに登録を行い、その動作確認を行っていこうと思います。
下記では、代表して Linux 上の Firefox での登録方法を示します。
※ 筆者の環境の Windows/macOS の Firefox ブラウザにおいても、実際に登録を行って確認してみましたが、OS による違いはみられませんでした。また、登録完了後、ブラウザの警告表示も消え、問題なく動作することも確認できています。
※ ChromeOS には、Firefox の公式ビルドが存在しないため、今回確認を行っていません。
※ Windows/macOS/ChromeOS/Linux に関しては下記のものを使用して確認しています。
- Windows:Windows 11 Pro 25H2 26200.9457
- macOS : macOS Sequoia 15.7.3
- Linuxは、Arm64 版 Debian GNU/Linux 12 (bookworm)
※ Firefox ブラウザは、下記のものを使用して確認しています。
- Windows:バージョン 157.0(公式ビルド)(64 ビット)
- macOS:バージョン 157.0(公式ビルド)(64 ビット)
- Linux:バージョン 157.0(公式ビルド)(aarch64)
※ Chrome ブラウザは、下記のものを使用して確認しています。
- Windows:バージョン 155.0.8059.12(公式ビルド)(64 ビット)
- macOS:バージョン 153.0.8010.53(公式ビルド)(x86_64)
- Linux:バージョン 153.0.8010.52(公式ビルド)(arm64)
※ Chromium ブラウザは、下記のものを使用して確認しています。
- Windows:バージョン 157.0.8084.0(Developer Build) (64 ビット)
- macOS:バージョン 157.0.8085.0(Developer Build)(x86_64)
- Linux:バージョン 154.0.8037.92(公式ビルド)built on Debian GNU/Linux 12(bookworm)(arm64)
※ 使用するバージョンによっては、文言や手順に違いがでる可能性があります。
※ 端末へ転送するのは rootCA.pem のみです。認証局の秘密鍵である rootCA-key.pem は、絶対に転送・公開しないでください。
※ ルート認証局(CA)の証明書を HTTP / HTTPS サーバーから取得する方法は、自分が管理している開発用プライベートネットワーク内に限定した方が安全です。ダウンロード後はすみやかに、ルート認証局(CA)の証明書を public フォルダーから削除することをおすすめします。
1. Firefox ブラウザでのルート認証局(CA)の証明書の受取
Firefox ブラウザから HTTPS サーバーにアクセスしてルート認証局(CA)の証明書を取得します。
ブラウザを立ち上げ、URL 欄に 以下を入力:
https://192.168.10.108:3000/rootCA.pem
1-1. 警告画面の表示
警告画面が表示されます。画面下部の「詳細設定」をクリックします。
※ 本記事のスクリーンショットでは、操作する箇所を朱色の円で囲んで示しています。
1-2. 新たな警告画面の表示
新たな警告画面が表示されます。画面中央の「192.168.10.108にアクセスする(安全ではありません)」をクリックします。
1-3. ルート認証局(CA)の証明書のダウンロード完了
rootCA.pem のダウンロードが完了した旨のポップアップ画面が表示されます。
2. Firefox ブラウザ にルート認証局(CA)を登録する
Firefox ブラウザ では、設定から呼び出せる「証明書マネージャ」からルート認証局(CA)の証明書を登録できます。
2-1. 設定を開く
右上の バーガーメニューをクリックします。その後、表示されたメニューから「設定」をクリックします。
2-2. プライバシーとセキュリティの設定を開く
新しく開かれた「設定」タブの左ペインから、「プライバシーとセキュリティ」をクリックします。
2-3. 接続とソフトウエアのセキュリティ詳細設定を開く
右ペインを下方向にスクロールし、「接続とソフトウエアのセキュリティ」の「詳細設定」をクリックします。
2-4. 証明書を管理を開く
右ペインを下方向にスクロールし、「証明書を管理」をクリックします。
2-5. 証明書のインポート
新しく開かれたポップアップ画面の「証明書マネージャ」で「認証局証明書」が選択されていることを確認し、下部の「インポート」ボタンをクリックします。
※ 証明書マネージャで、「認証局証明書」が選択されていない場合は、クリックして切り替えてください。
2-6. 証明書の選択
表示されたポップアップ画面で、ダウンロードした rootCA.pem ファイルを選択し、「Select」ボタンをクリックします。
※ このポップアップ画面は、OS 依存のファイル選択ダイアログ画面です。そのため、OS により異なります。画面に従って、今回ダウンロードしたファイルを選択してください。
2-7. 証明書の信頼
新たに信頼設定用のポップアップ画面が表示されます。「この証明書によるウェブサイトの識別を信頼する」のチェックボックスをクリックしてチェックマークが付加されることを確認後、「OK」ボタンをクリックします。
2-8. rootCAのインポート完了
ルート認証局(CA)の証明書が、「認証局証明書」に追加されていることを確認し、下部の「OK」ボタンをクリックして証明書マネージャのポップアップ画面を閉じます。
ここまでで、ルート認証局(CA)証明書の設定は完了です。
💡 Firefox ブラウザにおける証明書管理について
動作確認を行う前に、Firefox ブラウザにおいて、どのように証明書が管理されているかについて少し触れたいと思います。
Firefox ブラウザでは、下記の分類で証明書が管理されています。
- あなたの証明書
- 認証の決定
- 個人証明書
- サーバー証明書
- 認証局証明書
Chromium 系のブラウザに比べると、異なる分類になっています。
■ あなたの証明書
現在のユーザーの認証を受けるための証明書が保管されます。
ここには、Windows 版や macOS 版では、OS が管理する証明書ストアの個人証明書も表示されています。
インポートや削除が可能です。
※ OS が管理する証明書ストアの個人証明書も削除が可能ですが、ブラウザ再立ち上げにより、再読み込みされて再表示されます。完全に削除したい場合は、OS が管理する証明書ストアでの削除が必要です。
■ 認証の決定
ウェブサイトが現在のユーザーを識別するための証明書が保存されます。
インポートはできませんが、削除は可能です。
■ 個人証明書
他のユーザーを識別するための証明書が保管されます。
インポートや削除が可能です。
■ サーバー証明書
例外的に信頼する証明書が保管されます。ここに登録されたサイトは、アクセス時に、警告表示は消えませんが警告画面は表示されなくなります。
登録されるのは、サーバー証明書ですが、登録で指定できるのは、サイトのURLです。削除も可能です。
※ UI 上は『サーバー証明書』という名称ですが、実態は手動や警告画面で追加した『例外(Security Exception)』のリストです。
※ 警告画面表示後、今回の rootCA.pem のダウンロードのように、「上級者向け情報」から強制的にサイト表示に進んだ場合、そのサイトは、自動的にここに登録され、次回から警告画面が表示されなくなります。
■ 認証局証明書
認証局を識別するため以下の証明書が登録されています。インポートや削除が可能です。
それでは続いて、動作確認を行っていきます。
3. ブラウザで警告が表示されないことを確認
ブラウザにもどり、新しいタブを開き、URL 欄に 以下を入力:
https://192.168.10.108:3000/
警告画面や警告表示がなく、サイトが表示されることを確認します。
※ 筆者の環境では、証明書の登録後に新しいタブを開き直さないと、警告表示は消えませんでした。
今回のアクセス先は localhost ではなく 192.168.10.108 ですが、HTTPS接続によって Secure Context として扱われるため、Secure Context を必要とする OPFS も利用できます。
※ 使い方については、「データ保存技術/OPFS の動作確認(非同期操作)」を参照してください。
4. 他のブラウザに登録した証明書が影響していないかの確認
Firefox ブラウザから登録したルート認証局(CA)証明書が、他のブラウザに影響を与えていないかを Chrome と Chromium を使って確認します。
4-1. Chrome ブラウザを立ち上げ、URL 欄に 以下を入力:
https://192.168.10.108:3000/
Firefox ブラウザに登録したルート認証局(CA)証明書の影響を受けず、警告画面が表示されます。
※ 下記は、Linux 版の画面です。Windows 版と macOS 版でも同様の結果となりました。
ブラウザの証明書マネージャも確認しましたが、Firefox ブラウザに登録したルート認証局(CA)証明書は見当たりませんでした。
4-2. Chromium ブラウザを立ち上げ、URL 欄に 以下を入力:
https://192.168.10.108:3000/
Firefox ブラウザに登録したルート認証局(CA)証明書の影響を受けず、警告画面が表示されます。
※ 下記は、Linux 版の画面です。Windows 版と macOS 版でも同様の結果となりました。
ブラウザの証明書マネージャも確認しましたが、Firefox ブラウザに登録したルート認証局(CA)証明書は見当たりませんでした。
最後に、OS が管理する証明書ストアの確認も行いましたが、Firefox ブラウザから登録したルート認証局(CA)証明書は登録されていませんでした。
まとめ
- Firefox ブラウザから認証局証明書へルート認証局(CA)証明書を登録しても、HTTPS テスト環境への接続で警告画面を表示させなくすることが可能となる。
- Firefox ブラウザから登録した場合、その証明書の影響範囲は、Firefox ブラウザのみに限定される。
- Firefox ブラウザから登録した場合、その証明書は、OS が管理する証明書ストアとは別に、Firefox ブラウザで独自に管理される。