다음을 통해 공유


IoT Edge for Linux on Windows 보안

적용 대상: 예 아이콘 IoT Edge 1.1

Important

IoT Edge 1.1 지원 종료일은 2022년 12월 13일이었습니다. 이 제품, 서비스, 기술 또는 API가 지원되는 방법에 대한 정보는 Microsoft 제품 수명 주기를 확인하세요. 최신 버전의 IoT Edge로 업데이트하는 방법에 대한 자세한 내용은 업데이트 IoT Edge를 참조하세요.

Azure IoT Edge for Linux on Windows는 Windows 클라이언트/서버 호스트에서 실행되는 모든 보안 제품의 이점을 활용하고 모든 추가 구성 요소가 동일한 보안 프레미스를 유지하도록 합니다. 이 문서에서는 기본적으로 사용하도록 설정되는 다양한 보안 프레미스 및 사용자가 사용하도록 설정할 수 있는 선택적 프레미스에 대한 정보를 제공합니다.

가상 머신 보안

IoT Edge for Linux(EFLOW) 큐레이팅된 가상 머신은 Microsoft CBL-Mariner를 기반으로 합니다. CBL-Mariner는 Microsoft의 클라우드 인프라 및 에지 제품과 서비스를 위한 내부 Linux 배포입니다. CBL-Mariner는 이러한 디바이스 및 서비스에 일관된 플랫폼을 제공하도록 설계되었으며 Linux 업데이트에서 최신 상태를 유지하도록 Microsoft의 기능을 향상시킵니다. 자세한 내용은 CBL-Mariner 보안을 참조하세요.

EFLOW 가상 머신은 다음과 같은 3가지 포괄적인 보안 플랫폼을 기반으로 합니다.

  1. 서비스 업데이트
  2. 읽기 전용 루트 파일 시스템
  3. 방화벽 잠금

서비스 업데이트

보안 취약성이 발생하면 CBL-Mariner 최신 보안 패치 및 수정 사항을 ELOW 월별 업데이트를 통해 서비스할 수 있게 합니다. 가상 머신에 패키지 관리자가 없으므로 RPM 패키지를 수동으로 다운로드하고 설치할 수 없습니다. 가상 머신에 대한 모든 업데이트는 EFLOW A/B 업데이트 메커니즘을 사용하여 설치됩니다. EFLOW 업데이트에 대한 자세한 내용은 IoT Edge for Linux on Windows 업데이트를 참조하세요.

읽기 전용 루트 파일 시스템

EFLOW 가상 머신은 두 개의 기본 파티션 rootfsdata로 구성됩니다. rootFS-A 또는 rootFS-B 파티션은 서로 교환할 수 있으며 두 파티션 중 하나는 /에서 읽기 전용 파일 시스템으로 탑재됩니다. 즉, 이 파티션 내에 저장된 파일에 대한 변경이 허용되지 않습니다. 반면에 /var 아래에 탑재된 data 파티션은 읽고 쓸 수 있으므로 사용자가 파티션 내의 콘텐츠를 수정할 수 있습니다. 이 파티션에 저장된 데이터는 업데이트 프로세스에 의해 조작되지 않으므로 업데이트 간에 수정되지 않습니다.

특정 사용 사례의 경우 /etc, /home, /root, /var에 대한 쓰기 액세스 권한이 필요할 수 있으므로 이러한 디렉터리에 대한 쓰기 액세스는 데이터 파티션, 특히 디렉터리 /var/.eflow/overlays에 오버레이하여 수행됩니다. 이에 대한 최종 결과로 사용자는 앞에서 언급한 디렉터리에 무엇이든 쓸 수 있습니다. 오버레이에 대한 자세한 내용은 overlayfs를 참조하세요.

EFLOW 1.1LTS 파티션 레이아웃

파티션 크기 설명
Boot 192MB 부팅 로더 포함
RootFS A 2GB 루트 파일 시스템을 보유하는 두 개의 활성/수동 파티션 중 하나
RootFS B 2GB 루트 파일 시스템을 보유하는 두 개의 활성/수동 파티션 중 하나
AB 업데이트 2GB 업데이트 파일을 보유합니다. 업데이트를 위해 VM에 항상 충분한 공간이 있는지 확인합니다.
데이터 2GB~2TB 업데이트 간에 영구 데이터를 저장하기 위한 상태 저장 파티션입니다. 배포 구성에 따라 확장 가능

참고 항목

파티션 레이아웃은 논리 디스크 크기를 나타내며 가상 머신이 호스트 OS 디스크에서 차지하는 물리적 공간을 나타내지 않습니다.

방화벽

기본적으로 EFLOW 가상 머신은 방화벽 구성에 iptables 유틸리티를 사용합니다. Iptables는 Linux 커널에서 IP 패킷 필터 규칙의 테이블을 설정, 유지 관리 및 검사하는 데 사용됩니다. 기본 구현은 포트 22(SSH 서비스)에서 들어오는 트래픽만 허용하고 그렇지 않으면 트래픽을 차단합니다. 다음 단계를 사용하여 iptables 구성을 확인할 수 있습니다.

  1. 승격된 PowerShell 세션 열기

  2. EFLOW 가상 머신에 연결

    Connect-EflowVm
    
  3. 모든 iptables 규칙 나열

    sudo iptables -L
    

    EFLOW iptables 기본값

신뢰할 수 있는 플랫폼 모듈(TPM)

TPM(신뢰할 수 있는 플랫폼 모듈) 기술은 하드웨어 기반의 보안 관련 기능을 제공하도록 설계되었습니다. TPM 칩은 암호화 작업을 수행 하도록 설계 하는 보안 암호화 프로세서입니다. 변조를 확인 하는 여러 물리적 보안 메커니즘을 포함 하는 해당 칩 이며 악성 소프트웨어는 TPM의 보안 기능에 손상을 입힐 수 없습니다.

EFLOW 가상 머신은 vTPM을 지원하지 않습니다. 그러나 사용자는 EFLOW 가상 머신이 Windows 호스트 OS TPM을 사용할 수 있도록 허용하는 TPM 통과 기능을 사용하거나 사용하지 않도록 설정할 수 있습니다. 이렇게 하면 다음 두 가지 주요 시나리오가 가능합니다.

보안 호스트 및 가상 머신 통신

EFLOW는 풍부한 PowerShell 모듈 구현을 노출하여 가상 머신과 상호 작용하는 여러 가지 방법을 제공합니다. 자세한 내용은 IoT Edge for Linux on Windows용 PowerShell 함수를 참조하세요. 이 모듈에서는 관리자 권한 세션을 실행해야 하며 Microsoft Corporation 인증서를 사용하여 서명됩니다.

Windows 호스트 운영 체제와 PowerShell cmdlet에 필요한 EFLOW 가상 머신 간의 모든 통신은 SSH 채널을 사용하여 수행됩니다. 기본적으로 가상 머신 SSH 서비스는 사용자 이름 및 암호를 통한 인증을 허용하지 않으며 인증서 인증으로 제한됩니다. 인증서는 EFLOW 배포 프로세스 중에 만들어지고 각 EFLOW 설치에 대해 고유합니다. 또한 SSH 무차별 암호 대입 공격(brute force attack)을 방지하기 위해 가상 머신은 SSH 서비스에 분당 3개 이상의 연결을 시도하는 경우 IP 주소를 차단합니다.

다음 단계

Windows IoT 보안 프레미스에 대해 자세히 알아보기

최신 IoT Edge for Linux on Windows 업데이트를 사용하여 최신 상태를 유지합니다.