2017-01-23 11 views
3

開発、テスト、およびステージング中に、仮想マシンとして出入りするさまざまなドッカーサーバーがあります。最終的に、このプロセスでのドッカー画像は、ホストとドメイン名が明確に定義された顧客のマシンに送られます。しかし、その時点まではすべてのマシンが内部ネットワークに過ぎません。顧客が導入した環境では、HTTPSを介して内部または外部のすべての 'http'通信を行うことが意図されています。この目的で、すべてのコンテナを使用可能/テスト可能なSSL証明書で結ぶことが非常に望ましいです。Docker: "Https everywhere"開発のためのLetsEncrypt

Onetwothree、そして上、多くのドッキングウィンドウの上/ letsencrypt/nginxのチュートリアルではなく、開発プロセス中に、最後にこれを行う方法について説明します。このような集中設定が可能かどうかは誰にも分かりますか?一番内側のドッカーコンテナ(私たちはTomcat Webアプリケーションを格納しています)をパブリックドメインにする必要がありますか?それとも、これはまったく実用的ではありません[これを知っていても、確かに大きな助けになるでしょうか?]この使用法が可能な場合、誰でもこの機能を実現するために何が必要かを知っている(または持っている)かもしれませんか?場合

UPDATE

それは上記から明らかではなかったです。私はDockerコンテナの1つがおそらくletsencrypt/nginxプロキシであることを望みます。 Docker Hubには多くのものがあります。しかし、すべてのマシンが内部ネットワーク上にある開発/テスト用のシステムをセットアップする方法はわかりません。証明書は「テスト」することができます.HTML/TLSを許可する必要がありますが、Chromeの緑色のロックではありません。これにより、膨大な量のテスト(HTTPが適切にロックダウンされ、TLSv1.0が特定の脆弱性などを避けるためにオフになるなど)が可能になります。

答えて

2

私はあなたがLetsencryptを忘れることをお勧めします。そのサービスの価値提案は、あなたが明示的に必要としないと言っている、「ブラウザーの緑色のロックを得る」ことに本当に焦点を当てています。

また、LetsencryptはACMEチャレンジファイルが存在することを確認するためにサーバーにアクセスする必要があります。つまり、そうしたすべてのサーバーに公開可能なドメインが必要です。したがって、ドメインを所有し、DNSが特定のサーバーを指し示すようにする必要があります。これはテスト環境では望ましくないと言えます。

要約すると、間違ったツールを必要に応じて使用しようとしていると思います。通常の自己署名証明書as described in this questionを使用してみてください。そのためには、接続するクライアントは証明書を検証しないように設定する必要があります。

または次のレベルにしてcreate your own CAにすることができます。そのためには、すべてのコンテナにルート証明書をインポートさせて、信頼できるようにする必要があります。

もちろん、コンテナ/画像をプロダクションに発送した後は、元に戻して実際の有効な証明書を取得することを忘れないでください。それがLetsencryptが役に立ちそうな時です。

+0

www.startssl.comでは、無料の有効なSSL証明書を提供しています。 – Niloct

+0

このサービスは、encryencryptが解決するのとまったく同じ問題を解決しますが、letsencryptははるかに高速で使いやすくなっています。手元にある問題のための間違ったツールです。 – peedee

+0

私が理解したように、彼の問題は彼が非公開のIPでDNSを使用していることです。 startsslを使用すると、たとえば、 'webmaster @ domain'で電子メールを受信し、ドメイン内のローカルIPホストを' 192.168.0.10'としてマップするなど、いくつかの古い方法でドメインを検証できます。 – Niloct

関連する問題