証明機関は、Chrome と FireFox で弱い暗号化を使用する Windows Server 2008 R2 で実行されている IIS 6 で証明書を生成します。

証明機関は、Chrome と FireFox で弱い暗号化を使用する Windows Server 2008 R2 で実行されている IIS 6 で証明書を生成します。

私の組織では、Windows Server 2008 R2 マシンの 1 台に独自の証明機関 (CA) があり、SSL を使用するローカル イントラネット Web サイトがあります。前任者が 2016 年に作成した証明書は、現在 Chrome と Firefox の要件を満たしていません。それ以来、その証明書は期限切れになり、更新されていません。証明書を更新し、リモート コンピューターの信頼されたルート証明機関にインストールしたところ、Firefox と Chrome が証明書が無効であると主張しています。Firefox は弱い暗号化を使用していると述べ、Chrome は理由もなく無効であると述べますが、証明書の詳細画面 (?) では証明書は正常であると述べます。

証明機関は現在、IIS 6 を通じて Windows Server 2008 R2 によって処理されています。

私の質問は、これらの要件を満たすように IIS と証明書をどのように構成できるかということです。

証明書は C:/Windows/System32/certsrv/CertEnroll にあります。

X509 Certificate:
Version: 3
Serial Number: 6464d31bb0aeefa44bea96fe13c****
Signature Algorithm:
    Algorithm ObjectId: 1.2.840.113549.1.1.11 sha256RSA
    Algorithm Parameters:
    05 00
Issuer:
    CN=*******

 NotBefore: 11/11/2016 9:30 AM
 NotAfter: 11/11/2021 9:40 AM

Subject:
    CN=******

Public Key Algorithm:
    Algorithm ObjectId: 1.2.840.113549.1.1.1 RSA
    Algorithm Parameters:
    05 00
Public Key Length: 2048 bits
Public Key: UnusedBits = 0
    0000  30 82 01 0a 02 82 01 01  00 bb 58 5d e8 11 4f 57
    0010  aa 37 3a 21 af 8e ab 20  24 36 6f f6 6e c9 6b d9
    0020  d7 10 7f e4 e6 26 0c ee  e0 67 41 bd 0d 4d 2c 1c
    0030  56 ec 20 7a 80 5d bc f9  ed 8d a9 4d d9 ac b6 f7
    0040  24 18 2f 19 ae 35 d9 f3  a6 0a 1a 76 c3 07 c2 bb
    ******************
Certificate Extensions: 4
    2.5.29.15: Flags = 0, Length = 4
    Key Usage
        Digital Signature, Certificate Signing, Off-line CRL Signing, CRL Signin
g (86)

    2.5.29.19: Flags = 1(Critical), Length = 5
    Basic Constraints
        Subject Type=CA
        Path Length Constraint=None

    2.5.29.14: Flags = 0, Length = 16
    Subject Key Identifier
        a9 ab c3 52 50 8d 20 07 17 2d a0 7f 9d a9 ******

    1.3.6.1.4.1.311.21.1: Flags = 0, Length = 3
    CA Version
        V0.0

Signature Algorithm:
    Algorithm ObjectId: 1.2.840.113549.1.1.11 sha256RSA
    Algorithm Parameters:
    05 00
Signature: UnusedBits=0
    0000  1e b8 e5 7e 93 d4 e4 1c  5b 23 12 14 b3 44 14 cb
    0010  1a 22 a1 ab 7d 2e 72 2c  af 20 76 0b d5 93 02 58
    0020  d7 44 85 76 5d 97 c5 58  ba 48 53 e7 ab e8 f6 e2
    0030  15 a8 90 6b 53 bd 9f 04  54 b0 a0 07 94 89 f5 01
    0040  74 bc e9 0c 03 98 52 89  f6 5d 53 7a 42 ae 70 43
    ***************
Signature matches Public Key
Root Certificate: Subject matches Issuer
Key Id Hash(rfc-sha1): a9 ab c3 52 50 8d 20 07 17 ********
Key Id Hash(sha1): 17 52 93 4f ea 7d 37 58 df 80 e3 a8 ********
Cert Hash(md5): 88 8f 26 47 51 73 25 8a 3d d8 56 ********
Cert Hash(sha1): e2 fb 4e 43 b7 2e 35 00 fa 7b a8 8c ******
CertUtil: -dump command completed successfully.

答え1

証明書は、使用される暗号化にほとんど影響しません。代わりに、(不明な) Web サーバーで構成されている暗号スイートがこの役割を担い、証明書はどの暗号スイートが使用可能であるかにわずかな影響しか与えません (つまり、RSA 証明書には RSA 認証の暗号が必要です)。

これを踏まえると、「より強力な」証明書を取得することは意味がありません。代わりに、Web サーバーをより強力な暗号スイートをサポートするように構成し、具体的には RSA キー交換によるすべての暗号を禁止するか、少なくとも優先順位を下げる必要があります。

認証に関連する証明書自体の強度に関しては、強力な公開鍵 (RSA を使用する場合は少なくとも 2048 ビット) と、署名アルゴリズムとして少なくとも SHA-256 を使用する必要があります。

関連情報