vRealize Automation SaltStack SecOps는 SaltStack Config용 추가 기능으로 두 개의 보안 라이브러리를 제공합니다. 두 컨텐츠 라이브러리는 보안 표준이 변경되면 정기적으로 업데이트됩니다. 보안 표준이 변경되면 컨텐츠를 자동으로 다운로드(또는 수집)하도록 구성할 수 있으며, 대부분의 표준 시스템에 권장됩니다.
다음 유형의 컨텐츠는 SaltStack SecOps의 일부로 제공됩니다.
- 규정 준수 - 인프라에 대한 자동 규정 준수 감지 및 업데이트 적용. 규정 준수 컨텐츠 라이브러리는 CIS와 같은 업계 모범 사례 보안 및 규정 준수 컨텐츠로 구성됩니다.
- 취약성 - 사용자 환경의 모든 시스템에 대한 취약성을 관리합니다. 컨텐츠 라이브러리에는 최신 CVE(일반 취약성 및 노출) 항목에 기반한 권고가 포함되어 있습니다.
라이브러리에는 컨텐츠를 수동으로 다운로드하거나 HTTP(s) 프록시를 통해 RaaS 노드에서 컨텐츠에 액세스하는 옵션이 대안으로 포함되어 있습니다. 수동 수집은 에어갭 시스템에 유용하지만 프록시를 통한 다운로드는 인터넷에서 직접 컨텐츠를 다운로드하지 않도록 하는 데 유용합니다. 프록시를 통해 다운로드하면 다운로드되는 항목과 위치를 보다 쉽게 제어하고 살펴볼 수 있습니다.
시작하기 전에
SaltStack SecOps 구성은 특정 순서로 수행해야 하는 일련의 여러 단계 중 하나인 설치 후 단계입니다. 먼저 설치 시나리오 중 하나를 완료한 후 다음과 같은 설치 후 페이지를 읽어보십시오.
Python 3 rpm 라이브러리 설치
SaltStack SecOps는 Python 3 rpm 라이브러리를 사용하여 패키지 버전을 안정적으로 비교합니다. 이러한 프로그램을 사용하려면 버전 규정 준수를 확인하거나 취약성을 평가하기 위해 이러한 라이브러리에서 제공하는 향상된 정확성이 필요합니다.
현재 RedHat 또는 CentOS 7을 사용하는 모든 미니언은 정확한 규정 준수 또는 취약성 평가를 실행하기 위해 Python 3 rpm 라이브러리가 필요할 수 있습니다. 이러한 버전의 RedHat 또는 CentOS를 사용하는 미니언에 대해 평가를 실행하려면 해당 시스템에 Python 3 rpm 라이브러리를 수동으로 설치해야 합니다.
다른 해결 방법을 사용할 수 있습니다. 다른 해결 방법이 필요하면 지원 연락처를 참조하십시오.
마스터 플러그인을 실행하는 Salt 마스터에 Python 3 rpm 라이브러리를 설치하려면:
- 다음 명령을 사용하여 EPEL 저장소를 설치합니다.
yum install -y epel-release
- Python 3 rpm 라이브러리를 설치합니다.
yum install -y python3-rpm
표준 시스템의 자동 컨텐츠 수집
에어갭 시스템이 아닌 RaaS 시스템의 경우 구성 파일의 설정에 따라 컨텐츠가 주기적으로 다운로드 및 수집됩니다. 기본적으로 자동 컨텐츠 수집은 SaltStack Config에 이미 구성되어 있으며 추가 작업이 필요하지 않습니다.
SaltStack Config를 수동으로 설치한 경우 다음 단계에 따라 자동 SaltStack SecOps 컨텐츠 수집을 구성합니다.
- RaaS 서비스 구성 파일
/etc/raas/raas
의sec
섹션에 다음을 추가하고 필요에 따라 조정합니다.sec: stats_snapshot_interval: 3600 username: secops content_url: https://enterprise.saltstack.com/secops_downloads ingest_saltstack_override: true ingest_custom_override: true locke_dir: locke post_ingest_cleanup: true download_enabled: true download_frequency: 86400 compile_stats_interval: 10 archive_interval: 300 old_policy_file_lifespan: 2 delete_old_policy_files_interval: 86400 ingest_on_boot: true content_lock_timeout: 60 content_lock_block_timeout: 120
- 파일을 저장합니다.
- RaaS 서비스를 다시 시작합니다.
systemctl restart raas
서비스가 다시 시작되면 SaltStack SecOps 컨텐츠가 다운로드되기 시작합니다. 인터넷 연결에 따라 최대 5분이 소요될 수 있습니다.
http(s) 프록시를 통해 컨텐츠 수집
프록시를 통해 수집하려면 RaaS 서비스에 대한 재정의를 생성하고, httpproxy
및 httpsproxy
에 대한 새 환경 변수를 추가해야 합니다.
https 프록시를 사용하도록 RaaS 노드를 구성하려면:
- 이전 단계를 완료하여 자동 수집을 사용하도록 설정합니다.
- 마스터의 명령줄에서 RaaS 서비스를 편집합니다.
systemctl edit raas
- 생성된 파일에 다음 줄을 추가합니다.
[Service] Environment="http_proxy=http://<hostname>:234" Environment="https_proxy=https://<hostname>:234" Environment="HTTP_PROXY=http://<hostname>:234" Environment="HTTPS_PROXY=http://<hostname>:234"
- 프록시에 암호 인증이 필요한 경우 프록시 환경 변수의 일부로 해당 부분을 설정해야 할 수 있습니다. 예를 들면 다음과 같습니다.
Environment="HTTP_PROXY=http://USER:PASSWORD@<hostname>:234"
- 프록시에서 내부 CA(인증 기관)를 사용하는 경우에는 프록시에서 사용할 수 있도록
REQUESTS_CA_BUNDLE
환경 변수를 설정해야 할 수도 있습니다. 예를 들면 다음과 같습니다.Environment="REQUESTS_CA_BUNDLE=/etc/pki/tls/certs/ca-bundle.crt"
- RaaS 서비스를 다시 시작합니다.
systemctl restart raas
서비스가 다시 시작되면 컨텐츠가 다운로드되기 시작합니다. 최대 20분이 소요될 수 있습니다.
SaltStack SecOps Compliance에 대한 수동 컨텐츠 수집
환경이 에어갭(즉, 외부 사이트에 연결하여 업데이트를 다운로드할 수 없음)인 경우 Customer Connect에서 tarball을 다운로드한 후 이를 RaaS 노드로 전송하여 SaltStack SecOps Compliance 컨텐츠를 수동으로 업데이트해야 합니다.
또한 시스템이 에어갭인 경우 RaaS 구성 파일의 다운로드 구성 설정을 False로 변경합니다.
sec: download_enabled: False
RaaS 구성 파일은 /etc/raas/raas
에 있습니다. 다음과 같은 구성 설정을 적용한 후 RaaS 서비스를 다시 시작해야 할 수도 있습니다.
systemctl restart raas
SaltStack SecOps Compliance tarball을 수동으로 수집하려면 다음을 수행합니다.
- SaltStack SecOps Compliance 컨텐츠를 다운로드합니다.
- RaaS 노드에 로그인합니다.
- 규정 준수 컨텐츠 tarball을
tmp
폴더의 RaaS 노드에 복사합니다.이 컨텐츠는 이메일 또는 기타 수단을 통해 전달될 수 있습니다.
- locke.tar.gz.e의 사용 권한이
raas:raas
로 설정되어 있는지 확인합니다. - tarball 컨텐츠를 수집합니다.
su - raas -c "raas ingest /path/to/locke.tar.gz.e"
다음이 반환됩니다.
Extracting: /tmp/locke.tar.gz -> /tmp/extracted-1551290468.5497127 Cleaning up: /tmp/extracted-1551290468.5497127 Results: {'errors': [], 'success': True}
SaltStack SecOps Vulnerability에 대한 수동 컨텐츠 수집
환경이 에어갭(즉, 외부 사이트에 연결하여 업데이트를 다운로드할 수 없음)인 경우 Customer Connect에서 tarball을 다운로드한 후 이를 RaaS 노드로 전송하여 SaltStack SecOps Vulnerability 컨텐츠를 수동으로 업데이트해야 합니다.
또한 시스템이 에어갭인 경우 RaaS 구성 파일의 다운로드 구성 설정을 False로 변경합니다.
sec: download_enabled: False
RaaS 구성 파일은 /etc/raas/raas
에 있습니다. 다음과 같은 구성 설정을 적용한 후 RaaS 서비스를 다시 시작해야 할 수도 있습니다.
systemctl restart raas
SaltStack SecOps Vulnerability tarball을 수동으로 수집하려면 다음을 수행합니다.
- SaltStack SecOps Vulnerability 컨텐츠를 다운로드합니다.
- RaaS 노드에 로그인합니다.
- 취약성 컨텐츠 tarball을
tmp
폴더의 RaaS 노드에 복사합니다.이 컨텐츠는 이메일 또는 기타 수단을 통해 전달될 수 있습니다.
- locke.tar.gz.e의 사용 권한이
raas:raas
로 설정되어 있는지 확인합니다. - tarball 컨텐츠를 수집하고, 이 명령의 tarball 이름을 tarball의 정확한 파일 이름으로 대체합니다.
su - raas -c "raas vman_ingest /tmp/vman_date_example123.tar.gz.e"
다음이 반환됩니다.
'adv': {'error': 0, 'success': 60334}, 'adv_cve_xref': {'error': 0, 'success': 243781}, 'cve': {'error': 0, 'success': 162251}, 'pkgfile': {'error': 0, 'success': 42}, 'py': {'error': 0, 'success': 7}, 'sls': {'error': 0, 'success': 3}
수동 수집 문제 해결
SaltStack SecOps Compliance 또는 SaltStack SecOps Vulnerability 컨텐츠에 대해 수동 수집 명령을 실행하려고 하면 다음과 유사한 오류 메시지가 표시될 수 있습니다.
/home/centos/locke_date_example123.tar.gz.e not found or not readable
이 오류 메시지는 tarball을 tmp
폴더에 배치하지 않을 때 종종 나타납니다. tarball을 tmp
폴더에 배치하면 문제가 해결됩니다.
Splunk 통합 설정
SaltStack Config는 취약성 라이브러리를 Splunk와 통합하여 Splunk Enterprise용 SaltStack Config 추가 기능을 사용하여 디지털 인프라를 최적화하고 보호할 수 있도록 지원합니다. 추가 기능은 Splunkbase에 제공되며 SaltStack Config 버전 6.3 이상이 필요합니다.
Splunk의 SaltStack Config 추가 기능은 25개가 넘게 고유한 SaltStack Config 메트릭을 보고하는 Prometheus 호환 메트릭 끝점을 활용합니다. 이러한 메트릭은 인프라 상태에 대한 인사이트를 제공합니다. Splunk에서 액세스하면 중단 여부를 모니터링하고 비정상적인 활동을 식별하는 데 유용합니다. 또한 SaltStack Config를 사용하여 특정 Splunk 이벤트를 기반으로 자동화된 작업을 수행할 수 있는 기능을 제공합니다.
추가 기능을 설치하고 구성하는 방법에 대한 지침은 VMware 기술 자료에서 전체 추가 기능 설명서를 참조하십시오.
SaltStack Config 메트릭 끝점에 대한 자세한 내용은 SaltStack SecOps에 대한 제품 설명서를 참조하십시오.
구성 옵션
다음 표에는 규정 준수 컨텐츠에 사용할 수 있는 구성 옵션이 설명되어 있습니다.
옵션 | 설명 |
---|---|
stats_snapshot_interval |
SaltStack SecOps Compliance 통계가 수집되는 빈도(초) |
compile_stats_interval |
SaltStack SecOps Compliance 통계가 컴파일되는 빈도(초) |
username |
가장 최근의 SaltStack SecOps Compliance 컨텐츠를 다운로드하기 위해 SaltStack Config에 연결할 때 사용할 사용자 이름(기본값: secops ) |
content_url |
SaltStack SecOps Compliance 컨텐츠를 다운로드하는 데 사용되는 URL |
ingest_override |
새 컨텐츠를 수집할 때 기존 벤치마크 및 확인 덮어쓰기(기본값: True ) |
locke_dir |
수집 시 새 컨텐츠를 찾을 것으로 예상되는 경로(기본값: locke ). 상대 경로(선행 / 없음)를 사용하는 경우 RaaS 서비스 캐시 dir /var/lib/raas/cache 에 상대적임 |
post_ingest_cleanup |
수집 후 파일 시스템에서 확장된 컨텐츠 제거(기본값: True ) |
download_enabled |
SaltStack SecOps Compliance 다운로드 허용 여부(기본값: True ). 에어갭 시스템의 경우 False 로 설정하십시오. |
download_frequency |
RaaS 서비스가 SaltStack SecOps Compliance 컨텐츠 다운로드를 시도하는 빈도(초)(기본값: 86400 - 24시간) |
ingest_on_boot |
부팅 시 RaaS 서비스가 SaltStack SecOps Compliance 다운로드를 시도할지 여부 (기본값: True ) |
content_lock_timeout |
컨텐츠 다운로드 잠금이 지속되는 시간(초)(기본값: 60 ) |
content_lock_block_timeout |
실패하기 전 컨텐츠 다운로드 잠금 차단이 지속되는 시간(초)(기본값: 120 ) |
다음 표에는 취약성 컨텐츠에 사용할 수 있는 구성 옵션이 설명되어 있습니다.
옵션 | 설명 |
---|---|
vman_dir |
SaltStack SecOps Vulnerability 컨텐츠가 수집되기 전에 확장되는 위치. 경로가 상대적이면(선행 / 없음) RaaS 서비스 캐시 dir /var/lib/raas/cache 에 상대적입니다. |
download_enabled |
True 이면 SaltStack SecOps Vulnerability 컨텐츠 다운로드를 사용하도록 설정됩니다. 에어갭 시스템의 경우 False 로 설정 |
download_frequency |
자동화된 SaltStack SecOps Vulnerability 컨텐츠 다운로드 및 수집 빈도(초) |
username |
컨텐츠를 얻기 위해 enterprise.saltstack.com 에 로그인하는 데 사용되는 사용자 이름 |
content_url |
SaltStack SecOps Vulnerability 컨텐츠를 다운로드할 URL |
ingest_on_boot |
True 인 경우, SaltStack SecOps Vulnerability 컨텐츠는 RaaS 서비스가 부팅된 직후 다운로드 및 수집됩니다(기본값: True ). |
compile_stats_interval |
SaltStack SecOps Vulnerability 통계가 컴파일되는 빈도(초) |
stats_snapshot_interval |
SaltStack SecOps Vulnerability 통계가 수집되는 빈도(초) |
old_policy_file_lifespan |
RaaS 파일 시스템에 남아있는 이전 정책 파일의 수명(일) |
delete_old_policy_files_interval |
이전 SaltStack SecOps Vulnerability 정책 파일이 RaaS 파일 시스템에서 삭제되는 빈도(초) |
tenable_asset_import_enabled |
True 이면 SaltStack Config의 미니언 입자가 자산 매칭을 위해 Tenable.io로 전송됩니다(기본값: True .) |
tenable_asset_import_grains |
테넌트 자산 가져오기 기능을 사용하도록 설정한 경우 Tenable.io로 보낼 미니언 입자 목록. SaltStack SecOps Vulnerability는 기본적으로 입자 데이터에 하위 집합 키만 있는 경우 하위 집합에 있는 키만 동기화됩니다. 자세한 내용은 Tenable Import assets 설명서를 참조하십시오. |
FAQ
- Q: 새로운 SaltStack SecOps 컨텐츠는 얼마나 자주 릴리스됩니까?
- A: 현재 릴리스 빈도는 분기당 약 1회입니다. 하지만 향후에는 컨텐츠가 더 자주 릴리스될 수 있습니다.
- 수동 컨텐츠 수집 대신 자동 컨텐츠 수집을 사용하면 새 컨텐츠에 더 빨리 액세스할 수 있습니까?
- A: 수동 또는 자동 수집에 관계없이 동일한 컨텐츠를 사용할 수 있습니다.
단, 수동 수집을 사용하는 경우에는 보안 컨텐츠 업데이트가 있는지 확인하고 업데이트된 컨텐츠가 있을 때 수동으로 수집하는 프로세스를 개발하는 계획을 세워야 합니다.
- A: 수동 또는 자동 수집에 관계없이 동일한 컨텐츠를 사용할 수 있습니다.
후속 작업
SaltStack SecOps를 구성한 후 추가적인 설치 후 단계가 있을 수 있습니다. 설치 후 단계 목록을 확인하여 필요한 모든 단계를 완료했는지 확인하십시오.