自己署名PEM証明書を信頼する


23
  1. PEM証明書を使用してSSLでプロキシサーバーを設定しました。現在、この証明書を自動的に信頼したい私のマシンがいくつかあります(Webブラウザーからの苦情はありません)。各マシンにPEM証明書をインストールするにはどうすればよいですか?

  2. また、より推奨されるのは、自己署名証明書の生成またはsnakeoil証明書の連結ですか?

回答:


10

ブラウザには、信頼できる「認証局」(CA)証明書のリストがあります。サーバーの証明書がこれらのCA証明書のいずれかによって署名され、適切に形成されている場合、SSL警告は表示されません。

多くのブラウザには、Verisign、Thawteなどの多くの一般的なCA証明書が付属しています。ほとんどのブラウザでは、この信頼できるCAのリストに新しいCAをインポートできます。

独自の自己署名サーバー証明書を作成するように、独自の自己署名CA証明書を作成できます。その後、それを使用してサーバー証明書に署名できます。CAが有名な会社によって提供されていない場合(作成した会社ではない場合)、サーバー側で明示的にインポートする必要があります。

私はxca以前これをやったことがあります。CAおよびHTTPサーバー用のテンプレートがあります。手順は次のとおりです。

  • CAの秘密キーを作成します
  • 「CA」テンプレートを使用して、このキーを使用して自己署名CAを作成します
  • プロキシサーバーの秘密キーを作成する
  • 2番目のキーを使用して、作成したCAを参照して「証明書署名要求」(CSR)を作成します。
  • CSRに「署名」すると、独自のCAを参照するプロキシサーバー証明書が得られます。

次にxca、CA証明書を(使用する場合はファイルとして)エクスポートする必要があります(もちろん秘密鍵は含めないでください)。Aが.pem生成されますが、あなたはに拡張子を変更することができます.crt。ユーザーがそれをクリックすると、FirefoxとInternet Explorer、およびおそらく他の主要なブラウザーにインストールされるように提供されます。この.crtの自動インストールに関しては、次のことができます。

  • IEでグループポリシーを使用する
  • 警告を避けたい場合は、.crtをダウンロード/インストールするように求める紹介ページにユーザーを誘導します。

次に、HTTPサーバー証明書のエクスポート機能を使用して(サーバー側の秘密鍵と証明書の両方をエクスポート)、プロキシサーバーに配置できます。


17
  1. /etc/ssl/certsターゲットシステムに証明書をコピーします。次に、コマンドによって生成されたハッシュを使用してシンボリックリンクを作成し、証明openssl x509 -noout -hash -in ca-certificate-file書名に置き換えca-certificate-fileます。証明書は、独自の証明書ストアを持たないすべてのプログラムで受け入れられます。

    独自の証明書ストア(ブラウザー、Javaなど)を使用するプログラムの場合、証明書をインポートする必要があります。

  2. 独自の自己署名証明書または署名証明書を生成するのが最適です。

    tinyca2独自の認証局をインストールして生成することもできます。上記の手順の詳細に従って、認証局の証明書をインポートできます。アプリケーションの署名付き証明書を生成してデプロイします。

    証明書を信頼する必要があるユーザーにCA証明書を配布します。証明書をインポートする方法に関する情報を提供する必要がある場合があります。警告:彼らがこれを行うと、あなたは彼らにとって別の信頼できるCAになるので、それに応じてCAを保護してください。

    多くのツールは、自己署名証明書、または信頼できないCAを持つ証明書を信頼するように構成することもできます。これは通常、1回限りのアクションです。これは、安全でない機関からCA証明書を受け入れるよりも安全であり、受け入れられた証明書のみが信頼されます。


これをより具体的にすることはできますか?例:ホストAはホストBにメールを送信し、Bの身元を確認できないことを訴えます。ホストBでは、自己署名証明書を作成しました/etc/ssl/certs/ssl-cert-snakeoil.pem(これはDebianパッケージssl-certが作成するものです)。これをホストAにコピーして呼び出します/etc/ssl/certs/host-B.pem(このホストには既にがあるためssl-cert-snakeoil.pem)。次に実行しln -s /etc/ssl/certs/host-B.pem $(openssl x509 -noout -hash -in /etc/ssl/certs/host-B.pem)ます。
アレックスシュレーダー14年

1
@AlexSchröder上記で編集しました。彼らはあなたのsnakeoil証明書をインポートすべきではありませんが、あなたがあなた自身のCAをセットアップしたなら、彼らはあなたのCAをインポートするのが合理的です。SMTPサーバー間の信頼関係の問題をまだ特定していません。ほとんどのクライアントは、個々の証明書を信頼するように指示されます。
BillThor 14年

ありがとう。取得しているログエントリの説明を探しているときに、この質問を見つけました。私が見つけた説明がBにメールを送信する場所Aとして、Aは、Bの身元を検証することができなかったことを報告しますということだった
アレックス・シュレーダーを

これはまさに私が探していたものです! - ありがとうございました!これで、davfsを使用して、それほど面倒なことなく安全なwebDAVをマウントできます。
Wyatt8740

13

DebianおよびUbuntuでは、certificate.pemをコピーしてから/usr/local/share/ca-certificates/certificate.crt実行する必要がありますdpkg-reconfigure ca-certificates/etc/ssl/certsそのコマンドによって管理されます。

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