Dockerイメージの暗号化(エンドツーエンド); オフラインチャネルでの転送


8

私たちはイントラネットでDockerイメージを開発および構築しており、私たちに属するいくつかのホスト(開発者、内部テスト、外部テストなど)にそれらを展開する必要があります。これらの一部はイントラネットにあり、一部はインターネットでサードパーティがアクセスできます。

最終的な展開は、いくつかのノード(実稼働、さまざまなテスト段階)上の顧客のイントラネット内です。これらはファイアウォールの背後にあり、イントラネット外の物に定期的にアクセスすることを許可していません。つまり、デプロイメントのために外部レジストリへのアクセスを許可できるものもあれば、不可解なソフトウェアのアップロードを通じて手動で画像を配信する必要があるものもあります。ツール。

画像を暗号化して保存できる(できればGPGまたは同様の、単純なパスワードではない)インターネット上のレジストリ(おそらく、そこにあるVMで自分で実行した可能性があります)を持つ方法を探しています。しかし、その場合は、手動でアップロードメカニズムを介して、単に「半分」のものを配信することもできます。顧客は非常に偏執的であるため、エンドツーエンドの暗号化を維持することは非常に重要です。

頭に浮かぶ、それを完全に処理できるツールはありますか?1つの解決策は、専用ホスト上の顧客の敷地に完全なレジストリをミラーリングし、暗号化の部分をそのまま維持することです。

「標準」のソリューションは素晴らしいでしょう。何か無駄のない/軽量の/確立された/安定したものがすでにある場合、私は何かを一緒にハッキングするのは嫌です。

編集(+タイトルに編集):Portusによって提供されているような広範な許可スキームは良いスタートですが、実際の画像のエンドツーエンドの暗号化に理想的です。顧客は超偏執的で、Docker、クラウドベースのサービスなどを始めたばかりです。



ありがとう、030。リンクした質問は、ユーザーの目からものを隠すことを考慮しています。私の質問は、途中で他の人にそれを隠すことです(つまり、レジストリを介して転送する場合にのみ、どちらの側も暗号化は必要ありません)。
AnoE

OK。それで、基本的には、Webサイトのhttpsのようなドッカーレジストリ用のSSLを探していますか?
030

@ 030、質問で述べたようにI am looking for a way to have a registry [...] which allows the images to be stored encrypted (preferably GPG or similar, not a simple password).
AnoE

回答:


2

Google Container Registryは潜在的なオプションです。

  1. レジストリは非公開です
  2. 画像レイヤーはGoogle Cloud Storageバケットに保存され、Google(RSA)によって暗号化され、さらにクライアントキー(RSA)で暗号化できます
  3. アクセス制御は、GCSバケットに保存されている個々のオブジェクトまで細かく制御されます
  4. クライアント側の認証は、oauth2を介して適用されます。クライアントは、Google Cloud SDKを認証情報マネージャーとして使用するようにDockerを設定します
  5. 画像はssl接続経由で取得されます

レジストリがGoogleのCloud Platformの一部であることは、他の興味深いものまで構築できることも意味します。たとえば、リバースプロキシとして機能するようにVMを設定し、特定のIPセット(クライアントのオフィスなど)からの443のみを許可するようにGCPファイアウォールを設定できます。


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