SAP® 애플리케이션용 Microsoft Sentinel 솔루션 배포 문제 해결

유용한 Docker 명령

SAP용 Microsoft Sentinel 데이터 커넥터 문제를 해결할 때 다음 명령이 유용할 수 있습니다.

함수 명령
Docker 컨테이너 중지 docker stop sapcon-[SID]
Docker 컨테이너 시작 docker start sapcon-[SID]
Docker 시스템 로그 보기 docker logs -f sapcon-[SID]
Docker 컨테이너 실행 docker exec -it sapcon-[SID] bash

자세한 내용은 Docker CLI 설명서를 참조하세요.

시스템 로그 검토

데이터 커넥터를 설치하거나 초기화한 후에는 시스템 로그를 검토하는 것이 좋습니다.

다음을 실행합니다.

docker logs -f sapcon-[SID]

디버그 모드 인쇄 사용/사용 안 함

디버그 모드 인쇄 사용:

  1. VM에서 /opt/sapcon/[SID]/systemconfig.ini 파일을 편집합니다.

  2. 이전에 정의되지 않은 경우 일반 섹션을 정의합니다. 이 섹션에서는 logging_debug = True를 정의합니다.

    예시:

    [General]
    logging_debug = True
    
  3. 파일을 저장합니다.

변경 내용은 파일을 저장한 후 2분이 지나면 적용됩니다. Docker 컨테이너를 다시 시작할 필요가 없습니다.

디버그 모드 인쇄 사용 안 함:

  1. VM에서 /opt/sapcon/[SID]/systemconfig.ini 파일을 편집합니다.

  2. 일반 섹션에서 logging_debug = False를 정의합니다.

    예시:

    [General]
    logging_debug = False
    
  3. 파일을 저장합니다.

변경 내용은 파일을 저장한 후 2분이 지나면 적용됩니다. Docker 컨테이너를 다시 시작할 필요가 없습니다.

모든 컨테이너 실행 로그 보기

SAP® 애플리케이션용 Microsoft Sentinel 솔루션 데이터 커넥터 배포를 위한 커넥터 실행 로그는 VM의 /opt/sapcon/[SID]/log/에 저장됩니다. 로그 파일 이름은 OmniLog.log입니다. 접미사가 .[number](예: OmniLog.log.1, OmniLog.log.2 등)인 로그 파일의 기록이 유지됩니다.

SAP용 Microsoft Sentinel 데이터 커넥터 구성 검토 및 업데이트

SAP용 Microsoft Sentinel 데이터 커넥터 구성 파일을 확인하고 수동으로 업데이트하려면 다음 단계를 수행합니다.

  1. VM에서 구성 파일을 엽니다.

    • 2023년 6월 22일 이후에 릴리스된 에이전트 버전의 경우 sapcon/[SID]/systemconfig.json.
    • 2023년 6월 22일 이전에 릴리스된 에이전트 버전의 경우 sapcon/[SID]/systemconfig.ini.
  2. 필요한 경우 구성을 업데이트하고 파일을 저장합니다.

변경 내용은 파일을 저장한 후 2분이 지나면 적용됩니다. Docker 컨테이너를 다시 시작할 필요가 없습니다.

SAP용 Microsoft Sentinel 데이터 커넥터 초기화

다음 단계에서는 커넥터를 초기화하고 지난 30분의 SAP 로그를 다시 수집합니다.

  1. 커넥터를 중지합니다. 다음을 실행합니다.

    docker stop sapcon-[SID]
    
  2. /opt/sapcon/[SID] 디렉터리에서 metadata.db 파일을 삭제합니다. 다음을 실행합니다.

    cd /opt/sapcon/<SID>
    rm metadata.db
    

    참고 항목

    metadata.db 파일은 각 로그의 마지막 타임스탬프를 포함하고 있으며 중복을 방지하기 위해 작동합니다.

  3. 커넥터를 다시 시작합니다. 다음을 실행합니다.

    docker start sapcon-[SID]
    

모두 마쳤으면 시스템 로그를 검토합니다.

SAP 감사 로그에 누락된 IP 주소 또는 트랜잭션 코드 필드

이 솔루션을 사용하면 SAP BASIS 7.5 SP12 이상의 버전이 있는 SAP 시스템에서 ABAPAuditLog_CLSAPAuditLog 테이블의 추가 필드를 반영할 수 있습니다.

7.5 SP12보다 높은 SAP BASIS 버전을 사용하고 SAP 감사 로그에 IP 주소 또는 트랜잭션 코드 필드가 누락된 경우 데이터를 추출하는 SAP 시스템에 관련 변경 요청(전송)이 포함되어 있는지 확인합니다. 자세한 내용은 필수 구성 요소의 SAP에서 추가 정보 검색 섹션을 검토하세요.

SAP 테이블 데이터 로그에 데이터가 표시되지 않음

이 솔루션을 사용하면 SAP BASIS 7.5 SP12 이상의 버전이 있는 SAP 시스템이 ABAPTableDataLog_CL 테이블의 테이블 데이터 로그 변경을 반영할 수 있습니다.

ABAPTableDataLog_CL 테이블에 데이터가 표시되지 않는 경우 데이터를 추출하는 SAP 시스템에 관련 변경 요청(전송)이 포함되어 있는지 확인합니다. 자세한 내용은 필수 구성 요소의 SAP에서 추가 정보 검색 섹션을 검토하세요.

일반적인 문제

SAP용 Microsoft Sentinel 데이터 커넥터와 보안 콘텐츠를 모두 배포하면 다음과 같은 오류나 문제가 발생할 수 있습니다.

SAP SDK 파일이 손상되거나 누락됨

이 오류는 커넥터가 PyRfc를 사용하여 부팅할 수 없거나 zip 관련 오류 메시지가 표시될 때 발생합니다.

  1. SAP SDK를 다시 설치합니다.
  2. 올바른 Linux 64비트 버전인지 확인합니다. 현재 날짜를 기준으로 릴리스 파일 이름은 nwrfc750P_8-70002752.zip입니다.

데이터 커넥터를 수동으로 설치한 경우 SDK 파일을 Docker 컨테이너에 복사했는지 확인합니다.

다음을 실행합니다.

Docker cp SDK by running docker cp nwrfc750P_8-70002752.zip /sapcon-app/inst/

대규모 시스템에서 ABAP 런타임 오류 발생

대규모 시스템에서 ABAP 런타임 오류가 발생하는 경우 다음과 같이 더 작은 청크 크기를 설정해 보세요.

  1. /opt/sapcon/[SID]/systemconfig.ini 파일을 편집하고 커넥터 구성 섹션에서 timechunk = 5를 정의합니다.

    예시:

    [Connector Configuration]
    timechunk = 5
    
  2. 파일을 저장합니다.

변경 내용은 파일을 저장한 후 2분이 지나면 적용됩니다. Docker 컨테이너를 다시 시작할 필요가 없습니다.

참고 항목

timechunk 크기는 분 단위로 정의됩니다.

특별한 오류 메시지 없이 감사 로그가 비어 있거나 감사 로그가 검색되지 않음

  1. SAP에서 감사 로그가 사용하도록 설정되어 있는지 확인합니다.
  2. SM19 또는 RSAU_CONFIG 트랜잭션을 확인합니다.
  3. 필요에 따라 이벤트를 사용하도록 설정합니다.
  4. 메시지가 SAP SM20 또는 RSAU_READ_LOG에 도착하여 잘 있으며 커넥터 로그에 특별한 오류가 표시되지 않는지 확인합니다.

잘못된 Microsoft Sentinel 작업 영역 ID 또는 키

배포 스크립트에서 잘못된 작업 영역 ID 또는 키를 입력한 경우 Azure 키 자격 증명 모음에 저장된 자격 증명을 업데이트합니다.

Azure Key Vault에서 자격 증명을 확인한 후 컨테이너를 다시 시작합니다.

docker restart sapcon-[SID]

고정 구성의 SAP ABAP 사용자 자격 증명이 잘못됨

고정 구성의 경우 암호가 systemconfig.ini 구성 파일에 직접 저장됩니다.

여기에 저장된 자격 증명이 올바르지 않으면 자격 증명을 확인합니다.

base64 암호화를 사용하여 사용자 및 암호를 암호화합니다. 자격 증명을 암호화하려면 온라인 암호화 도구를 사용할 수 있습니다(예: https://www.base64encode.org/).

키 자격 증명 모음의 SAP ABAP 사용자 자격 증명이 잘못됨

자격 증명을 확인하고 Azure Key Vault에서 ABAPUSERABAPPASS 값에 올바른 값을 적용하여 필요에 따라 수정하세요.

그런 다음 컨테이너를 다시 시작하세요.

docker restart sapcon-[SID]

ABAP(SAP 사용자) 권한 없음

..Missing Backend RFC Authorization..과 비슷한 오류 메시지가 표시되면 SAP 권한 부여 및 역할이 올바르게 적용되지 않은 것입니다.

  1. 변경 요청 전송의 일부로 MSFTSEN/SENTINEL_CONNECTOR 역할을 가져와서 커넥터 사용자에게 적용했는지 확인합니다.

  2. SAP 트랜잭션 PFCG를 사용하여 역할 생성 및 사용자 비교 프로세스를 실행합니다.

통합 문서 또는 경고에 데이터 누락

Microsoft Sentinel 통합 문서 또는 경고에 데이터가 없는 경우 SAP 쪽에서 감사 로그 정책을 사용하도록 올바르게 설정하고 로그 파일에 오류가 없는지 확인합니다.

이 단계에는 RSAU_CONFIG_LOG 트랜잭션을 사용합니다.

SAP 변경 요청 누락

필요한 SAP 변경 요청이 누락되었다는 오류가 표시되면 시스템에 대한 올바른 SAP 변경 요청을 가져왔는지 확인합니다.

자세한 내용은 ValidateSAP 환경 유효성 검사 단계를 참조하세요.

레코드 없음/늦은 레코드

에이전트는 표준 시간대 정보를 올바르게 사용합니다. SAP 감사 및 변경 로그에 레코드가 없거나 레코드가 지속적으로 몇 시간 뒤에 있는 경우 SAP 보고서 TZCUSTHELP에 오류가 있는지 확인합니다. 자세한 내용은 SAP Note 481835을 따르세요. 또한 SAP® 애플리케이션 에이전트용 Microsoft Sentinel 솔루션이 호스트되는 VM의 클록에 문제가 있을 수 있습니다. UTC에서 VM 클록의 편차는 데이터 수집에 영향을 미칩니다. 더 중요한 것은 SAP VM의 클록과 Sentinel 에이전트의 VM 클록이 일치해야 한다는 것입니다.

네트워크 연결 문제

SAP 환경 또는 Microsoft Sentinel에 대한 네트워크 연결 문제가 있는 경우 네트워크 연결을 확인하여 데이터가 예상대로 흐르는지 확인합니다.

일반적인 문제는 다음과 같습니다.

  • 도커 컨테이너와 SAP 호스트 간의 방화벽이 트래픽을 차단할 수 있습니다. SAP 호스트는 열려 있어야 하는 32xx, 5xx1333xx TCP 포트를 통해 통신을 수신합니다. 여기서 xx는 SAP 인스턴스 번호입니다.

  • SAP 호스트에서 Microsoft Container Registry 또는 Azure로의 아웃바운드 통신에는 프록시 구성이 필요합니다. 이는 일반적으로 설치에 영향을 미치며 HTTP_PROXYHTTPS_PROXY 환경 변수를 구성해야 합니다. 컨테이너를 만들 때 docker create / run 명령에 -e 플래그를 추가하여 환경 변수를 docker 컨테이너로 수집할 수도 있습니다.

기타 예기치 않은 문제

이 문서에 나열되지 않은 예기치 않은 문제가 있는 경우 다음 단계를 시도합니다.

또한 주요 구성 변경 후에는 커넥터를 초기화하고 최신 업그레이드가 설치되었는지 확인하는 것이 좋습니다.

감사 로그를 검색하면 경고와 함께 실패

필수 변경 요청을 배포하지 않은 상태로 또는 이전/패치되지 않은 버전에서 감사 로그를 검색하려고 하면 경고와 함께 프로세스가 실패하는 경우 다음 방법 중 하나를 사용하여 SAP Auditlog를 검색할 수 있는지 확인합니다.

  • 이전 버전에서 XAL이라는 호환성 모드 사용
  • 최근에 패치되지 않은 버전 사용
  • 필수 변경 요청이 설치되지 않은 채로

필요한 경우 시스템이 자동으로 호환성 모드로 전환되지만, 수동으로 전환해야 할 수도 있습니다. 수동으로 호환성 모드로 전환하려면 다음을 수행합니다.

  1. /opt/sapcon/[SID]/systemconfig.ini 파일 편집

  2. 커넥터 구성 섹션에서 다음을 정의합니다. auditlogforcexal = True

    예시:

    [Connector Configuration]
    auditlogforcexal = True
    
  3. 파일을 저장합니다.

변경 내용은 파일을 저장한 후 2분이 지나면 적용됩니다. Docker 컨테이너를 다시 시작할 필요가 없습니다.

SAPCONTROL 또는 JAVA 하위 시스템이 연결할 수 없음

OS 사용자가 유효하고 대상 SAP 시스템에서 다음 명령을 실행할 수 있는지 확인합니다.

sapcontrol -nr <SID> -function GetSystemInstanceList

SAPCONTROL 또는 JAVA 하위 시스템이 표준 시간대 관련 오류 메시지와 함께 실패하는 경우(예: SAP 서버 - 'Etc/NZST'에 대한 구성 및 네트워크 액세스를 확인하세요.) 표준 시간대 코드를 사용하고 있는지 확인합니다.

예를 들면 javatz = GMT+12 또는 abaptz = GMT-3**를 사용합니다.

SAP로 변경 요청 전송을 가져올 수 없음

필요한 SAP 로그 변경 요청을 가져올 수 없고 구성 요소 버전이 올바르지 않다는 오류가 발생하는 경우 변경 요청을 가져올 때 ignore invalid component version을 추가합니다.

초기 로드 이후에 수집되지 않은 감사 로그 데이터

RSAU_READ_LOAD 또는 SM200 트랜잭션에 표시되는 SAP 감사 로그 데이터가 초기 로드 이후 Microsoft Sentinel로 수집되지 않으면, SAP 시스템과 SAP 호스트 운영 체제가 잘못 구성되었을 수 있습니다.

  • 초기 로드는 SAP용 Microsoft Sentinel 데이터 커넥터를 새로 설치한 후 또는 metadata.db 파일이 삭제된 후 수집됩니다.
  • SAP 시스템 표준 시간대가 STZAC 트랜잭션에서 CET로 설정되어 있지만 SAP 호스트 운영 체제 표준 시간대가 UTC로 설정되어 있으면 샘플 구성이 잘못되었을 수 있습니다.

잘못된 구성을 확인하려면 트랜잭션 SE38에서 RSDBTIME 보고서를 실행합니다. SAP 시스템과 SAP 호스트 운영 체제 간 불일치가 발견되면:

  1. Docker 컨테이너를 중지합니다. 실행

    docker stop sapcon-[SID]
    
  2. /opt/sapcon/[SID] 디렉터리에서 metadata.db 파일을 삭제합니다. 다음을 실행합니다.

    rm /opt/sapcon/[SID]/metadata.db
    
  3. 설정이 일치하도록(예: 동일한 표준 시간대) SAP 시스템 및 SAP 호스트 운영 체제를 업데이트합니다. 자세한 내용은 SAP Community Wiki를 참조하세요.

  4. 컨테이너를 다시 시작합니다. 다음을 실행합니다.

    docker start sapcon-[SID]
    

SAP 감사 로그에 누락된 IP 주소 또는 트랜잭션 코드 필드

이 솔루션을 사용하면 SAP BASIS 7.5 SP12 이상의 버전이 있는 SAP 시스템이 ABAPAuditLog_CL 및 SAPAuditLog 테이블의 추가 필드를 반영할 수 있습니다. 7.5 SP12보다 높은 SAP BASIS 버전을 사용하고 SAP 감사 로그에 IP 주소 또는 트랜잭션 코드 필드가 없는 경우 데이터를 추출하는 SAP 시스템에 관련 변경 요청(전송)이 포함되어 있는지 확인합니다. 자세한 내용은 SAP에서 추가 정보 검색(선택 사항)을 참조하세요.

SAP 테이블 데이터 로그에 데이터가 표시되지 않음

이 솔루션을 사용하면 SAP BASIS 7.5 SP12 이상의 버전을 사용하는 SAP 시스템이 ABAPTableDataLog_CL 테이블의 테이블 데이터 로그 변경을 반영할 수 있습니다. ABAPTableDataLog_CL 데이터가 표시되지 않는 경우 데이터를 추출하는 SAP 시스템에 관련 변경 요청(전송)이 포함되어 있는지 확인합니다. 자세한 내용은 SAP에서 추가 정보 검색(선택 사항)을 참조하세요.

다음 단계

SAP® 애플리케이션용 Microsoft Sentinel 솔루션에 대해 자세히 알아봅니다.

참조 파일:

자세한 내용은 Microsoft Sentinel 솔루션을 참조하세요.