6と7のリビジョン間の差分
2016-05-03 02:48:50時点のリビジョン6
サイズ: 3693
コメント:
2016-05-03 15:26:52時点のリビジョン7
サイズ: 3814
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 33: 行 33:
※`<()`というイディオム(実行結果をテンポラリファイル名で渡してくれる)は zsh/bash 拡張なので、シェルスクリプト(sh/ash/ksh)中では使わないこと。 ※`<(`''command''`)`というイディオム(実行結果をテンポラリファイル名で渡してくれる)は zsh/bash 拡張なので、シェルスクリプト(sh/ash/ksh)中では使わないこと。
行 68: 行 68:
※`<()`というイディオム(実行結果をテンポラリファイル名で渡してくれる)は zsh/bash 拡張なので、シェルスクリプト(sh/ash/ksh)中では使わないこと。 ※`<(`''command`)`というイディオム(実行結果をテンポラリファイル名で渡してくれる)は zsh/bash 拡張なので、シェルスクリプト(sh/ash/ksh)中では使わないこと。
行 74: 行 74:
 * [[https://wiki.openssl.org/index.php/Manual:X509%281%29|openssl x509(1)のマニュアル]]

OpenSSL

よくあるOpenSSLの使い方を紹介する。OpenSSLはバージョン毎でできることが違うので注意。違いが顕著なところについてはOS毎に解説する。

SSL証明書発行関連について別項目で紹介する。

署名リクエスト(CSR)の確認

  • 詳細は openssl reqページ参照のこと。

  • ここではコマンドとオプションのみ紹介する。

コマンド(-text オプション)

CSRが有する詳細情報を表示する。

openssl req -noout -text -in CSRファイル名.csr

コマンド(-subject)

サブジェクト(主体者)のディスティングイッシュ名を取得する。

openssl req -noout -subject -in CSRファイル名.csr

コマンド(-modulus)

モジュロを取得する。取得するだけだと何する?なので、秘密鍵と対になっているか確認する。

diff -u <(openssl req  -noout -modulus -in CSRファイル名.csr) <(openssl rsa  -noout -modulus -in 秘密鍵ファイル名.key)

<(command)というイディオム(実行結果をテンポラリファイル名で渡してくれる)は zsh/bash 拡張なので、シェルスクリプト(sh/ash/ksh)中では使わないこと。

署名済公開鍵(CRT)の確認

  • 詳細は openssl x509ページ参照のこと。

  • ここではコマンドとオプションのみ紹介する。
  • 署名済み公開鍵のことをcertificateと呼ぶがCSRのように明確に定義(省略形)しているのは無いが、比較的、一般的に通じる「CRT」で通すものとする。もちろん秘密鍵は「KEY」で。
  • 大枠は -text オプションを指定することになるが、個別にデータを取りたい場合のオプションを解説する。

コマンド(-text オプション)

openssl x509 -noout -text -in CRTファイル名.crt

コマンド(-subject/-issuer オプション)

サブジェクト(主体者)やイシュア(発行者)のディスティングイッシュ名を取得する。もちろんオプションは別々に指定可能。

openssl req -noout -subject -issuer -in CRTファイル名.crt

コマンド(-startdate/-enddate オプション)

有効期限(開始日時あるいは終了日時)を取得する。もちろんオプションは別々に指定可能。

openssl x509 -noout -startdate -enddate -in CRTファイル名.crt

コマンド(-modulus オプション)

モジュロを取得する。取得するだけだと何する?なので、秘密鍵と対になっているか確認する。

diff -u <(openssl x509 -noout -modulus -in CRTファイル名.crt) <(openssl rsa  -noout -modulus -in 秘密鍵ファイル名.key)

<(command)というイディオム(実行結果をテンポラリファイル名で渡してくれる)は zsh/bash 拡張なので、シェルスクリプト(sh/ash/ksh)中では使わないこと。

参考文献

OpenSSL (最終更新日時 2016-05-04 17:20:27 更新者 NorikatsuShigemura)