ホームページ  >  記事  >  運用・保守  >  Docker を使用してコンテナーのセキュリティ スキャンと脆弱性修復を行う方法

Docker を使用してコンテナーのセキュリティ スキャンと脆弱性修復を行う方法

PHPz
PHPzオリジナル
2023-11-07 14:32:07825ブラウズ

Docker を使用してコンテナーのセキュリティ スキャンと脆弱性修復を行う方法

Docker は、アプリケーションと依存関係をコンテナにパッケージ化して移植性を高める機能があるため、開発者やオペレータにとって不可欠なツールの 1 つとなっています。ただし、Docker を使用する場合はコンテナのセキュリティに注意する必要があります。注意しないと、コンテナ内のセキュリティ ホールが悪用され、データ漏洩、サービス拒否攻撃、その他の危険につながる可能性があります。この記事では、Docker を使用してコンテナーのセキュリティ スキャンと脆弱性修復を行う方法について説明し、具体的なコード例を示します。

  1. コンテナ セキュリティ スキャン

コンテナ セキュリティ スキャンとは、コンテナ内の潜在的なセキュリティ脆弱性を検出し、それらを修復するためのタイムリーな措置を講じることを指します。コンテナ内のセキュリティ スキャンは、いくつかのオープン ソース ツールを使用して実現できます。

1.1 セキュリティ スキャンに Docker Bench を使用する

Docker Bench は、Docker コンテナーの基本的なセキュリティ チェックを実行できるオープン ソース ツールです。コンテナーのセキュリティ スキャンに Docker Bench を使用する手順は次のとおりです。

(1) まず、Docker Bench をインストールします

docker pull docker/docker-bench-security

(2) 次に、コンテナーをスキャンします

docker run -it --net host --pid host --userns host --cap-add audit_control 
    -e DOCKER_CONTENT_TRUST=$DOCKER_CONTENT_TRUST 
    -v /etc:/etc:ro 
    -v /var/lib:/var/lib:ro 
    -v /usr/bin/docker-containerd:/usr/bin/docker-containerd:ro 
    -v /usr/bin/docker-runc:/usr/bin/docker-runc:ro 
    -v /usr/lib/systemd:/usr/lib/systemd:ro 
    -v /var/run/docker.sock:/var/run/docker.sock:ro 
    --label docker_bench_security 
    docker/docker-bench-security

( 3 ) スキャンが完了するまで待ち、レポートを表示します。

スキャンが完了したら、レポートを表示して、対応する修復措置を講じることができます。

1.2 Clair によるセキュリティ スキャン

Clair は、Docker イメージとコンテナをスキャンしてセキュリティの脆弱性を検出できるオープン ソース ツールです。コンテナーのセキュリティ スキャンに Clair を使用する手順は次のとおりです。

(1) まず、Clair

docker pull quay.io/coreos/clair:latest

をインストールします (2) 次に、Clair

docker run -p 6060:6060 -d --name clair quay.io/coreos/clair:latest

を起動します (3)次に、clairctlをインストールします

go get -u github.com/jgsqware/clairctl

(4) 次に、clairctlを使用してコンテナをスキャンします

clairctl analyze -l CONTAINER_NAME

(5) スキャンが完了するまで待ち、レポートを表示します

スキャンが完了すると、ブラウザから Clair の Web ページにアクセスしてレポートを表示できます。

  1. コンテナ脆弱性修復

コンテナ脆弱性修復とは、コンテナのセキュリティを確保するために、コンテナ内に存在するセキュリティ脆弱性を修復することを指します。コンテナーの脆弱性の修復は、いくつかのオープンソース ツールを使用して実現できます。

2.1 脆弱性修復に Docker Security Scanning を使用する

Docker Security Scanning は、Docker が公式に提供するセキュリティ スキャン ツールで、Docker イメージ内のセキュリティの脆弱性を検出し、修復の提案を提供します。 Docker Security Scanning を使用してコンテナの脆弱性を修復する手順は次のとおりです。

(1) まず、Docker Security Scanning を有効にします

Docker Hub にアカウントを登録した後、Docker Security Scanning を有効にします。セキュリティセンター 。

(2) 次に、イメージを Docker Hub にアップロードします

docker push DOCKERHUB_USERNAME/IMAGE_NAME:TAG

(3) Docker Security Scanning がスキャンを完了するまで待ち、レポートを表示します

Docker にログインしますブラウザー経由でハブを実行し、Docker Security Scanning のスキャン レポートを表示して修復の提案を確認します。

2.2 脆弱性修復に Clair を使用する

Clair は、コンテナのセキュリティ スキャンに加えて、コンテナの脆弱性の修復にも使用できます。 Clair を使用してコンテナの脆弱性を修復する手順は次のとおりです。

(1) まず、Clair

docker run -p 6060:6060 -d --name clair quay.io/coreos/clair:latest

(2) 次に、clairctl

go get -u github.com/jgsqware/clairctl

をインストールします (3)次に、clairctl を使用してコンテナをスキャンします。

clairctl analyze -l CONTAINER_NAME

(4) 最後に、clairctl を使用して修復操作を実行します。

clairctl fix -l CONTAINER_NAME

Clair は修復の提案のみを提供し、脆弱性を自動的に修復することはできないことに注意してください。したがって、修復操作は手動で行う必要があります。

概要

コンテナ セキュリティ スキャンと脆弱性修復は、コンテナ セキュリティ管理における重要なリンクです。この記事では、Docker Bench と Clair という 2 つのオープンソース ツールに基づいてコンテナーのセキュリティ スキャンと脆弱性を修復する方法を紹介し、具体的なコード例を示します。これらのツールを使用すると、コンテナ内の潜在的なセキュリティ脆弱性を迅速に発見して修復できるため、コンテナのセキュリティを確保できます。

以上がDocker を使用してコンテナーのセキュリティ スキャンと脆弱性修復を行う方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。