自己署名SSL証明書を更新できますか?どうやって?


18

私はSSL証明書にかなり慣れていないので、HTTPSに使用する自己署名証明書を更新して、サイトのすべてのクライアントが「例外を許可する」プロセスを経ることなく有効期限を延長できるかどうかを知りたい初めてサイトにアクセスしたとき、またはゼロから作成された新しい自己署名証明書を発行するときなどに実行します。

私が見つけ、次のチュートリアルでどのように使用して自己署名証明書を更新するために上映をopenssl私はそれは、そのような私のブラウザは黙って「信頼できないサイトは、」画面に警告することを示すことなく、それを受け入れることを使用することができませんでした。

  # cd /etc/apache2/ssl
  # openssl genrsa -out togaware.com.key 1024
  # chmod 600 togaware.com.key
  # openssl req -new -key togaware.com.key -out togaware.com.csr
    AU
    ACT
    Canberra
    Togaware
    Data Mining
    Kayon Toga
    Kayon.Toga@togaware.com
    (no challenge password)
  # openssl x509 -req -days 365 -in togaware.com.csr \
            -signkey togaware.com.key -out togaware.com.crt
  # mv apache.pem apache.pem.old
  # cp togaware.com.key apache.pem 
  # cat togaware.com.crt >> apache.pem 
  # chmod 600 apache.pem
  # wajig restart apache2

私のセットアップはこの回答で説明されているとおりであり、PEMファイルの代わりにCRTおよびKEYファイル(このチュートリアルから)を使用しているので、それをケースに適用しようとして何かを台無しにしたかもしれません。

再び、私は、自己署名証明書を更新することは完全に不可能であることを示唆する多くのフォーラムエントリを見つけました。そして、私はゼロから新しいものを作成しなければなりません。

任意の助けをいただければ幸いです...またはこの質問は/server//または/superuser//に適していますか?


7
この質問を否定するのではなく、改善すべき点について具体的なアドバイスをお願いします。
FriendFX

回答:


23

定義上、自己署名証明書は、直接信頼(FirefoxなどのWebブラウザーが「例外を許可」プロセスとして表示するもの)によってのみ信頼できます。最後の部分まで、非常に具体的な証明書の1つが「信頼できる」と宣言されています。このモデル、特に証明書に含まれるデータの一部である有効期限を終了しない限り、証明書の何も変更できません。

更新は一種の家族のものとして想像できます。証明書が「更新」されると、実際には若い兄弟によって置き換えられます。クライアントは以前の証明書と同じ祖先を共有するため、新しい証明書をサイレントに受け入れます。自己署名証明書は本質的な孤児であり、祖先を持ちません。したがって、兄弟も自動送信もありません。

(この祖先のこととは別に、更新新しい証明書の作成です。証明書は不変です。「更新」は古い証明書と新しい証明書の関係について考える方法です。)

サイレント更新を実行できるようにするには、自己署名CA証明書が必要です。そのCAからサーバーの証明書を発行し、クライアントにそのCAを信頼するように依頼します。もちろん、これは多くのことを求めています。信頼できるCAは、あなたの目にはインターネット全体を偽造できるCAです。基本的に、このソリューションは、独自のCAの作成と保守に関するものであり、これは責任と作業です。


自己署名証明書を次回作成するときは、それを長命にします。証明書は主に失効処理のために失効します(証明書の失効により、CRLが無期限に成長するのを防ぎます)。自己署名証明書の場合、失効はないため、証明書を20年間有効にすることができます。または2000年の間、その問題については(ただし、クライアントソフトウェアによっては、2038年問題いつか発生する可能性があります)。


広範な回答をありがとう!私がリンクしているチュートリアルに関連してそれが何を意味するのか疑問に思っています。自己署名CA証明書のみですか?古いものから秘密鍵を読み取り、新しい「互換性のある」ものを作成する方法があればいいと思っていました(そしてチュートリアルを読んだ後に考えました)... 「孤児」。ちなみに、いい例えです!
FriendFX

@FriendFX-あなたが望むことは不可能です。トムは正しいです。renwealは新しい証明書を生成します。
ラムハウンド

@ラムハウンド-わかりました。唯一の未解決の質問は、そのチュートリアルの目的は何ですか?
FriendFX

@FriendFX-ブログを持っているからといって、自分が書いていることを理解しているわけではないという理由だけで、インターネット上のランダムな人によって書かれました。著者は、チュートリアルが新しい証明書を作成することを説明していません
-Ramhound

3
@FriendFXはい、そのチュートリアルは自己署名CA証明書に対してのみ機能します。同じキーペアとサブジェクトを使用する場合、発行された証明書の有効な発行者としてそれぞれ満たす複数のCA証明書を作成できます。これらの証明書は、「クロスチェーン」と呼ばれる異なる親CAによって発行されることもあります。
カリオン

3

短い答え:いいえ。

自己署名証明書を信頼することは、パスポートを発行する国ではなく、個々のパスポートを信頼することに似ています。新しいパスポートを取得すると、古いパスポートを信頼した人によって自動的に信頼されることはありません。具体的には、パスポート番号、日付などの属性が異なるためです。古いパスポートを明示的に信頼している誰かが、新しいパスポートが信頼できることを知る根拠はありません。


0

自己署名証明書を使用している場合(Windowsではxcaを使用することをお勧めします)、有効期限を7999-12-31(UTCの最大時間)に設定し、初期日付を1970-01-01(For PCで誤って設定された時刻/日付との互換性)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.