Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

4.14. 共通システム証明書の使用

共有システム証明書ストレージは、NSS、GnuTLS、OpenSSL、および Java が、システムの証明書アンカーと、ブラックリスト情報を取得するデフォルトソースを共有することを許可します。トラストストアには、デフォルトで、Mozilla CA の一覧 (信頼される一覧および信頼されない一覧) を含みます。このシステムでは、コアとなる Mozilla CA リストの更新や、他の証明書リストの選択が可能です。

4.14.1. システム全体でトラストストアの使用

Red Hat Enterprise Linux 7 では、統合されたシステム全体のトラストストアが /etc/pki/ca-trust/ ディレクトリーおよび /usr/share/pki/ca-trust-source/ ディレクトリーに置かれます。/usr/share/pki/ca-trust-source/ の信頼設定は、/etc/pki/ca-trust/ の設定よりも低い優先順位で処理されます。
証明書ファイルは、インストールされているサブディレクトリーによって扱われ方が異なります。
  • /usr/share/pki/ca-trust-source/anchors/ または /etc/pki/ca-trust/source/anchors/ - トラストアンカーの場合。「トラストアンカーについて」を参照してください。
  • /usr/share/pki/ca-trust-source/blacklist/ または /etc/pki/ca-trust/source/blacklist/ - 信頼できない証明書の場合。
  • /usr/share/pki/ca-trust-source/ または /etc/pki/ca-trust/source/ - 拡張 BEGIN TRUSTED ファイル形式の証明書の場合。

4.14.2. 新しい証明書の追加

システムで信頼されている CA の一覧に、シンプルな PEM または DER ファイル形式で証明書を追加するには、証明書ファイルを /usr/share/pki/ca-trust-source/anchors/ ディレクトリーまたは /etc/pki/ca-trust/source/anchors/ ディレクトリーにコピーします。システム全体のトラストストア設定を更新するには、update-ca-trust コマンドを使用します。以下に例を示します。
# cp ~/certificate-trust-examples/Cert-trust-test-ca.pem /usr/share/pki/ca-trust-source/anchors/
# update-ca-trust
注記
Firefox ブラウザーは update-ca-trust を実行せずに追加した証明書を使用できますが、CA の変更後に update-ca-trust を実行することが推奨されます。Firefox、Epiphany、Chromium などのブラウザーはファイルをキャッシュするため、現在のシステム証明書の設定を読み込むために、ブラウザーのキャッシュを削除して、ブラウザーを再起動することが必要になるかもしれません。

4.14.3. 信頼されているシステム証明書の管理

トラストアンカーを一覧表示、抽出、追加、削除、または変更するには、trust コマンドを使用します。このコマンドの組み込みヘルプを表示するには、引数を付けずに、または --help ディレクティブを付けて実行します。
$ trust
usage: trust command <args>...

Common trust commands are:
  list             List trust or certificates
  extract          Extract certificates and trust
  extract-compat   Extract trust compatibility bundles
  anchor           Add, remove, change trust anchors
  dump             Dump trust objects in internal format

See 'trust <command> --help' for more information
システムのトラストアンカーおよび証明書の一覧を表示するには、trust list コマンドを使用します。
$ trust list
pkcs11:id=%d2%87%b4%e3%df%37%27%93%55%f6%56%ea%81%e5%36%cc%8c%1e%3f%bd;type=cert
    type: certificate
    label: ACCVRAIZ1
    trust: anchor
    category: authority

pkcs11:id=%a6%b3%e1%2b%2b%49%b6%d7%73%a1%aa%94%f5%01%e7%73%65%4c%ac%50;type=cert
    type: certificate
    label: ACEDICOM Root
    trust: anchor
    category: authority
...
[output has been truncated]
trust コマンドのすべてのサブコマンドは、以下のような詳細な組み込みヘルプを提供します。
$ trust list --help
usage: trust list --filter=<what>

  --filter=<what>     filter of what to export
                        ca-anchors        certificate anchors
                        blacklist         blacklisted certificates
                        trust-policy      anchors and blacklist (default)
                        certificates      all certificates
                        pkcs11:object=xx  a PKCS#11 URI
  --purpose=<usage>   limit to certificates usable for the purpose
                        server-auth       for authenticating servers
                        client-auth       for authenticating clients
                        email             for email protection
                        code-signing      for authenticating signed code
                        1.2.3.4.5...      an arbitrary object id
  -v, --verbose       show verbose debug output
  -q, --quiet         suppress command output
トラストアンカーをシステム全体のトラストストアに保存するには、trust anchor サブコマンドを使用して、証明書への path.to を指定します。以下に例を示します。
# trust anchor path.to/certificate.crt
証明書を削除するには、証明書の path.to、または証明書の ID を使用します。
# trust anchor --remove path.to/certificate.crt
# trust anchor --remove "pkcs11:id=%AA%BB%CC%DD%EE;type=cert"

4.14.4. 関連情報

詳細は、以下の man ページを参照してください。
  • update-ca-trust(8)
  • trust(1)