【開発ナレッジ】オレオレ証明書(自己署名証明書) - j-komatsu/myCheatSheet GitHub Wiki

オレオレ証明書(自己署名証明書)

目次

  1. オレオレ証明書とは
  2. オレオレ証明書の作成方法
  3. オレオレ証明書の使用上の注意点
  4. まとめ

オレオレ証明書とは

オレオレ証明書とは、正式な認証局(CA)を介さずに、自分自身で発行した自己署名証明書の俗称です。正式な認証局による認証が行われていないため、信頼性に欠けるとされています。

このような証明書は、主に内部ネットワークやテスト環境での使用が想定されていますが、インターネット上で広く公開するサイトでの使用は推奨されません。

オレオレ証明書の作成方法

初学者向け手順

以下の手順で、自己署名証明書を作成できます。

  1. 秘密鍵の作成

    openssl genpkey -algorithm RSA -out server.key
    
  2. 証明書署名要求(CSR)の作成

    openssl req -new -key server.key -out server.csr
    
  3. 自己署名証明書の作成

    openssl x509 -in server.csr -out server.crt -req -signkey server.key -days 365
    

専門家向け詳細手順

  1. 秘密鍵の生成(RSA 2048bit)

    openssl genpkey -algorithm RSA -out server.key -pkeyopt rsa_keygen_bits:2048
    
  2. 証明書署名要求(CSR)の作成

    openssl req -new -key server.key -out server.csr -subj "/C=JP/ST=Tokyo/L=Chiyoda/O=ExampleCorp/OU=IT/CN=example.com"
    
  3. 自己署名証明書の作成(有効期限 1 年)

    openssl x509 -req -in server.csr -signkey server.key -out server.crt -days 365 -sha256
    
  4. 証明書の確認

    openssl x509 -in server.crt -text -noout
    

フロー図

以下のMermaid.jsを用いたフロー図は、オレオレ証明書の作成プロセスを表しています。

graph TD;
    A[秘密鍵の生成] --> B[CSRの作成]
    B --> C[自己署名証明書の作成]
    C --> D[証明書の確認]

オレオレ証明書の使用上の注意点

  • セキュリティリスク: 自己署名証明書は正式な認証局による検証が行われていないため、中間者攻撃(MitM攻撃)のリスクが高まる。
  • 信頼性の欠如: ブラウザやシステムが証明書を信頼せず、警告が表示される。
  • 運用負担: 自己署名証明書を使用する環境では、各クライアントに手動で証明書をインストールする必要がある。

まとめ

オレオレ証明書は、内部開発環境やテスト環境で有用ですが、本番環境では正式な認証局によるSSL証明書を使用することが推奨されます。