Webサーバー向けのテストをしていると、代理証明書が必要となるケースが多いです。特に、インターネット上にあるサーバーに対しての通信テストとなると、それらのサーバー署名書をまず手に入れ、その内容を元に、代理証明書を作成する必要があります。
インターネット上にあるサーバーの証明書ですが、実は簡単に内容を取得することができます。パケットキャプチャ(TCP ダンプ)を取得するのです。
パケットキャプチャには、通信の全てが含まれています。当然、サーバー証明書も含まれます。このやり取りの証明書の部分を指定して、証明書だけを抜き出せば良いのです。
サーバ証明書の抜き出し方
まず、証明書を取得したいサーバーにアクセスをし、その通信をWiresharkを使ってパケットキャプチャします。
Server Hello が飛んできた後に、Certificateのやり取りが見えます。この中に証明書が入っています。上の画面キャプチャーの青色で反転させているパケットです。このパケットの中を見ていきます。
- Secure Sockets Layer
- TLSV1.2 Record Layer: Handshake Protocol : Certificate
- Handshake Protocol: Certificate
- Certificates (バイト数)
の順にクリックして、詳細を表示させます。
その中に、Certificate (id-atCommonName=ドメイン名)のパケットが見えます。
id-at-ConnomName=w.usabilla.com を取り出してみます。
そのパケットを選択し、右クリックメニューを表示させます。
メニューから、Export Selected Packet Bytes… をクリックします。
このパケットを、証明書として保存します。名前をつけて保存のウィンドウが表示されますので、ファイル名のところで名前を指定します。
この時のポイントは、拡張子を「.crt」にして保存することです。こうすることで、Windows 上からは証明書として認識されますので、ダブルクリックで中が見られるようになります。
証明書の内容を見てみる
名前をつけて保存した証明書ファイルを開いて、中をみてみましょう。
w.usabilla.com.crt の証明書を、駄ぬんるクリックして開いてみます。
発行社はAmazonなんですね。
「詳細」タブをクリックして、証明書の詳細も見てみましょう。
証明書の記載項目の一覧が表示されますので、「サブジェクト」をクリックしてみます。
CN: Common Name が表示されましたね。
次に、「サブジェクト代替名」をクリックしてみます。
SAN: Subject Alternative Name が表示されましたね。
証明書の中身が分かりましたので、これで代理証明書を作成することが可能です。自分でCA局のサーバーを建てて、そこでサインして発行するのも良いのですが、オンラインで簡単に証明書を発行できるサイトがあります。
これも使ってみてください。
関連する記事:
- Linux で iSCSI イニシエーター設定 (Ubuntu 編)
- Linux の Cron の基本的な使い方
- Server Name Indication (SNI) とは
- Udemy を自動翻訳する方法
- LPIC を学ぶ(1) lsof コマンドについて
- MS Azure を学ぶ(2)Azure Active Directory とオンプレ Active Directory の違い
- MS Azure を学ぶ (1) リソースグループの作成と管理
- MacOS の Time Machine がうざいので設定を変えたい
- AWSを学ぶ(25)VPCエンドポイントを理解しよう
- ESXi サーバーのデータストアとして QNAP を使う(iSCSI 編)
最近の記事:
- 列島を凍り付かせた未成年たちの凶行5~ 1988年・名古屋アベック殺人事件~第五話
- 列島を凍り付かせた未成年たちの凶行4~ 1988年・名古屋アベック殺人事件~第四話
- 列島を凍り付かせた未成年たちの凶行3~ 1988年・名古屋アベック殺人事件~第三話
- 列島を凍り付かせた未成年たちの凶行2~ 1988年・名古屋アベック殺人事件~第二話
- 列島を凍り付かせた未成年たちの凶行~ 1988年・名古屋アベック殺人事件~ 第一話
- 最近の推し新人アーティスト
- 1990年・ドラクエ Ⅳ 放火事件 ~ドラクエ熱で焼けた家~
- 目指せ!暴力団構成員 ~1973年・現役ヤクザが熱血指導!~ “暴力団組員養成塾”
- Linux で iSCSI イニシエーター設定 (Ubuntu 編)
- 1954年・日光参道で修学旅行生同士が乱闘 ~広島県立山陽高校vs.青森市立第一高校~