Docker は最も広く使用されているコンテナ プラットフォームの 1 つであり、ソフトウェア エンジニアや開発者の間で非常に人気があります。 Docker コンテナーやその他の関連タスクを管理するための強力な CLI ツールが付属しています。
デフォルトでは、Linux 上で Docker 関連のコマンドを実行するには root 権限が必要です。もちろん、実行をより快適にするためにこの設定を変更し、root ユーザー権限なしで Docker コマンドを実行することもできますが、セキュリティへの影響に注意する必要があります。確認する Linux で Docker コンテナを使用する方法.

クイックリンク
Docker の攻撃対象領域とは何ですか?
「攻撃面」とは、悪意のあるユーザーがシステムに侵入して大混乱を引き起こすために使用できる攻撃ポイントの数 (ウィンドウの数など) です。一般に、IT システムはセキュリティ リスクを軽減するために、攻撃対象領域を最小限に抑える必要があります。
一般に、Docker の攻撃対象領域は非常に最小限です。コンテナーは安全な隔離された環境で実行され、別の方法で設定しない限り、ホスト オペレーティング システムに影響を与えません。さらに、Docker コンテナーは最小限のサービスのみを実行するため、コンテナーの安全性が高まります。
sudo 権限なしで Docker を制御するように Linux システムを構成できます。これは開発環境では便利かもしれませんが、運用システムでは重大な脆弱性になる可能性があります。 sudo なしでは Docker が実装されない理由は次のとおりです。
1. Dockerコンテナを制御する機能
sudo 権限がなければ、システムまたはサーバーにアクセスできる人は誰でも、Docker のあらゆる側面を制御できます。 Docker ログ ファイルにアクセスできるため、コンテナを任意に、または誤って停止したり削除したりする可能性があります。また、ビジネスの継続に不可欠な重要なデータが失われる可能性もあります。
実稼働環境で Docker コンテナを使用する場合、ダウンタイムによりさまざまなデータと信頼の損失が発生します。
2. ホスト オペレーティング システムのディレクトリを制御する
Docker Volumes は、コンテナ データをホスト オペレーティング システム上の特定のフォルダーに書き込むことで共有および保存できる強力なサービスです。
sudo を使用せずに Docker を実装することに伴う最大の脅威の 1 つは、システム上の誰もがホーム ディレクトリを含むホスト オペレーティング システム ディレクトリを制御できることです。
必要なのは、Linux Docker イメージ (Ubuntu イメージなど) を実行し、次のコマンドを使用してホーム フォルダーにマウントすることだけです。
docker run -ti -v /:/hostproot ubuntu bash
Linux Docker コンテナは root ユーザーとして実行されるため、これは基本的にホーム フォルダー全体にアクセスできることを意味します。
上記のコマンドは、最新の Ubuntu イメージをダウンロードして実行し、ホーム ディレクトリにインストールします。
Docker コンテナのターミナルで、ディレクトリに移動します。 /ホストルート .コマンドを使用する cd:
cd /hostproot

コマンドを使用して、このディレクトリの内容を一覧表示します。 ls すべてのホスト オペレーティング システム ファイルがコンテナー内にあります。これで、ファイルの操作、秘密ファイルの表示、ファイルの非表示と再表示、アクセス許可の変更などができるようになります。
3. マルウェアをインストールする
適切に設計された Docker イメージは、バックグラウンドで実行してシステムを操作したり、機密データを収集したりできます。さらに悪いことに、悪意のあるユーザーが Docker コンテナを介してネットワーク上に悪意のあるコードをデプロイする可能性があります。
Docker コンテナには多くの実際的な使用例があり、アプリケーションごとに異なるセキュリティ脅威が伴います。確認する Linux に Docker ツールをインストールする方法.
Linux 上で Docker コンテナを保護する
Docker は強力で安全なプラットフォームです。 sudo を使用せずに Docker を実行すると、攻撃対象領域が増加し、システムが脆弱になります。運用環境では、Docker で sudo を使用することを強くお勧めします。
システム上に非常に多くのユーザーがいると、各ユーザーに権限を割り当てることが非常に困難になります。このような場合、アクセス制御のベスト プラクティスに従うと、システムを安全に保つことができます。閲覧できるようになりました アクセス制御とは何ですか?なぜ必要ですか?










