SNC를 사용하여 SAP 데이터 커넥터용 Microsoft Sentinel 배포

이 문서에서는 SNC(Secure Network Communications)를 사용하여 보안 연결을 통해 SAP NetWeaver 및 SAP ABAP 로그를 수집하기 위해 SAP 데이터 커넥터용 Microsoft Sentinel을 배포하는 방법을 보여 줍니다.

SAP 데이터 커넥터 에이전트는 일반적으로 인증을 위해 RFC(원격 함수 호출) 연결 및 사용자 이름 및 암호를 사용하여 SAP ABAP 서버에 연결합니다.

그러나 일부 환경에서는 암호화된 채널에서 연결을 설정해야 할 수 있으며 일부 환경에서는 인증에 클라이언트 인증서를 사용해야 할 수 있습니다. 이러한 경우 SAP의 SNC를 사용하여 데이터 커넥터를 안전하게 연결할 수 있습니다. 이 문서에 설명된 대로 단계를 완료합니다.

필수 조건

SNC를 사용하여 SAP용 Microsoft Sentinel 데이터 커넥터를 배포하려면 다음이 필요합니다.

  • SAP 암호화 라이브러리입니다.
  • 네트워크 연결 SNC는 포트 48xx (여기서 xx 는 SAP 인스턴스 번호)를 사용하여 ABAP 서버에 연결합니다.
  • SNC 인증을 지원하도록 구성된 SAP 서버입니다.
  • 사용자 인증을 위해 자체 서명되거나 CA(엔터프라이즈 인증 기관)에서 발급한 인증서입니다.

참고 항목

이 문서에서는 SNC를 구성하기 위한 샘플 사례에 대해 설명합니다. 프로덕션 환경에서는 SAP 관리자와 상의하여 배포 계획을 만드는 것이 좋습니다.

서버 인증서 내보내기

시작하려면 서버 인증서를 내보냅니다.

  1. SAP 클라이언트에 로그인하고, STRUST 트랜잭션을 실행합니다.

  2. 왼쪽 창에서 SNC SAPCryptolib으로 이동하여 섹션을 확장합니다.

  3. 시스템을 선택한 다음 제목 값을 선택합니다.

    서버 인증서 정보는 인증서 섹션에 표시됩니다.

  4. 인증서 내보내기 선택

    Screenshot that shows how to export a server certificate.

  5. 인증서 내보내기 대화 상자에서:

    1. 파일 형식으로 Base64를 선택합니다.

    2. 파일 경로 옆에 있는 이중 상자 아이콘을 선택합니다.

    3. 인증서를 내보낼 파일 이름을 선택합니다.

    4. 녹색 검사 표시를 선택하여 인증서를 내보냅니다.

인증서 가져오기

이 섹션에서는 ABAP 서버에서 신뢰할 수 있도록 인증서를 가져오는 방법을 설명합니다. SAP 시스템으로 가져와야 하는 인증서를 이해해야 합니다. 인증서의 공개 키만 SAP 시스템으로 가져와야 합니다.

  • 사용자 인증서가 자체 서명된 경우: 사용자 인증서를 가져옵니다.

  • 엔터프라이즈 CA에서 사용자 인증서를 발급하는 경우: 엔터프라이즈 CA 인증서를 가져옵니다. 루트 및 하위 CA 서버를 모두 사용하는 경우 루트 및 하위 CA 공용 인증서를 모두 가져옵니다.

인증서를 가져오려면 다음을 수행합니다.

  1. STRUST 트랜잭션을 실행합니다.

  2. Display(표시)<->Change(변경)를 선택합니다.

  3. 인증서 가져오기를 선택합니다.

  4. 인증서 가져오기 대화 상자에서 다음을 수행합니다.

    1. 파일 경로 옆에 있는 이중 상자 아이콘을 선택하고 인증서로 이동합니다.

    2. 인증서가 포함된 파일(공개 키에만 해당)으로 이동하고 녹색 검사 표시를 선택하여 인증서를 가져옵니다.

      인증서 정보는 Certificate(인증서) 섹션에 표시됩니다.

    3. Add to Certificate List(인증서 목록에 추가)를 선택합니다.

      인증서가 인증서 목록 섹션에 나타납니다.

인증서를 사용자 계정과 연결

인증서를 사용자 계정과 연결하려면 다음을 수행합니다.

  1. SM30 트랜잭션을 실행합니다.

  2. 테이블/뷰에서 USRACLEXT를 입력한 다음 유지 관리를 선택합니다.

  3. 출력을 검토하고 대상 사용자에게 이미 연결된 SNC 이름이 있는지 확인합니다. 사용자와 연결된 SNC 이름이 없는 경우 새 항목을 선택합니다.

    Screenshot that shows how to create a new entry in the USERACLEXT table.

  4. 사용자의 경우 사용자의 사용자 이름을 입력합니다. SNC 이름에 p:가 접두사로 지정된 사용자의 인증서 주체 이름을 입력한 다음 저장을 선택합니다.

    Screenshot that shows how to create a new user in USERACLEXT table.

인증서를 사용하여 로그온 권한 부여

로그온 권한을 부여하려면 다음을 수행합니다.

  1. SM30 트랜잭션을 실행합니다.

  2. 테이블/뷰에서 VSNCSYSACL을 입력한 다음 유지 관리를 선택합니다.

  3. 표시되는 정보 프롬프트에서 테이블이 클라이언트 간인지 확인합니다.

  4. 작업 영역 확인: 항목에서 ACL 항목 유형에 E를 입력 한 다음 녹색 검사 표시를 선택합니다.

  5. 출력을 검토하고 대상 사용자에게 이미 연결된 SNC 이름이 있는지 확인합니다. 사용자에게 연결된 SNC 이름이 없는 경우 새 항목을 선택합니다.

    Screenshot that shows how to create a new entry in the VSNCSYSACL table.

  6. 시스템 ID 및 p: 접두사가 불은 사용자 인증서 주체 이름을 입력합니다.

    Screenshot that shows how to create a new user in the VSNCSYSACL table.

  7. RFC에 대한 항목의 검사 상자가 활성화되고 인증서가 활성화된 항목이 선택되어 있는지 확인하고 저장을 선택합니다.

ABAP 서비스 공급자의 사용자를 외부 사용자 ID에 매핑

ABAP 서비스 공급자 사용자를 외부 사용자 ID에 매핑하려면 다음을 수행합니다.

  1. SM30 트랜잭션을 실행합니다.

  2. 테이블/뷰에서 VUSREXTID를 입력한 다음 유지 관리를 선택합니다.

  3. 작업 영역 확인: 항목에서 작업 영역DN ID 유형을 선택합니다.

  4. 다음 값을 입력합니다.

    • 외부 ID의 경우 CN=Sentinel, C=US를 입력합니다.
    • Seq. 아니요의 경우 000을 입력합니다.
    • 사용자에 대해 SENTINEL을 입력합니다.
  5. 저장을 선택한 다음 Enter 키를 선택합니다.

    Screenshot that shows how to set up the SAP VUSREXTID table.

컨테이너 설정

참고 항목

UI를 사용하여 SAP 데이터 커넥터 에이전트 컨테이너를 설정하는 경우 이 섹션에 설명된 단계를 완료하지 마세요. 대신 커넥터 페이지에서 커넥터를 계속 설정합니다.

컨테이너를 설정하려면 다음을 수행합니다.

  1. libsapcrypto.sosapgenpse 파일을 컨테이너가 만들어지는 시스템으로 전송합니다.

  2. 클라이언트 인증서(프라이빗 및 퍼블릭 키 모두)를 컨테이너가 만들어지는 시스템으로 전송합니다.

    클라이언트 인증서 및 키는 .p12, .pfx 또는 Base64 .crt.key 형식일 수 있습니다.

  3. 서버 인증서(공개 키만 해당)를 컨테이너가 만들어지는 시스템으로 전송합니다.

    서버 인증서는 Base64 .crt 형식이어야 합니다.

  4. 엔터프라이즈 인증 기관에서 클라이언트 인증서를 발급한 경우 발급 CA 및 루트 CA 인증서를 컨테이너가 만들어지는 시스템으로 전송합니다.

  5. Microsoft Sentinel GitHub 리포지토리에서 kickstart 스크립트를 가져옵니다.

    wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh
    
  6. 실행 가능하도록 스크립트의 권한을 변경합니다.

    chmod +x ./sapcon-sentinel-kickstart.sh
    
  7. 스크립트를 실행하고 다음 기본 매개 변수를 지정합니다.

    ./sapcon-sentinel-kickstart.sh \
    --use-snc \
    --cryptolib <path to sapcryptolib.so> \
    --sapgenpse <path to sapgenpse> \
    --server-cert <path to server certificate public key> \
    

    클라이언트 인증서가 .crt 또는 .key 형식인 경우 다음 스위치를 사용합니다.

    --client-cert <path to client certificate public key> \
    --client-key <path to client certificate private key> \
    

    클라이언트 인증서가 .pfx 또는 .p12 형식인 경우 다음 스위치를 사용합니다.

    --client-pfx <pfx filename>
    --client-pfx-passwd <password>
    

    엔터프라이즈 CA에서 클라이언트 인증서를 발급한 경우 트러스트 체인의 CA에 대해 다음 스위치를 추가합니다.

    --cacert <path to ca certificate>
    

    예시:

    ./sapcon-sentinel-kickstart.sh \
    --use-snc \
    --cryptolib /home/azureuser/libsapcrypto.so \
    --sapgenpse /home/azureuser/sapgenpse \
    --client-cert /home/azureuser/client.crt \
    --client-key /home/azureuser/client.key \
    --cacert /home/azureuser/issuingca.crt
    --cacert /home/azureuser/rootca.crt
    --server-cert /home/azureuser/server.crt \
    

kickstart 스크립트에서 사용할 수 있는 옵션에 대한 자세한 내용은 참조: Kickstart 스크립트를 참조하세요.

문제 해결 및 참조

문제 해결 정보는 다음 문서를 참조하세요.

참조는 다음 문서를 참조하세요.