ルート証明書をインストールするにはどうすればよいですか?


223

誰もがubuntu 10または11にルート証明書をインストールするための良いチュートリアルを教えてくれますか?

.crtファイルが提供されました。私はでディレクトリを作成するために、その必要性を収集/usr/share/ca-certificates/newdomain.orgし、置き.crt 、そのディレクトリに。それを超えて、私はどのように進むべきかわかりません。


19
誰かがcrtではなくcerファイルを使用してここに到着した場合、それらは同じものです(拡張子が異なるだけです)。これらの答えに従い、単にファイル名を置き換えることができるはずです。
オリ

Btw:コマンドラインからCA証明書取得する便利な方法については、serverfaultのこちらをご覧ください
フランクノック

回答:


298

ルート/ CA証明書のインストール

CA証明書ファイルが与えられfoo.crtたら、次の手順に従ってUbuntuにインストールします。

  1. に追加のCA証明書のディレクトリを作成します/usr/share/ca-certificates

    sudo mkdir /usr/share/ca-certificates/extra
    
  2. CA .crtファイルをこのディレクトリにコピーします。

    sudo cp foo.crt /usr/share/ca-certificates/extra/foo.crt
    
  3. Ubuntuは追加してみましょう.crtに、ファイルの相対パスを/usr/share/ca-certificatesします/etc/ca-certificates.conf

    sudo dpkg-reconfigure ca-certificates
    

    これを非対話的に行うには、次を実行します:

    sudo update-ca-certificates
    

.pemUbuntu上のファイルの場合、最初に.crtファイルに変換する必要があります。

openssl x509 -in foo.pem -inform PEM -out foo.crt

54
どのように使用について/usr/local/share/ca-certificates(ローカル!)の代わりに、システムパッケージ管理を使用するのはdirectoyを管理しますか?
gertvdijk 14年

6
Firefox(およびその他のソフトウェア)はシステム全体の証明書を使用しませんが、独自の証明書ストアaskubuntu.com/a/248326/79344を持っていることに注意してください
アミールアリアクバリ

12
ファイルはPEM形式で、拡張子が「.crt」である必要があります。
アントン

2
sudo dpkg-reconfigure ca-certificatesおかげで、もう一方sudo update-ca-certificates --freshは16.10。で動作しませんでした。
-antivirtel

7
このコマンドはopenssl x509 -in foo.pem -inform PEM -out foo.crt、PEMファイルをPEMファイルにコピーします。これは、名前を変更することで簡単に行えます。
マリアン

191

CA証明書ファイル「foo.crt」が与えられた場合、次の手順に従ってUbuntuにインストールします。

まず、CAをdirにコピーします /usr/local/share/ca-certificates/

sudo cp foo.crt /usr/local/share/ca-certificates/foo.crt

次に、CAストアを更新します

sudo update-ca-certificates

それで全部です。次の出力が得られます。

Updating certificates in /etc/ssl/certs... 1 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d....
Adding debian:foo.pem
done.
done.

編集にファイルは必要ありません。CAへのリンクが自動的に作成されます。

証明書のファイル名はで終わる必要があることに注意してください.crt。そうしないと、update-ca-certificatesスクリプトはそれらを取得しません。

この手順は、新しいバージョン:manualsでも機能します。


1
これは、信頼できるtahr 14.04
mcantsin 14年

25
/ usr / share / ca-certificatesに追加するのとは異なり、サブディレクトリではなく/ usr / local / share / ca-certificatesに直接ある場合にのみ機能するようです。システムフォルダーの代わりにローカルフォルダーを使用するための+1!
トビーJ 14

2
これはREADME.Debianに文書化されています。
ペビック

1
@ Sparky1、これは受け入れられた答えでなければなりません。
ドリューチャピン

1
@FranklinYuありがとう:) DebianはAliothからSalsaに移行しました。これも同様に機能します:salsa.debian.org/debian/ca-certificates/raw/master/debian/…が、sources.debian.orgの方が優れています。
ペビック

7

Ubuntuに認証局をインストールする

これをUbuntu 14.04でテストしました。

ここに私の解決策があります、私はこれを機能させる方法を見つけようとして長い間探していました。

  1. ブラウザから.cerを抽出します。IE 11を使用しました。
    • 設定->インターネットオプション->中間認証局
    • エクスポートする認証局を選択しcertutil -config - -pingます(企業プロキシの背後にいる場合は、使用している認証局が表示されます)
    • エクスポート->使用する形式を選択:DER Encoded .cer
  2. 何らかの方法で.cerファイルをUbuntuに取得する
  3. .crtに変換 openssl x509 -inform DER -in certificate.cer -out certificate.crt
  4. 追加のディレクトリを作成する sudo mkdir /usr/share/ca-certificates/extra
  5. 証明書をコピー sudo cp certificate.crt /usr/share/ca-certificates/extra/certificate.crt
  6. sudo update-ca-certificates
  7. そうでなければ、あなたは私がやったことをしなければなりません sudo nano /etc/ca-certificates.conf
  8. 下にスクロールして.cerを見つけ!、ファイル名の前にあるfrom を削除します(update-ca-certificates doc) -証​​明書の実行が見つからない場合dpkg-reconfigure ca-certificates
  9. 走る sudo update-ca-certificates
  10. Firefox、ChromeなどのCAを個別に信頼する必要がある場合があります。これらの手順がDockerで機能するように、Dockerで機能するために必要でした。

1
これは16.04で機能しますか?
endolith

@endolithは16.04で働いていました。
シュバム

4

Ubuntu 18.04では、他の答えはうまくいきませんでした。/etc/ssl/certs/ca-certificates.crt次のコマンドを使用して、証明書certを追加します。

cat YOUR_CERT_HERE.crt >> /etc/ssl/certs/ca-certificates.crt 

1
これを見つけるまでに2時間のインポートコマンドをいじりました。パーフェクト!
beirtipol

コマンドが間違っsていますcat YOUR_CERT_HERE.crt >> /etc/ssl/certs/ca-certificates.crt 。最終版がありません:。この解決策をありがとう。
SommerEngineering

注:これは一時的な解決策update-ca-certificatesです。追加した証明書は、実行後に削除されるためです。
ケノーブ

3

(ルート/ CA)証明書は、必要に応じてネットワークのローカルにあるWebサーバーで使用可能にしてください。

  • Firefoxで閲覧します。
  • 証明書を開き、Firefoxに例外として追加するように指示します。
  • Firefoxは、この証明書をWebサイトの識別、電子メールユーザー、ソフトウェア発行者のいずれに対して信頼するかを尋ねます。
  • 楽しい!

更新:これがUbuntu 11で機能するかどうかを確認する必要があります。Ubuntu12.04 LTSでこれを行ったことがわかりました。


5
firefoxには独自の証明書コンテナがありませんか?この方法で証明書を追加すると、Firefoxだけで証明書を使用できるようになりますか?
Aiyion.Prime

これはまったく機能しません。OSのグローバル証明書コンテナーに追加する必要があります。追加しない場合は、Firefoxコンテナーにのみ追加されます。
arc_lupus 16

1

ここから:

証明書のインストール

端末プロンプトで次のコマンドを実行することにより、キーファイルexample.keyと証明書ファイルexample.crt、またはCAによって発行された証明書ファイルをインストールできます。

sudo cp example.crt /etc/ssl/certs
sudo cp example.key /etc/ssl/private

ここで、公開鍵暗号を使用する機能を備えたアプリケーションを構成し、証明書と鍵ファイルを使用するだけです。たとえば、ApacheはHTTPSを提供でき、DovecotはIMAPSおよびPOP3Sを提供できます。


もっと詳しく読む必要があります...それはルート証明書用ではないようです。私がリンクしたそのページには、役に立つかもしれないルート証明書に関する情報があります。
jat255

1
私は公開鍵も秘密鍵も持っていません。ただ.crtしかないので、残念ながらそれらの指示は当てはまらないようです。
Sparky1

0

FireFoxにルートCA証明書を追加することは、今では非常に簡単です。設定を開き、[プライバシーとセキュリティ]に移動し、[証明書]まで下にスクロールして、[証明書の表示...]をクリックします。ここで、「証明書のインポート」をクリックできます。ルートCA(.pem)をポイントして[OK]をクリックします。それはすべての人々です。


0

簡単な手順は次のとおりです。

  1. SSLベースのアプリケーションがSSL接続の信頼性を確認できるように、CA証明書をインストールします。

    sudo apt-get install ca-certificates
    
  2. 証明書ファイル(crtまたは.cer)を/usr/local/share/ca-certificates/フォルダーにコピーします。例:

    sudo cp file.crt /usr/local/share/ca-certificates/
    

    PEMファイルについては、「。pemを.crtおよび.keyに変換」を参照してください。

    オプションで、Charlesプロキシを使用している場合、このコマンドは機能します。

    curl -L chls.pro/ssl | sudo tee /usr/local/share/ca-certificates/charles.crt
    
  3. 証明書を更新します。

    sudo update-ca-certificates
    

    このコマンドは、/etc/ssl/certsディレクトリを更新してSSL証明書を保持し、ca-certificates.crtファイル(証明書の連結された単一ファイルのリスト)を生成します。

    注:証明書は永続的ではなく、削除されるため、手動で証明書を追加しないでください(ここで推奨)。

注:として実行している場合は、上記のコマンドからrootドロップできsudoます。


0

間に明確化update-ca-certificatesし、dpkg-reconfigure ca-certificates1つの作品や他にはない、なぜ!

update-ca-certificatesまたは更新されたsudo update-ca-certificates 場合にのみ機能し /etc/ca-certificates.confます。

/etc/ca-certificate.conf を実行 dpkg-reconfigure ca-certificatesすると、インポートされる証明書名が更新されます。/etc/ca-certificates.conf

これは、/etc/ca-certificates.confファイルのヘッダーに記載されています。

# This file lists certificates that you wish to use or to ignore to be
# installed in /etc/ssl/certs.
# update-ca-certificates(8) will update /etc/ssl/certs by reading this file.
#
# This is autogenerated by dpkg-reconfigure ca-certificates.  <=======
# Certificates should be installed under /usr/share/ca-certificates
# and files with extension '.crt' is recognized as available certs.
#
# line begins with # is comment.
# line begins with ! is certificate filename to be deselected.
#
mozilla/ACCVRAIZ1.crt
mozilla/AC_RAIZ_FNMT-RCM.crt
mozilla/Actalis_Authentication_Root_CA.crt
mozilla/AddTrust_External_Root.crt
...

ご覧のとおり、フォーマット/etc/ca-certificates.conf<folder name>/<.crt name>

そのため、.crtをインポートするために次を使用するupdate-ca-certificatesか、またはsudo update-ca-certificates実行できます。

  1. / usr / share / ca-certificatesに追加のCA証明書用のディレクトリを作成します。

    sudo mkdir /usr/share/ca-certificates/extra

  2. .crtファイルをこのディレクトリにコピーします。

    sudo cp foo.crt /usr/share/ca-certificates/extra/foo.crt

  3. /etc/ca-certificates.confusingに行を追加し<folder name>/<.crt name>ます:

    echo "extra/foo.crt" >> /etc/ca-certificate.conf

  4. アップデートは本命非対話的に sudoのアップデート-CA-証明書で

    sudo update-ca-certificates

    ... Updating certificates in /etc/ssl/certs... 1 added, 0 removed; done.

楽しんで!

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