Azure Virtual Machines 랜딩 존 가속기에서 Oracle 워크로드에 대한 보안 지침

이 문서에서는 수명 주기의 모든 단계에서 Azure Virtual Machines 랜딩 존 가속기에서 Oracle 워크로드를 안전하게 실행하는 방법을 설명합니다. 이 문서에서는 특정 디자인 구성 요소에 대해 설명하고 Oracle 워크로드에 대한 Azure IaaS(Infrastructure as a Service) 보안에 대한 포커스가 있는 제안을 제공합니다.

개요

보안은 모든 아키텍처에 필수적입니다. Azure는 Oracle 워크로드를 효과적으로 보호하는 데 도움이 되는 포괄적인 도구를 제공합니다. 이 문서의 목적은 Virtual Machines에 배포된 Oracle 애플리케이션 워크로드와 관련된 Azure 컨트롤 플레인에 대한 보안 권장 사항을 제공하는 것입니다. Oracle Database 내의 보안 조치에 대한 자세한 정보 및 구현 지침은 Oracle Database 보안 가이드를 참조 하세요.

대부분의 데이터베이스는 중요한 데이터를 저장합니다. 데이터베이스 수준에서만 보안을 구현하는 것만으로는 이러한 워크로드를 배포하는 아키텍처를 보호하는 데 충분하지 않습니다. 심층 방어는 데이터를 보호하기 위해 여러 계층의 방어 메커니즘을 구현하는 포괄적인 보안 접근 방식입니다. 심층 방어 전략은 네트워크 보안 메커니즘에만 초점을 맞추는 등 특정 수준의 단일 보안 조치에 의존하는 대신 다양한 계층 보안 조치의 조합을 사용하여 강력한 보안 태세를 만듭니다. 강력한 인증 및 권한 부여 프레임워크, 강화된 네트워크 보안, 미사용 데이터 및 전송 중인 데이터의 암호화를 사용하여 Oracle 워크로드에 대한 심층 방어 방법을 설계할 수 있습니다.

Oracle 워크로드를 Azure에서 IaaS 클라우드 모델로 배포할 수 있습니다. 클라우드 공급자와 고객에게 할당된 특정 작업 및 책임을 보다 명확하게 이해하려면 공유 책임 매트릭스를 다시 방문하세요. 자세한 내용은 클라우드의 공유 책임을 참조하세요.

보안 조치가 변화하는 위협 환경에 부합하는지 확인하기 위해 사용하는 서비스 및 기술을 주기적으로 평가해야 합니다.

중앙 집중식 ID 관리 사용

ID 관리는 중요한 리소스에 대한 액세스를 제어하는 기본 프레임워크입니다. 임시 인턴, 파트타임 직원 또는 정규직 직원과 같은 다양한 유형의 직원과 함께 작업하는 경우 ID 관리가 중요합니다. 이러한 담당자는 필요에 따라 모니터링, 기본 및 즉시 해지해야 하는 다양한 수준의 액세스 권한이 필요합니다. Oracle 워크로드에 대해 고려해야 할 네 가지 고유 ID 관리 사용 사례가 있으며 각 사용 사례에는 다른 ID 관리 솔루션이 필요합니다.

  • Oracle 애플리케이션: 사용자는 SSO(Single Sign-On)를 통해 권한이 부여된 후 자격 증명을 다시 입력하지 않고도 Oracle 애플리케이션에 액세스할 수 있습니다. Microsoft Entra ID 통합을 사용하여 Oracle 애플리케이션에 액세스합니다. 다음 표에서는 각 Oracle 솔루션에 대해 지원되는 SSO 전략을 나열합니다.

    Oracle 애플리케이션 문서에 연결
    E-Business Suite(EBS) EBS R12.2에 SSO 사용
    JD Edwards(JDE) JDE SSO 설정
    PeopleSoft 사람소프트에 SSO 사용
    Hyperion Oracle 지원 문서 #2144637.1
    Siebel Oracle 지원 문서 #2664515.1
  • 운영 체제(OS) 수준 보안: Oracle 워크로드는 Linux OS 또는 Windows OS의 다양한 변형에서 실행할 수 있습니다. 조직은 Microsoft Entra ID와 통합하여 Azure에서 Windows 및 Linux VM(가상 머신)의 보안을 향상시킬 수 있습니다. 자세한 내용은 다음을 참조하세요.

    • Microsoft Entra ID 및 OpenSSH를 사용하여 Azure에서 Linux VM에 로그인합니다.
      • 2023년 7월부터 OL(Oracle Linux) 및 RHEL(Red Hat Enterprise Linux)은 100% 이진 호환되므로 RHEL과 관련된 모든 지침이 OL에 적용됩니다.
      • 2023년 7월 현재 IBM은 RHEL 소스 코드를 공개적으로 공유하는 것을 중단했습니다. OL 및 RHEL이 나중에 분기되어 이전 문이 무효화될 수 있습니다.
    • Microsoft Entra ID를 사용하여 Azure에서 Windows VM에 로그인합니다.
  • 자격 증명을 저장하는 Azure Key Vault: Key Vault는 암호 및 데이터베이스 연결 문자열 같은 비밀 스토리지를 보호하는 데 사용할 수 있는 클라우드 애플리케이션 및 서비스를 위한 강력한 도구입니다. Key Vault를 사용하여 OS에 관계없이 중앙 집중식 및 보안 방식으로 Windows 및 Linux VM 모두에 대한 자격 증명을 저장할 수 있습니다.

    • Key Vault를 사용하여 코드 또는 구성 파일 내에서 일반 텍스트로 자격 증명을 저장할 필요가 없습니다. 런타임에 Key Vault에서 자격 증명을 검색하여 애플리케이션에 추가 보안 계층을 추가하고 VM에 대한 무단 액세스를 방지할 수 있습니다. Key Vault는 Virtual Machines와 같은 다른 Azure 서비스와 원활하게 통합되며 Azure AD(Azure Active Directory)를 사용하여 Key Vault에 대한 액세스를 제어할 수 있습니다. 이 프로세스를 통해 권한 있는 사용자 및 애플리케이션만 저장된 자격 증명에 액세스할 수 있습니다.
  • 강화된 OS 이미지: Azure의 Windows 또는 Linux용 CIS(인터넷 보안 센터) 강화 이미지에는 여러 가지 이점이 있습니다. CIS 벤치마크 는 IT 시스템 및 데이터를 보호하기 위한 모범 사례로 전 세계적으로 인식됩니다. 이러한 이미지는 CIS의 보안 권장 사항을 충족하도록 미리 구성되어 OS 강화에 시간과 노력을 절약할 수 있습니다. 강화된 OS 이미지는 조직이 보안 상태를 개선하고 NIST(National Institute of Standards and Technology) 및 PCI(주변 장치 구성 요소 상호 연결)와 같은 보안 프레임워크를 준수하는 데 도움이 될 수 있습니다.

OS 강화

Oracle 데이터베이스를 공격하기 위해 악용될 수 있는 취약성을 제거하기 위해 OS가 강화되었는지 확인합니다.

  • 암호 대신 Linux 계정 액세스에 SSH(Secure Shell) 키 쌍을 사용합니다.
  • 암호로 보호된 Linux 계정을 사용하지 않도록 설정하고 짧은 기간 동안 요청 시만 사용하도록 설정합니다.
  • 개인 설정된 계정에만 로그인 액세스를 허용하는 권한 있는 Linux 계정(루트 또는 Oracle)에 대한 로그인 액세스를 사용하지 않도록 설정합니다.
  • 직접 로그인 액세스 대신 sudo를 사용하여 개인 설정된 계정에서 권한 있는 Linux 계정에 대한 액세스 권한을 부여합니다.
  • Linux SYSLOG 유틸리티를 사용하여 Azure Monitor 로그에서 Linux 감사 추적 로그 및 sudo 액세스 로그를 캡처합니다.
  • 신뢰할 수 있는 원본에서만 정기적으로 보안 패치 및 OS 패치 또는 업데이트를 적용합니다.
  • OS에 대한 액세스를 제한하는 제한을 구현합니다.
  • 서버에 대한 무단 액세스를 제한합니다.
  • 네트워크 수준에서 서버 액세스를 제어하여 전반적인 보안을 강화합니다.
  • Azure NSG(네트워크 보안 그룹) 외에도 로컬 보호를 위해 Linux 방화벽 디먼을 사용하는 것이 좋습니다.
  • 시작 시 자동으로 실행되도록 Linux 방화벽 디먼을 구성합니다.
  • 수신 대기 중인 네트워크 포트를 검사하여 잠재적인 액세스 지점을 파악하고 Azure NSG 또는 Linux 방화벽 디먼이 해당 포트에 대한 액세스를 제어하는지 확인합니다. Linux 명령을 netstat –l 사용하여 포트를 찾습니다.
  • 되돌릴 수 없는 명령이 수행되기 전에 한 번 이상 메시지가 표시되도록 잠재적으로 파괴적인 Linux 명령(예: rm mv및)을 대화형 모드로 강제 적용하는 별칭입니다. 고급 사용자는 필요한 경우 unalias 명령을 실행할 수 있습니다.
  • Linux SYSLOG 유틸리티를 사용하여 Oracle 감사 로그의 복사본을 Azure Monitor 로그로 보내도록 Oracle 데이터베이스 통합 시스템 로그를 구성합니다.

네트워크 보안 사용

네트워크 보안은 Azure의 Oracle 워크로드에 대한 계층화된 보안 접근 방식의 기본 구성 요소입니다.

  • NSG 사용: Azure NSG를 사용하여 Azure 가상 네트워크의 Azure 리소스 간 네트워크 트래픽을 필터링할 수 있습니다. NSG에는 Azure 리소스 또는 Azure 리소스의 아웃바운드 네트워크 트래픽에 대한 인바운드 네트워크 트래픽을 허용하거나 거부하는 보안 규칙이 포함되어 있습니다. NSG는 IP 주소 범위 및 특정 포트를 사용하여 온-프레미스 네트워크 간 트래픽을 Azure 간에 필터링할 수 있습니다. 자세한 내용은 네트워크 보안 그룹을 참조하세요.

    다음 표에서는 Oracle 데이터베이스 VM에 대한 인바운드 포트 할당을 나열합니다.

    프로토콜 포트 번호 서비스 이름 Comment(설명)
    TCP 22 SSH Linux VM용 관리 포트
    TCP 1521 Oracle TNS 수신기 보안 목적 또는 연결 부하 분산을 위해 자주 사용되는 기타 포트 번호
    TCP 3389 RDP Windows VM용 관리 포트
  • VM에 연결하는 방법을 결정합니다. Oracle 데이터베이스 워크로드가 있는 VM은 무단 액세스에 대해 보호되어야 합니다. 관리 사용자에게 필요한 권한이 높기 때문에 관리 액세스가 중요합니다. Azure에서 권한 있는 사용자에게는 VM을 안전하게 관리하는 데 사용할 수 있는 몇 가지 메커니즘이 있습니다.

두 솔루션 중 하나를 사용하여 Oracle 데이터베이스 VM의 관리를 보호할 수 있습니다. 원하는 경우 고급 다중 계층 접근 방식을 위해 두 솔루션을 결합할 수 있습니다.

일반적으로 JIT 액세스는 SSH 또는 RDP에 대한 관리 포트를 사용할 수 있는 시간을 제한하여 위험에 대한 노출을 최소화하지만 제거하지는 않습니다. JIT는 가져온 JIT 창 중에 다른 세션의 액세스 가능성을 열어 둡니다. 이러한 테일게이터는 여전히 노출된 SSH 또는 RDP 포트를 벗어나야 하므로 노출 위험이 적습니다. 그러나 이러한 노출은 JIT 액세스를 오픈 인터넷에서 액세스를 차단하는 데 덜 맛있게 만들 수 있습니다.

Azure Bastion은 기본적으로 개방형 인터넷에서 액세스를 방지하는 데 도움이 되는 강화된 점프 박스입니다. 그러나 고려해야 할 Azure Bastion 에는 여러 가지 제한 사항이 있습니다.

  • X-Windows 및 VNC(가상 네트워킹 컴퓨팅) 사용: Oracle 데이터베이스 소프트웨어는 일반적으로 Azure의 Linux VM과 데스크톱 또는 랩톱 간의 연결이 방화벽과 Azure NSG를 통해 트래버스될 수 있으므로 X-Windows를 사용해야 합니다. 이 때문에 SSH 포트 전달을 사용하여 SSH를 통해 X-Windows 또는 VNC 연결을 터널링해야 합니다. 매개 변수를 사용하는 예제는 -L 5901:localhost:5901 VNC 클라이언트 열기 및 배포 테스트를 참조하세요.

  • 클라우드 간 상호 연결 옵션: Azure에서 실행되는 Oracle 데이터베이스 워크로드와 OCI(Oracle 클라우드 인프라)의 워크로드 간에 연결을 사용하도록 설정합니다. Azure와 OCI의 특정 지역 간에 Azure 또는 OCI 상호 연결을 사용하여 애플리케이션 간에 프라이빗 링크 또는 파이프라인을 만들 수 있습니다. 자세한 내용은 Azure와 Oracle 클라우드 인프라 간의 직접 상호 연결 설정을 참조 하세요. 이 문서에서는 일반적으로 클라우드의 수신 또는 송신에 대한 요구 사항인 Azure 또는 OCI 상호 연결 양쪽에서 방화벽을 만드는 작업을 다루지 않습니다. 이 방법은 Microsoft 제로 트러스트 네트워킹 권장 사항을 사용합니다.

Azure 정책 기반 보안

Virtual Machines 랜딩 존 가속기에서 Oracle 워크로드에 대한 특정 기본 제공 Azure 정책 정의는 없습니다. 그러나 Azure Policy는 VM, 스토리지 및 네트워킹을 포함하여 Azure의 Oracle 솔루션에서 사용하는 기본 리소스에 대한 포괄적인 범위를 제공합니다. 자세한 내용은 Azure Policy 기본 제공 정책 정의를 참조하세요.

격차를 해소하기 위해 조직의 요구 사항을 해결하는 사용자 지정 정책을 만들 수도 있습니다. 예를 들어 사용자 지정 Oracle 정책을 사용하여 스토리지 암호화를 적용하거나, NSG 규칙을 관리하거나, Oracle VM에 공용 IP 주소를 할당하는 것을 금지합니다.

암호화를 사용하여 데이터 저장

  • 전송 중인 데이터 암호화: 일반적으로 네트워크 연결을 통해 한 위치에서 다른 위치로 이동하는 데이터의 상태에 적용됩니다. 전송 중인 데이터는 연결의 특성에 따라 여러 가지 방법으로 암호화할 수 있습니다. 기본적으로 Azure 데이터 센터 내에서 전송 중인 데이터에 대해 데이터 암호화를 수동으로 사용하도록 설정해야 합니다. Azure 설명서의 자세한 내용은 전송 중인 데이터 암호화를 참조하세요.

    • Oracle 네이티브 네트워크 암호화 및 데이터 무결성 기능을 사용하는 것이 좋습니다. 자세한 내용은 Oracle 데이터베이스 네이티브 네트워크 암호화 및 데이터 무결성 구성을 참조 하세요.
  • 미사용 데이터 암호화: 미사용 데이터인 동안 스토리지에 기록할 때도 데이터를 보호해야 합니다. 사용 중에 스토리지 미디어를 제거하거나 액세스할 때 기밀 데이터를 노출하거나 변경할 수 있습니다. 따라서 인증된 사용자만 데이터를 보거나 수정할 수 있도록 데이터를 암호화해야 합니다. Azure는 미사용 암호화 계층 3개를 제공합니다.

    • 모든 데이터는 Storage 서비스 쪽 암호화를 사용하여 Azure Storage 디바이스 에 유지되는 경우 가장 낮은 수준에서 암호화됩니다. 서비스 쪽 암호화는 Azure 테넌트가 스토리지를 사용하여 완료된 경우 스토리지 미디어를 지우거나 삭제할 필요가 없도록 합니다. 플랫폼 관리형 키가 해제된 경우 항상 미사용 시 암호화된 데이터는 영구적으로 손실될 수 카드. 서비스 쪽 암호화는 스토리지에서 모든 데이터를 삭제하는 것보다 더 빠르고 안전합니다.
    • 또한 Azure는 두 개의 별도 플랫폼 관리형 키를 사용하는 스토리지 인프라 암호화를 사용하여 스토리지 인프라 내에 저장된 데이터를 두 번 암호화할 수 있는 기회를 제공합니다.
    • 또한 Azure 디스크 암호화 는 게스트 OS(Windows용 BitLocker 및 Linux용 DM-CRYPT) 내에서 관리되는 미사용 데이터 암호화입니다.

스토리지 인프라에는 최대 3개의 가능한 데이터 계층(미사용 데이터 암호화)이 있습니다. Oracle Advanced Security 옵션이 있는 경우 Oracle 데이터베이스는 TDE(투명한 데이터 암호화)를 사용하여 데이터베이스 파일을 암호화하고 미사용 시 다른 수준의 암호화를 제공할 수도 있습니다.

Oracle Advanced Security 옵션은 동적 데이터 마스킹의 한 형태인 데이터 편집이라는 기능도 제공합니다. 데이터베이스는 데이터를 검색할 때 저장된 데이터 값을 변경하지 않고 데이터 값을 마스킹합니다.

이러한 여러 계층의 미사용 암호화는 심층 방어의 정의를 나타냅니다. 어떤 이유로 미사용 암호화 형식 중 하나가 손상된 경우 데이터를 보호하기 위한 다른 암호화 계층이 여전히 있습니다.

  • 관리: Oracle TDE를 다른 암호화 계층으로 구현하는 경우 Oracle은 Azure 또는 다른 클라우드 공급자가 제공하는 Key Vault와 같은 네이티브 키 관리 솔루션을 지원하지 않는다는 점에 유의해야 합니다. 대신 Oracle 지갑의 기본 위치는 Oracle 데이터베이스 VM의 파일 시스템 내에 있습니다.

자세한 내용은 Azure 에서 Oracle Key Vault 프로비저닝을 참조하여 Oracle Key Vault를 Azure 키 관리 솔루션으로 사용하는 방법을 알아봅니다.

감사 내역 통합

애플리케이션 로그 모니터링은 애플리케이션 수준에서 보안 위협을 감지하는 데 필수적입니다. Oracle 데이터베이스 워크로드에 Microsoft Sentinel 솔루션을 사용합니다. Oracle Database 감사 커넥터는 업계 표준 SYSLOG 인터페이스를 사용하여 모든 Oracle 데이터베이스 감사 레코드를 검색하고 Azure Monitor 로그에 수집합니다. 이 프로세스를 통해 이러한 레코드를 Azure 인프라 감사 레코드 및 게스트 OS(Linux 또는 Windows) 감사 레코드와 함께 검토할 수 있습니다. Microsoft Sentinel 솔루션은 Linux 또는 Windows VM에서 실행되는 Oracle 워크로드용으로 빌드된 클라우드 네이티브 SIEM(보안 정보 및 이벤트 관리) 솔루션입니다. 자세한 내용은 Microsoft Sentinel용 Oracle 데이터베이스 감사 커넥터를 참조 하세요.

다음 단계

Azure에서 Oracle 워크로드에 대한 용량 요구 사항을 계획하는 방법을 이해하려면 Oracle 워크로드를 Azure 랜딩 존으로 마이그레이션하기 위한 용량 계획을 참조 하세요.