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/ or /etc/pki/ca-trust/source/anchors/ - トラストアンカー。「トラストアンカーについて」 を参照してください。
  • /usr/share/pki/ca-trust-source/blacklist/ or /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 サブコマンドを使用し、証明書のパスを指定します。
# trust anchor path.to/certificate.crt
証明書を削除するには、証明書のパス、または、証明書の 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)