5장. Compliance Operator
5.1. Compliance Operator 릴리스 정보
OpenShift Container Platform 관리자는 Compliance Operator를 통해 클러스터의 필수 규정 준수 상태를 설명하고 격차에 대한 개요와 문제를 해결하는 방법을 제공할 수 있습니다.
이 릴리스 노트는 OpenShift Container Platform의 Compliance Operator 개발을 추적합니다.
Compliance Operator에 대한 개요는 Compliance Operator 이해를 참조하십시오.
최신 릴리스에 액세스하려면 Compliance Operator 업데이트를 참조하십시오.
5.1.1. OpenShift Compliance Operator 1.1.0
OpenShift Compliance Operator 1.1.0에 대해 다음 권고를 사용할 수 있습니다.
5.1.1.1. 새로운 기능 및 개선 사항
-
이제
ComplianceScan
CRD(사용자 정의 리소스 정의) 상태에서 시작 및 종료 타임스탬프를 사용할 수 있습니다. -
Compliance Operator는
서브스크립션
파일을 생성하여 OperatorHub를 사용하여 호스팅 컨트롤 플레인에 배포할 수 있습니다. 자세한 내용은 호스팅 컨트롤 플레인에 Compliance Operator 설치를 참조하십시오.
5.1.1.2. 버그 수정
이번 업데이트 이전에는 일부 Compliance Operator 규칙 지침이 표시되지 않았습니다. 이번 업데이트 후 다음 규칙에 대한 지침이 개선되었습니다.
-
classification_banner
-
oauth_login_template_set
-
oauth_logout_url_set
-
oauth_provider_selection_set
-
ocp_allowed_registries
ocp_allowed_registries_for_import
-
이번 업데이트 이전에는 정확성 및 규칙 지침이 명확하지 않았습니다. 이번 업데이트 후 다음
sysctl
규칙에 대해 검사 정확도와 지침이 개선되었습니다.-
kubelet-enable-protect-kernel-sysctl
-
kubelet-enable-protect-kernel-sysctl-kernel-keys-root-maxbytes
-
kubelet-enable-protect-kernel-sysctl-kernel-keys-root-maxkeys
-
kubelet-enable-protect-kernel-sysctl-kernel-panic
-
kubelet-enable-protect-kernel-sysctl-kernel-panic-on-oops
-
kubelet-enable-protect-kernel-sysctl-vm-overcommit-memory
kubelet-enable-protect-kernel-sysctl-vm-panic-on-oom
-
-
이번 업데이트 이전에는
ocp4-alert-receiver-configured
규칙에 지침이 포함되어 있지 않았습니다. 이번 업데이트를 통해 이제ocp4-alert-receiver 구성
규칙에 향상된 지침이 포함되어 있습니다. (OCPBUGS-7307) -
이번 업데이트 이전에는
rhcos4-sshd-set-loglevel-info
규칙이rhcos4-e8
프로필에 대해 실패했습니다. 이번 업데이트를 통해sshd-set-loglevel-info
규칙에 대한 수정이 올바른 구성 변경 사항을 적용하도록 업데이트되어 수정을 적용한 후 후속 검사가 통과할 수 있습니다. (OCPBUGS-7816) -
이번 업데이트 이전에는 최신 Compliance Operator 설치가 포함된 OpenShift Container Platform의 새 설치가
scheduler-no-bind-address
규칙에서 실패했습니다. 이번 업데이트를 통해 매개변수가 제거된 이후 최신 버전의 OpenShift Container Platform에서scheduler-no-bind-address
규칙이 비활성화되어 있습니다. (OCPBUGS-8347)
5.1.2. OpenShift Compliance Operator 1.0.0
OpenShift Compliance Operator 1.0.0에서 다음 권고를 사용할 수 있습니다.
5.1.2.1. 새로운 기능 및 개선 사항
-
이제 Compliance Operator가 안정되어 릴리스 채널이
stable
으로 업그레이드되었습니다. 향후 릴리스에서는 Semantic Versioning 을 따릅니다. 최신 릴리스에 액세스하려면 Compliance Operator 업데이트를 참조하십시오.
5.1.2.2. 버그 수정
- 이번 업데이트 이전에는 compliance_operator_compliance_scan_error_total 메트릭에 각 오류 메시지에 대해 다른 값이 있는 ERROR 레이블이 있었습니다. 이번 업데이트를 통해 compliance_operator_compliance_scan_error_total 메트릭이 값을 늘리지 않습니다. (OCPBUGS-1803)
-
이번 업데이트 이전에는
ocp4-api-server-audit-log-maxsize
규칙으로 인해FAIL
상태가 발생했습니다. 이번 업데이트를 통해 메트릭에서 오류 메시지가 제거되어 모범 사례에 따라 지표의 카디널리티가 감소합니다. (OCPBUGS-7520) -
이번 업데이트 이전에는
rhcos4-enable-fips-mode
규칙 설명이 설치 후 FIPS를 활성화할 수 있음을 잘못 입력했습니다. 이번 업데이트를 통해rhcos4-enable-fips-mode
규칙 설명은 설치 시 FIPS를 활성화해야 함을 명확히 설명합니다. (OCPBUGS-8358)
5.1.3. OpenShift Compliance Operator 0.1.61
OpenShift Compliance Operator 0.1.61에는 다음 권고를 사용할 수 있습니다.
5.1.3.1. 새로운 기능 및 개선 사항
-
Compliance Operator는 스캐너 Pod에 대한 시간 제한 구성을 지원합니다. 타임아웃은
ScanSetting
오브젝트에 지정됩니다. 시간 제한 내에 검사가 완료되지 않으면 최대 재시도 횟수에 도달할 때까지 검사가 다시 시도합니다. 자세한 내용은 ScanSetting 타임아웃 구성 을 참조하십시오.
5.1.3.2. 버그 수정
-
이번 업데이트 이전에는 Compliance Operator에서 변수를 입력으로 수정해야 합니다. 변수 세트가 없는 수정을 통해 클러스터 전체에 적용되어 수정 사항이 올바르게 적용된 경우에도 노드가 중단되었습니다. 이번 업데이트를 통해 Compliance Operator는 수정을 위해
TailoredProfile
을 사용하여 변수를 제공해야 하는지 확인합니다. (OCPBUGS-3864) -
이번 업데이트 이전에는
ocp4-kubelet-configure-tls-cipher-suites
에 대한 지침이 불완전하여 사용자가 수동으로 쿼리를 구체화해야 했습니다. 이번 업데이트를 통해ocp4-kubelet-configure-tls-cipher-suites
에 제공된 쿼리는 실제 결과를 반환하여 감사 단계를 수행합니다. (OCPBUGS-3017) -
이번 업데이트 이전에는
settingRef
변수 없이 생성된ScanSettingBinding
오브젝트에서 적절한 기본값을 사용하지 않았습니다. 이번 업데이트를 통해settingRef
변수가 없는ScanSettingBinding
오브젝트는기본값
을 사용합니다. (OCPBUGS-3420) - 이번 업데이트 이전에는 kubelet 구성 파일에 시스템 예약된 매개변수가 생성되지 않아 Compliance Operator가 머신 구성 풀의 일시 정지를 해제하지 못했습니다. 이번 업데이트를 통해 Compliance Operator는 머신 구성 풀 평가 중에 시스템 예약된 매개변수를 생략합니다. (OCPBUGS-4445)
-
이번 업데이트 이전에는
ComplianceCheckResult
오브젝트에 올바른 설명이 없었습니다. 이번 업데이트를 통해 Compliance Operator는 규칙 설명에서ComplianceCheckResult
정보를 제공합니다. (OCPBUGS-4615) - 이번 업데이트 이전에는 머신 구성을 구문 분석할 때 Compliance Operator에서 빈 kubelet 구성 파일을 확인하지 않았습니다. 그 결과 Compliance Operator가 패닉 상태가 되고 충돌합니다. 이번 업데이트를 통해 Compliance Operator는 kubelet 구성 데이터 구조 검사를 개선하여 구현하며 완전히 렌더링된 경우에만 계속됩니다. (OCPBUGS-4621)
- 이번 업데이트 이전에는 Compliance Operator에서 머신 구성 풀 이름과 유예 기간에 따라 kubelet 제거 수정이 생성되어 단일 제거 규칙에 대한 여러 수정이 수행됩니다. 이번 업데이트를 통해 Compliance Operator는 단일 규칙에 모든 수정을 적용합니다. (OCPBUGS-4338)
-
이번 업데이트 이전에는 수정 콘텐츠가 변경되지 않더라도 다시 검사한 후
이전에
적용된
수정에 대해 검사를 다시 실행할 수 있습니다. 검사 비교에서 수정 메타데이터가 올바르게 고려되지 않았습니다. 이번 업데이트를 통해 수정은 이전에 생성된적용된
상태를 유지합니다. (OCPBUGS-6710) -
이번 업데이트 이전에는 기본이 아닌
MachineConfigPool
과ScanSettingBinding
을Failed
로 표시한TailoredProfile
을 사용하는ScanSettingBinding
을 만들려고 할 때 회귀 문제가 발생했습니다. 이번 업데이트를 통해TailoredProfile
을 사용하는 기능이 복원되고 사용자 지정ScanSettingBinding
이 올바르게 수행됩니다. (OCPBUGS-6827) 이번 업데이트 이전에는 일부 kubelet 구성 매개변수에 기본값이 없었습니다. 이번 업데이트를 통해 다음 매개변수에는 기본값(OCPBUGS-6708)이 포함됩니다.
-
ocp4-cis-kubelet-enable-streaming-connections
-
ocp4-cis-kubelet-eviction-thresholds-set-hard-imagefs-available
-
ocp4-cis-kubelet-eviction-thresholds-set-hard-imagefs-inodesfree
-
ocp4-cis-kubelet-eviction-thresholds-set-hard-memory-available
-
ocp4-cis-kubelet-eviction-thresholds-set-hard-nodefs-available
-
-
이번 업데이트 이전에는 kubelet을 실행하는 데 필요한 권한으로 인해
selinux_confinement_of_daemons
규칙이 kubelet에서 실행되지 못했습니다. 이번 업데이트를 통해selinux_confinement_of_daemons
규칙이 비활성화됩니다. (OCPBUGS-6968)
5.1.4. OpenShift Compliance Operator 0.1.59
OpenShift Compliance Operator 0.1.59에는 다음 권고를 사용할 수 있습니다.
5.1.4.1. 새로운 기능 및 개선 사항
-
Compliance Operator는 이제
ppc64le
아키텍처에서 Card Industry Data Security Standard(PCI-DSS)ocp4-pci-dss
및ocp4-pci-dss-node
프로필을 지원합니다.
5.1.4.2. 버그 수정
-
이전에는 Compliance Operator에서 PCI DSS(PCI DSS)
ocp4-pci-dss
및ocp4-pci-dss-node
프로필을ppc64le
과 같은 다른 아키텍처에서 지원하지 않았습니다. 이제 Compliance Operator에서ppc64le
아키텍처에서ocp4-pci-dss
및ocp4-pci-dss-node
프로필을 지원합니다. (OCPBUGS-3252) -
이전 버전에서는 버전 0.1.57로 업데이트한 후
재실행
자 서비스 계정(SA)이 더 이상 CSV(클러스터 서비스 버전)에 속하지 않아 Operator 업그레이드 중에 SA가 제거되었습니다. 이제 CSV에서 0.1.59에서재실행
SA를 소유하고 있으며 이전 버전의 업그레이드로 인해 SA가 누락되지 않습니다. (OCPBUGS-3452) -
0.1.57에서 Operator는 포트
8080
에서 수신 대기하는 컨트롤러 메트릭 끝점을 시작합니다. 이로 인해 클러스터 모니터링 예상 포트가8383
이므로TargetDown
경고가 발생했습니다. 0.1.59를 사용하면 Operator가 예상대로 포트8383
에서 수신 대기 중인 끝점을 시작합니다. (OCPBUGS-3097)
5.1.5. OpenShift Compliance Operator 0.1.57
OpenShift Compliance Operator 0.1.57에는 다음 권고를 사용할 수 있습니다.
5.1.5.1. 새로운 기능 및 개선 사항
-
KubeletConfig
검사가Node
에서플랫폼
유형으로 변경되었습니다.KubeletConfig
는KubeletConfig
의 기본 구성을 확인합니다. 구성 파일은 모든 노드에서 노드 풀당 단일 위치로 집계됩니다. 기본 구성 값에 대해KubeletConfig
규칙 평가에서 참조하십시오. -
이제
ScanSetting
사용자 정의 리소스를 사용하면scanLimits
특성을 통해 스캐너 Pod의 기본 CPU 및 메모리 제한을 덮어쓸 수 있습니다. 자세한 내용은 Compliance Operator 리소스 제한 증분을 참조하십시오. -
이제
PriorityClass
오브젝트를ScanSetting
을 통해 설정할 수 있습니다. 이렇게 하면 Compliance Operator의 우선 순위가 지정되고 클러스터가 규정 준수가 중단될 가능성을 최소화할 수 있습니다. 자세한 내용은ScanSetting
검사에 대한PriorityClass
설정을 참조하십시오.
5.1.5.2. 버그 수정
-
이전에는 Compliance Operator에서 기본
openshift-compliance
네임스페이스에 대한 알림을 하드 코딩했습니다. Operator가 기본이 아닌 네임스페이스에 설치된 경우 알림이 예상대로 작동하지 않습니다. 이제 알림은 기본이 아닌openshift-compliance
네임스페이스에서 작동합니다. (BZ#2060726) - 이전 버전에서는 Compliance Operator에서 kubelet 오브젝트에서 사용하는 기본 구성을 평가할 수 없어 부정확한 결과 및 잘못된 긍정이 발생했습니다. 이 새 기능은 kubelet 구성을 평가하고 이제 정확하게 보고합니다. (BZ#2075041)
-
이전에는
eventRecordQPS
값이 기본값보다 크게 설정되었기 때문에 자동 수정을 적용한 후 Compliance Operator에서ocp4-kubelet-configure-event-creation
규칙을FAIL
상태로 보고했습니다. 이제ocp4-kubelet-configure-event-creation
규칙 업데이트 적용이 기본값을 설정하고 규칙이 올바르게 적용됩니다. (BZ#2082416) -
ocp4-configure-network-policies
규칙은 효과적으로 수행하기 위해 수동 개입이 필요합니다. 새로운 설명 지침 및 규칙 업데이트는 Calico CNI를 사용하여 클러스터에 대한ocp4-configure-network-policies
규칙의 적용 가능성을 높입니다. (BZ#2091794) -
이전에는 Compliance Operator에서 검사 설정에서
debug=true
옵션을 사용할 때 인프라를 검사하는 데 사용된 Pod를 정리하지 않았습니다. 이로 인해ScanSettingBinding
을 삭제한 후에도 Pod가 클러스터에 남아 있었습니다. 이제ScanSettingBinding
이 삭제될 때 항상 Pod가 삭제됩니다. (BZ#2092913) -
이전 버전에서는 Compliance Operator에서 더 이상 사용되지 않는 기능에 대한 경고를 유발하는 이전 버전의
operator-sdk
명령을 사용했습니다. 이제 업데이트된operator-sdk
명령이 포함되어 더 이상 사용되지 않는 기능에 대한 경고가 없습니다. (BZ#2098581) - 이전에는 kubelet과 머신 구성 간의 관계를 확인할 수 없는 경우 Compliance Operator에서 수정을 적용하지 못했습니다. 이제 Compliance Operator에서 머신 구성 처리를 개선했으며 kubelet 구성이 머신 구성 서브 세트인지 확인할 수 있습니다. (BZ#2102511)
-
이전에는
ocp4-cis-node-master-kubelet-enable-cert-rotation
에 대한 규칙이 성공 기준을 올바르게 설명하지 않았습니다. 그 결과RotateKubeletClientCertificate
에 대한 요구 사항이 명확하지 않았습니다. 이제 kubelet 구성 파일에 있는 구성과 관계없이ocp4-cis-node-master-kubelet-enable-cert-rotation
에 대한 규칙이 정확하게 보고합니다. (BZ#2105153) - 이전에는 유휴 스트리밍 타임아웃을 확인하는 규칙이 기본값을 고려하지 않아 잘못된 규칙 보고가 발생했습니다. 이제 더 강력한 검사를 통해 기본 구성 값을 기반으로 결과의 정확성을 높일 수 있습니다. (BZ#2105878)
-
이전 버전에서는 Ignition 사양 없이 머신 구성을 구문 분석할 때 Compliance Operator에서 API 리소스를 가져오지 않아
api-check-pods
프로세스가 크래시 루프가 발생했습니다. 이제 Compliance Operator에서 Ignition 사양이 올바르게 없는 Machine Config Pool을 처리합니다. (BZ#2117268) -
이전에는
modprobe
구성 값에 일치하지 않기 때문에 수정을 적용한 후에도modprobe
구성을 평가하는 규칙이 실패했습니다. 이제 검사 및 수정의modprobe
구성에 동일한 값을 사용하여 일관된 결과를 보장합니다. (BZ#2117747)
5.1.5.3. Deprecations
-
클러스터의 모든 네임스페이스에 설치를 지정하거나
WATCH_NAMESPACES
환경 변수를""
로 설정하면 더 이상 모든 네임스페이스에 영향을 미치지 않습니다. Compliance Operator 설치 시 지정되지 않은 네임스페이스에 설치된 API 리소스가 더 이상 작동하지 않습니다. 선택한 네임스페이스에서 API 리소스를 생성해야 하거나 기본적으로openshift-compliance
네임스페이스를 생성해야 할 수 있습니다. 이러한 변경으로 Compliance Operator의 메모리 사용량이 향상됩니다.
5.1.6. OpenShift Compliance Operator 0.1.53
OpenShift Compliance Operator 0.1.53에서 다음 권고를 사용할 수 있습니다.
5.1.6.1. 버그 수정
-
이전에는
ocp4-kubelet-enable-streaming-connections
규칙에 잘못된 변수 비교가 포함되어 있어 잘못된 검사 결과가 발생했습니다. 이제streamingConnectionIdleTimeout
을 설정할 때 Compliance Operator에서 정확한 검사 결과를 제공합니다. (BZ#2069891) -
이전에는 IBM Z 아키텍처에서
/etc/openvswitch/conf.db
의 그룹 소유권이 올바르지 않아ocp4-cis-node-worker-file-groupowner-ovs-conf-db
검사 오류가 발생했습니다. 이제 IBM Z 아키텍처 시스템에서확인이 NO-APPLICABLE
으로 표시됩니다. (BZ#2072597) -
이전 버전에서는 배포의 SCC(보안 컨텍스트 제약 조건) 규칙에 대한 불완전한 데이터로 인해
ocp4-cis-scc-limit-container-allowed-capabilities
규칙이FAIL
상태로 보고되었습니다. 이제 결과가MANUAL
이므로 사람의 개입이 필요한 다른 검사와 일치합니다. (BZ#2077916) 이전 버전에서는 다음 규칙에서 API 서버 및 TLS 인증서 및 키에 대한 추가 구성 경로를 고려하지 않아 인증서 및 키가 올바르게 설정된 경우에도 보고된 오류가 발생했습니다.
-
ocp4-cis-api-server-kubelet-client-cert
-
ocp4-cis-api-server-kubelet-client-key
-
ocp4-cis-kubelet-configure-tls-cert
-
ocp4-cis-kubelet-configure-tls-key
이제 규칙에서 정확히 보고하고 kubelet 구성 파일에 지정된 레거시 파일 경로를 관찰합니다. (BZ#2079813)
-
-
이전 버전에서는 시간 초과
에 대한 규정 준수를 평가할 때 배포에 설정된 구성 가능한 타임아웃을 고려하지 않은 content_rule_oauth_or_oauthclient
_timeout 규칙이 배포에서 설정한 구성 가능한 타임아웃을 고려하지 않았습니다. 이로 인해 시간 초과가 유효한 경우에도 규칙이 실패했습니다. 이제 Compliance Operator에서var_oauth_inactivity_timeout
변수를 사용하여 유효한 타임아웃 길이를 설정합니다. (BZ#2081952) - 이전 버전에서는 Compliance Operator에서 권한 있는 사용을 위해 적절하게 레이블이 지정되지 않은 네임스페이스에 관리 권한을 사용하여 Pod 보안 수준 위반에 대한 경고 메시지가 표시되었습니다. 이제 Compliance Operator에 권한을 위반하지 않고 적절한 네임스페이스 라벨 및 액세스 권한 조정이 있습니다. (BZ#2088202)
-
이전 버전에서는
rhcos4-high-master-sysctl-kernel-kernel-ptrace-scope
및rhcos4-sysctl-kernel-core-pattern
에 대한 자동 수정을 적용하면 수정되어도 검사 결과에 해당 규칙이 나중에 실패할 수 있었습니다. 이제 수정 사항이 적용된 후에도 규칙을 정확하게 보고합니다. (BZ#2094382) -
이전에는 메모리 부족 예외로 인해 Compliance Operator가
CrashLoopBackoff
상태에서 실패했습니다. 이제 메모리에서 대규모 머신 구성 데이터 세트를 처리하고 올바르게 작동하도록 Compliance Operator가 개선되었습니다. (BZ#2094854)
5.1.6.2. 알려진 문제
"debug":true
가ScanSettingBinding
오브젝트 내에 설정된 경우ScanSettingBinding
오브젝트에서 생성한 Pod는 해당 바인딩이 삭제될 때 제거되지 않습니다. 이 문제를 해결하려면 다음 명령을 실행하여 나머지 Pod를 삭제합니다.$ oc delete pods -l compliance.openshift.io/scan-name=ocp4-cis
5.1.7. OpenShift Compliance Operator 0.1.52
OpenShift Compliance Operator 0.1.52에는 다음 권고를 사용할 수 있습니다.
5.1.7.1. 새로운 기능 및 개선 사항
- 이제 OpenShift Container Platform 환경에서 FedRAMP 높은 SCAP 프로필을 사용할 수 있습니다. 자세한 내용은 지원되는 규정 준수 프로필을 참조하십시오.
5.1.7.2. 버그 수정
-
이전에는
DAC_OVERRIDE
기능이 삭제된 보안 환경의 마운트 권한 문제로 인해OpenScap
컨테이너가 충돌했습니다. 이제 실행 가능한 마운트 권한이 모든 사용자에게 적용됩니다. (BZ#2082151) -
이전에는 규정 준수 규칙
ocp4-configure-network-policies
를MANUAL
로 구성할 수 있었습니다. 이제 규정 준수 규칙ocp4-configure-network-policies
가AUTOMATIC
로 설정됩니다. (BZ#2072431) - 이전에는 Compliance Operator 검사 Pod가 검사 후 제거되지 않았기 때문에 Cluster Autoscaler를 축소하지 못했습니다. 이제 디버깅 목적으로 명시적으로 저장되지 않는 한 기본적으로 Pod가 각 노드에서 제거됩니다. (BZ#2075029)
-
이전 버전에서는 Compliance Operator를
KubeletConfig
에 적용하면 Machine Config Pool이 일시 중지되지 않아 노드가NotReady
상태가 되었습니다. 이제 Machine Config Pool이 제대로 일시 중지되지 않고 노드가 올바르게 작동합니다. (BZ#2071854) -
이전 버전에서는 Machine Config Operator에서 최신 릴리스에서
url로 인코딩된
코드 대신base64
를 사용하여 Compliance Operator 수정이 실패했습니다. 이제 Compliance Operator에서base64
및url로 인코딩된
Machine Config 코드를 모두 처리하도록 인코딩을 확인하고 수정 사항이 올바르게 적용됩니다. (BZ#2082431)
5.1.7.3. 알려진 문제
"debug":true
가ScanSettingBinding
오브젝트 내에 설정된 경우ScanSettingBinding
오브젝트에서 생성한 Pod는 해당 바인딩이 삭제될 때 제거되지 않습니다. 이 문제를 해결하려면 다음 명령을 실행하여 나머지 Pod를 삭제합니다.$ oc delete pods -l compliance.openshift.io/scan-name=ocp4-cis
5.1.8. OpenShift Compliance Operator 0.1.49
OpenShift Compliance Operator 0.1.49에서는 다음 권고를 사용할 수 있습니다.
5.1.8.1. 새로운 기능 및 개선 사항
다음 아키텍처에서 Compliance Operator가 지원됩니다.
- IBM Power
- IBM Z
- IBM LinuxONE
5.1.8.2. 버그 수정
-
이전에는
openshift-compliance
콘텐츠에 네트워크 유형에 대한 플랫폼별 점검이 포함되지 않았습니다. 결과적으로 네트워크 구성에 따라적용되지 않는
대신 OVN 및 SDN 관련 검사가실패로
표시됩니다. 이제 새로운 규칙에는 네트워킹 규칙에 대한 플랫폼 점검이 포함되어 있어 네트워크별 검사를 보다 정확하게 평가할 수 있게 되었습니다. (BZ#1994609) -
이전 버전에서는 연결에 SSL/TLS 프로토콜인
ocp4-moderate-routes-protected-by-tls
규칙에서 규칙이 확인되지 않은 TLS 설정을 잘못 검사했습니다. 이제 검사에서 네트워킹 지침 및 프로필 권장 사항과 일치하는 TLS 설정을 올바르게 평가합니다. (BZ#2002695) -
이전에는
ocp-cis-configure-network-policies-namespace
에서 네임스페이스를 요청할 때 페이지 매김을 사용했습니다. 이로 인해 배포에서 500개 이상의 네임스페이스 목록을 줄였습니다. 이제 전체 네임스페이스 목록이 요청되고 구성된 네트워크 정책을 확인하는 규칙이 네임스페이스가 500개 이상인 배포에 대해 작동합니다. (BZ#2038909) -
이전에는
sshd jinja
매크로를 사용한 수정이 특정 sshd 구성으로 하드 코딩되었습니다. 그 결과 규칙이 확인하는 내용과 구성이 일치하지 않고 검사가 실패했습니다. 이제 sshd 구성이 매개 변수화되어 규칙이 성공적으로 적용됩니다. (BZ#2049141) -
이전에는
ocp4-cluster-version-operator-verify-integrity
에서 CVO(Cluter Version Operator) 기록에서 첫 번째 항목을 항상 확인했습니다. 이로 인해 후속 버전의 {product-name}이(가) 확인되는 상황에서 업그레이드가 실패합니다. 이제ocp4-cluster-version-operator-verify-integrity
에 대한 컴플라이언스 검사 결과가 확인된 버전을 감지할 수 있으며 CVO 내역으로 정확합니다. (BZ#2053602) -
이전에는
ocp4-api-server-no-adm-ctrl-plugins-disabled
규칙에서 빈 승인 컨트롤러 플러그인 목록을 확인하지 않았습니다. 결과적으로 모든 승인 플러그인이 활성화된 경우에도 규칙이 항상 실패합니다. 이제ocp4-api-server-no-adm-ctrl-plugins-disabled
규칙을 보다 강력하게 점검하면 모든 허용 컨트롤러 플러그인이 활성화됩니다. (BZ#2058631) - 이전에는 검사에 Linux 작업자 노드에 대한 플랫폼 점검이 포함되지 않았습니다. 결과적으로 Linux가 아닌 작업자 노드에 대해 검사를 실행하면 검사 루프가 끝나지 않았습니다. 이제 검사에서 플랫폼 유형 및 레이블이 성공적으로 완료되었음을 기반으로 적절하게 예약됩니다. (BZ#2056911)
5.1.9. OpenShift Compliance Operator 0.1.48
OpenShift Compliance Operator 0.1.48에서는 다음 권고를 사용할 수 있습니다.
5.1.9.1. 버그 수정
-
이전에는 연장된 OVAL(Open Vulnerability and Assessment Language) 정의와 관련된 일부 규칙의
checkType
은None
이었습니다. 이는 규칙을 구문 분석할 때 Compliance Operator에서 확장된 OVAL 정의를 처리하지 않았기 때문입니다. 이번 업데이트를 통해 확장된 OVAL 정의의 콘텐츠가 구문 분석되어 이제 이러한 규칙에노드
또는Platform
의checkType
이 있습니다. (BZ#2040282) -
이전 버전에서는
KubeletConfig
용MachineConfig
오브젝트를 수동으로 생성한 경우 수정을 위해KubeletConfig
오브젝트가 생성되지 않아 수정을Pending
상태로 유지할 수 있었습니다. 이번 릴리스에서는KubeletConfig
에 대해 수동으로 생성된MachineConfig
오브젝트가 있는지 여부에 관계없이 수정을 통해KubeletConfig
오브젝트를 생성합니다. 결과적으로KubeletConfig
수정이 예상대로 작동합니다. (BZ#2040401)
5.1.10. OpenShift Compliance Operator 0.1.47
OpenShift Compliance Operator 0.1.47에서 다음 권고를 사용할 수 있습니다.
5.1.10.1. 새로운 기능 및 개선 사항
Compliance Operator는 PCI DSS(Cayment Card Industry Data Security Standard)에 대해 다음과 같은 규정 준수 벤치마크를 지원합니다.
- ocp4-pci-dss
- ocp4-pci-dss-node
- FedRAMP 중간 영향 수준에 대한 추가 규칙 및 수정이 OCP4-moderate, OCP4-moderate-node 및 rhcos4-moderate 프로필에 추가됩니다.
- KubeletConfig에 대한 수정을 노드 수준 프로필에서 사용할 수 있습니다.
5.1.10.2. 버그 수정
이전 버전에서는 클러스터가 OpenShift Container Platform 4.6 또는 이전 버전을 실행 중인 경우 중간 프로필에 대한 USBGuard 관련 규칙에 대한 수정이 실패했습니다. 이는 Compliance Operator에서 생성한 수정 사항이 드롭인 디렉터리를 지원하지 않는 이전 버전의 USBGuard를 기반으로 하기 때문입니다. 이제 OpenShift Container Platform 4.6을 실행하는 클러스터에 USBGuard 관련 규칙에 대한 잘못된 수정이 생성되지 않습니다. 클러스터가 OpenShift Container Platform 4.6을 사용하는 경우 USBGuard 관련 규칙에 대한 수정을 수동으로 생성해야 합니다.
또한 최소 버전 요구 사항을 충족하는 규칙에 대해서만 수정이 생성됩니다. (BZ#1965511)
-
이전 버전에서는 수정을 렌더링할 때 규정 준수 Operator에서 너무 엄격한 정규식을 사용하여 수정이 잘 구성되었는지 확인했습니다. 결과적으로
sshd_config
를 렌더링하는 것과 같은 일부 수정이 정규식 검사를 통과하지 않았기 때문에 생성되지 않았습니다. 정규 표현식은 불필요하고 삭제된 것으로 확인되었습니다. 수정이 올바르게 렌더링됩니다. (BZ#2033009)
5.1.11. OpenShift Compliance Operator 0.1.44
OpenShift Compliance Operator 0.1.44에 대해 다음 권고를 사용할 수 있습니다.
5.1.11.1. 새로운 기능 및 개선 사항
-
이번 릴리스에서는
ComplianceScan
,ComplianceSuite
및ScanSetting
CR에strictNodeScan
옵션이 추가되었습니다. 이 옵션은 노드에서 검색을 예약할 수 없는 경우 오류가 발생한 이전 동작과 일치하는true
로 기본 설정됩니다. 옵션을false
로 설정하면 Compliance Operator가 스케줄링 검사에 대해 더 관대해질 수 있습니다. 임시 노드가 있는 환경에서는strictNodeScan
값을 false로 설정할 수 있으므로 클러스터의 일부 노드를 예약할 수 없는 경우에도 규정 준수 검사를 진행할 수 있습니다. -
이제
ScanSetting
오브젝트의nodeSelector
및tolerations
속성을 구성하여 결과 서버 워크로드를 예약하는 데 사용되는 노드를 사용자 지정할 수 있습니다. 이러한 속성은 PV 스토리지 볼륨을 마운트하고 원시 자산 보고 형식(ARF) 결과를 저장하는 데 사용되는 Pod인ResultServer
Pod를 배치하는 데 사용됩니다. 이전에는nodeSelector
및tolerations
매개변수가 컨트롤 플레인 노드 중 하나를 선택하고node-role.kubernetes.io/master taint
를 허용하는 것으로 기본 설정되었습니다. 이는 컨트롤 플레인 노드가 PV를 마운트할 수 없는 환경에서는 작동하지 않았습니다. 이 기능을 사용하면 해당 환경에서 노드를 선택하고 다른 테인트를 허용할 수 있습니다. -
Compliance Operator에서
KubeletConfig
오브젝트를 수정할 수 있습니다. - 이제 오류 메시지가 포함된 주석이 추가되어 콘텐츠 개발자가 클러스터에 존재하지 않는 오브젝트를 가져올 수 없는 오브젝트를 구별할 수 있습니다.
-
이제 rule 오브젝트에
checkType
및description
이라는 두 개의 새 속성이 포함됩니다. 이러한 속성을 사용하면 규칙과 노드 점검 또는 플랫폼 점검이 적용되는지 확인하고 규칙의 기능을 검토할 수도 있습니다. -
이번 기능 개선에서는 기존 프로필을 확장하여 맞춤형 프로필을 생성해야 하는 요구 사항을 제거합니다. 즉
TailoredProfile
CRD의extends
필드가 더 이상 필수가 아닙니다. 이제 규칙 오브젝트 목록을 선택하여 맞춤형 프로필을 생성할 수 있습니다.compliance.openshift.io/product-type:
주석을 설정하거나TailoredProfile
CR에-node
접미사를 설정하여 프로필이 노드 또는 플랫폼에 적용되는지 여부를 선택해야 합니다. -
이번 릴리스에서 Compliance Operator는 테인트와 관계없이 모든 노드에서 검사를 예약할 수 있습니다. 이전에는 검사 Pod에서
node-role.kubernetes.io/master taint
만 허용했습니다. 즉, 테인트가 없는 노드에서나node-role.kubernetes.io/master
테인트가 있는 노드에서만 실행되었습니다. 노드에 사용자 정의 테인트를 사용하는 배포에서는 해당 노드에 검사가 예약되지 않았습니다. 이제 검사 Pod에서 모든 노드 테인트를 허용합니다. 이번 릴리스에서는 Compliance Operator가 다음과 같은 북미 NERC (NERC) 보안 프로필을 지원합니다.
- ocp4-nerc-cip
- ocp4-nerc-cip-node
- rhcos4-nerc-cip
- 이번 릴리스에서는 Compliance Operator에서 Red Hat OpenShift - Node 수준, ocp4-moderate-node, 보안 프로필의 NIST 800-53 Moderate-Impact Baseline을 지원합니다.
5.1.11.2. 템플릿 및 변수 사용
- 이번 릴리스에서는 해결 템플릿에서 다중 값 변수를 허용합니다.
-
이번 업데이트를 통해 Compliance Operator는 규정 준수 프로필에 설정된 변수를 기반으로 수정을 변경할 수 있습니다. 이는 시간 제한, NTP 서버 호스트 이름 또는 유사한 배포별 값을 포함하는 수정에 유용합니다. 또한
ComplianceCheckResult
오브젝트에서 검사에서 사용된 변수를 나열하는 라벨compliance.openshift.io/check-has-value
를 사용합니다.
5.1.11.3. 버그 수정
- 이전에는 검사를 수행하는 동안 Pod의 스캐너 컨테이너 중 하나에서 예기치 않은 종료가 발생했습니다. 이번 릴리스에서 Compliance Operator는 최신 OpenSCAP 버전 1.3.5를 사용하여 충돌을 방지합니다.
-
이전 버전에서는
autoReplyRemediations
를 사용하여 수정을 적용하면 클러스터 노드 업데이트가 트리거되었습니다. 일부 수정에 필요한 입력 변수가 모두 포함되지 않은 경우 이로 인해 중단되었습니다. 이제 수정에 필요한 입력 변수가 하나 이상 누락된 경우NeedsReview
상태가 할당됩니다. 하나 이상의 수정이needsReview
상태에 있는 경우 머신 구성 풀은 일시 중지된 상태로 남아 있으며 모든 필수 변수가 설정될 때까지 수정이 적용되지 않습니다. 이렇게 하면 노드 중단을 최소화할 수 있습니다. - Prometheus 지표에 사용되는 RBAC 역할 및 역할 바인딩이 'ClusterRole' 및 'ClusterRoleBinding'으로 변경되어 사용자 지정 없이 모니터링이 작동하는지 확인합니다.
-
이전에는 프로필을 구문 분석하는 중에 오류가 발생하면 규칙 또는 변수 오브젝트가 프로필에서 제거되고 삭제되었습니다. 이제 구문 분석 중에 오류가 발생하면
profileparser
는 구문 분석이 완료될 때까지 오브젝트가 삭제되지 않도록 임시 주석으로 오브젝트에 주석을 추가합니다. (BZ#1988259) -
이전에는 맞춤형 프로필에서 제목 또는 설명이 누락된 경우 오류가 발생했습니다. XCCDF 표준에는 맞춤형 프로필에 대한 제목과 설명이 필요하므로 이제
TailoredProfile
CR에 제목 및 설명을 설정해야 합니다. -
이전에는 맞춤형 프로필을 사용할 때 특정 선택 세트만 사용하여
TailoredProfile
변수 값을 설정할 수 있었습니다. 이제 이 제한이 제거되고TailoredProfile
변수를 임의의 값으로 설정할 수 있습니다.
5.1.12. Compliance Operator 0.1.39의 릴리스 정보
OpenShift Compliance Operator 0.1.39에 대해 다음 권고를 사용할 수 있습니다.
5.1.12.1. 새로운 기능 및 개선 사항
- 이전에는 Compliance Operator에서 PCI DSS(Payment Card Industry Data Security Standard) 참조를 구문 분석할 수 없었습니다. 이제 Operator에서 PCI DSS 프로필과 함께 제공되는 컴플라이언스 콘텐츠를 구문 분석할 수 있습니다.
- 이전에는 Compliance Operator에서 보통 프로필에서 AU-5 제어 규칙을 실행할 수 없었습니다. 이제 Prometheusrules.monitoring.coreos.com 오브젝트를 읽고 보통 프로필에서 AU-5 제어를 포함하는 규칙을 실행할 수 있도록 Operator에 권한이 추가됩니다.