Questo contenuto non è disponibile nella lingua selezionata.
Chapter 15. Scanning pods for vulnerabilities
The Red Hat Quay Container Security Operator has been deprecated and is planned for removal in a future release of OpenShift Container Platform. The official replacement product of the Red Hat Quay Container Security Operator is Red Hat Advanced Cluster Security for Kubernetes.
Using the Red Hat Quay Container Security Operator, you can access vulnerability scan results from the OpenShift Container Platform web console for container images used in active pods on the cluster. The Red Hat Quay Container Security Operator:
- Watches containers associated with pods on all or specified namespaces
- Queries the container registry where the containers came from for vulnerability information, provided an image’s registry is running image scanning (such as Quay.io or a Red Hat Quay registry with Clair scanning)
-
Exposes vulnerabilities via the object in the Kubernetes API
ImageManifestVuln
Using the instructions here, the Red Hat Quay Container Security Operator is installed in the
openshift-operators
15.1. Installing the Red Hat Quay Container Security Operator Copia collegamentoCollegamento copiato negli appunti!
You can install the Red Hat Quay Container Security Operator from the OpenShift Container Platform web console Operator Hub, or by using the CLI.
Prerequisites
-
You have installed the CLI.
oc - You have administrator privileges to the OpenShift Container Platform cluster.
- You have containers that come from a Red Hat Quay or Quay.io registry running on your cluster.
Procedure
You can install the Red Hat Quay Container Security Operator by using the OpenShift Container Platform web console:
-
On the web console, navigate to Operators
OperatorHub and select Security. - Select the Red Hat Quay Container Security Operator Operator, and then select Install.
-
On the Red Hat Quay Container Security Operator page, select Install. Update channel, Installation mode, and Update approval are selected automatically. The Installed Namespace field defaults to . You can adjust these settings as needed.
openshift-operators - Select Install. The Red Hat Quay Container Security Operator appears after a few moments on the Installed Operators page.
Optional: You can add custom certificates to the Red Hat Quay Container Security Operator. For example, create a certificate named
in the current directory. Then, run the following command to add the custom certificate to the Red Hat Quay Container Security Operator:quay.crt$ oc create secret generic container-security-operator-extra-certs --from-file=quay.crt -n openshift-operators- Optional: If you added a custom certificate, restart the Red Hat Quay Container Security Operator pod for the new certificates to take effect.
-
On the web console, navigate to Operators
Alternatively, you can install the Red Hat Quay Container Security Operator by using the CLI:
Retrieve the latest version of the Container Security Operator and its channel by entering the following command:
$ oc get packagemanifests container-security-operator \ -o jsonpath='{range .status.channels[*]}{@.currentCSV} {@.name}{"\n"}{end}' \ | awk '{print "STARTING_CSV=" $1 " CHANNEL=" $2 }' \ | sort -Vr \ | head -1Example output
STARTING_CSV=container-security-operator.v3.8.9 CHANNEL=stable-3.8Using the output from the previous command, create a
custom resource for the Red Hat Quay Container Security Operator and save it asSubscription. For example:container-security-operator.yamlapiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: container-security-operator namespace: openshift-operators spec: channel: ${CHANNEL}1 installPlanApproval: Automatic name: container-security-operator source: redhat-operators sourceNamespace: openshift-marketplace startingCSV: ${STARTING_CSV}2 Enter the following command to apply the configuration:
$ oc apply -f container-security-operator.yamlExample output
subscription.operators.coreos.com/container-security-operator created
15.2. Using the Red Hat Quay Container Security Operator Copia collegamentoCollegamento copiato negli appunti!
The following procedure shows you how to use the Red Hat Quay Container Security Operator.
Prerequisites
- You have installed the Red Hat Quay Container Security Operator.
Procedure
-
On the OpenShift Container Platform web console, navigate to Home
Overview. Under the Status section, Image Vulnerabilities provides the number of vulnerabilities found. - Click Image Vulnerabilities to reveal the Image Vulnerabilities breakdown tab, which details the severity of the vulnerabilities, whether the vulnerabilities can be fixed, and the total number of vulnerabilities.
You can address detected vulnerabilities in one of two ways:
- Select a link under the Vulnerabilities section. This takes you to the container registry that the container came from, where you can see information about the vulnerability.
- Select the namespace link. This takes you to the Image Manifest Vulnerabilities page, where you can see the name of the selected image and all of the namespaces where that image is running.
After you have learned what images are vulnerable, how to fix those vulnerabilities, and the namespaces that the images are being run in, you can improve security by performing the following actions:
- Alert anyone in your organization who is running the image and request that they correct the vulnerability.
Stop the images from running by deleting the deployment or other object that started the pod that the image is in.
NoteIf you delete the pod, it might take several minutes for the vulnerability information to reset on the dashboard.
15.3. Querying image vulnerabilities from the CLI Copia collegamentoCollegamento copiato negli appunti!
Using the
oc
Prerequisites
- You have installed the Red Hat Quay Container Security Operator on your OpenShift Container Platform instance.
Procedure
Enter the following command to query for detected container image vulnerabilities:
$ oc get vuln --all-namespacesExample output
NAMESPACE NAME AGE default sha256.ca90... 6m56s skynet sha256.ca90... 9m37sTo display details for a particular vulnerability, append the vulnerability name and its namespace to the
command. The following example shows an active container whose image includes an RPM package with a vulnerability:oc describe$ oc describe vuln --namespace mynamespace sha256.ac50e3752...Example output
Name: sha256.ac50e3752... Namespace: quay-enterprise ... Spec: Features: Name: nss-util Namespace Name: centos:7 Version: 3.44.0-3.el7 Versionformat: rpm Vulnerabilities: Description: Network Security Services (NSS) is a set of libraries...
15.4. Uninstalling the Red Hat Quay Container Security Operator Copia collegamentoCollegamento copiato negli appunti!
To uninstall the Container Security Operator, you must uninstall the Operator and delete the
imagemanifestvulns.secscan.quay.redhat.com
Procedure
-
On the OpenShift Container Platform web console, click Operators
Installed Operators. -
Click the menu
of the Container Security Operator.
- Click Uninstall Operator.
- Confirm your decision by clicking Uninstall in the popup window.
Use the CLI to delete the
CRD.imagemanifestvulns.secscan.quay.redhat.comRemove the
custom resource definition by entering the following command:imagemanifestvulns.secscan.quay.redhat.com$ oc delete customresourcedefinition imagemanifestvulns.secscan.quay.redhat.comExample output
customresourcedefinition.apiextensions.k8s.io "imagemanifestvulns.secscan.quay.redhat.com" deleted