처음부터 IoT 보안 인프라 검토

완료됨

사물 인터넷(IoT)은 전 세계 기업에 고유한 보안, 개인 정보 및 규정 준수 문제를 제기합니다. 문제가 소프트웨어와 구현 방식을 중심으로 발생하는 기존의 사이버 기술과는 달리 IoT는 사이버 세계와 실제 세계가 만날 때 일어나는 일과 관련하여 문제가 발생합니다. IoT 솔루션을 보호하기 위해서는 디바이스의 안전한 프로비전, 이러한 디바이스 및 클라우드 간의 보안 연결, 처리 및 스토리지 중에 클라우드에서 데이터 보호 설정이 요구됩니다. 그러나 이러한 기능에 대한 작업에는 리소스가 제한된 디바이스, 배포의 지리적 분산 및 솔루션 내 많은 수의 디바이스에 대한 작업이 포함됩니다.

Microsoft Azure - 비즈니스를 위한 보안 IoT 인프라

Microsoft Azure는 데이터 보호 및 개인 정보 보호를 위한 업계 선도적인 노력을 통해 지속적으로 증가하는 통합 클라우드 서비스(분석, 기계 학습, 스토리지, 보안, 네트워킹 및 웹) 컬렉션을 결합하는 완전한 클라우드 솔루션을 제공합니다.

Microsoft의 시스템은 지속적인 침입 탐지 및 방지, 서비스 거부 공격 방지, 일반적인 침투 테스트, 외부 도구를 통해 위협을 식별하고 완화할 수 있습니다. 다단계 인증은 최종 사용자가 네트워크에 액세스할 수 있는 추가 보안 계층을 제공합니다. 또한 Microsoft는 애플리케이션 및 호스트 공급자를 위해 액세스 제어, 모니터링, 맬웨어 방지, 취약점 검색, 패치 및 구성 관리를 제공합니다.

Azure IoT Hub는 디바이스별 보안 자격 증명 및 액세스 제어를 사용하여 IoT 디바이스와 Azure 서비스(예: Azure Machine Learning 및 Azure Stream Analytics) 간에 안정적이고 안전한 양방향 통신을 가능하게 하는 완전 관리형 서비스를 제공합니다.

보안 디바이스를 프로비전 및 인증

디바이스 프로비저닝 보안은 각 디바이스에 고유한 ID 키를 제공하는 것을 의미하며, IoT 인프라에서 작동 중인 디바이스와 통신하는 데 사용할 수 있습니다. 사용자가 선택한 디바이스 ID로 생성된 키는 디바이스와 Azure IoT Hub 간의 모든 통신에 사용되는 토큰의 기초를 구성합니다.

디바이스 ID는 제조 중에 디바이스에 연결하거나(즉, 하드웨어 트러스트 모듈에서 플래시됨) 기존 고정된 ID를 프록시로 사용할 수 있습니다(예: CPU 일련 번호). 디바이스에서 이 식별 정보를 변경하는 것은 간단하지 않으므로 기본 디바이스 하드웨어가 변경되지만 논리적 디바이스는 동일하게 유지되는 경우 논리적 디바이스 ID를 도입하는 것이 중요합니다. 일부 경우 디바이스 ID의 연결이 디바이스 배포 시 발생할 수 있습니다(예: 솔루션 백 엔드와 통신하는 동안 인증된 현장 엔지니어가 새 디바이스를 물리적으로 구성). Azure IoT Hub ID 레지스트리 는 디바이스 ID에 대한 보안 스토리지와 솔루션을 위한 보안 키를 제공합니다. 개별 또는 그룹 디바이스 ID를 허용 목록 또는 차단 목록에 추가하여 디바이스 액세스를 완벽하게 제어할 수 있습니다.

클라우드에서 Azure IoT Hub 액세스 제어 정책은 디바이스 ID를 활성화 및 비활성화하여 필요할 경우 IoT 배포에서 디바이스를 분리하는 방법을 제공합니다. 디바이스의 연결 및 분리는 각 디바이스 ID를 기반으로 합니다.

기타 디바이스 보안 기능은 다음과 같습니다.

  • 디바이스는 요청하지 않은 네트워크 연결을 허용하지 않습니다. 아웃바운드 전용 방식으로 모든 연결 및 경로를 설정합니다. 백 엔드에서 명령을 받는 디바이스의 경우 디바이스는 처리할 보류 중인 모든 명령의 확인에 대한 연결을 시작해야 합니다. 디바이스 및 IoT Hub 간의 연결이 안전하게 설정되면 클라우드에서 디바이스로, 디바이스에서 클라우드로 메시징을 투명하게 전송할 수 있습니다.
  • 디바이스는 Azure IoT Hub와 같은 잘 알려진 서비스에 피어링을 통해 연결하거나 경로를 설정해야 합니다.
  • 시스템 수준 권한 부여 및 인증은 디바이스 ID를 사용하며 액세스 자격 증명 및 권한은 즉시 취소 가능합니다.

보안 연결

Azure IoT Hub는 업계에서 검증된 프로토콜(HTTPS, AMQP 및 MQTT)을 사용하여 보안 연결을 지원합니다.

Azure IoT Hub는 메시지에 대한 응답에서 승인 시스템을 통해 클라우드 및 디바이스 간 메시징의 내구성을 제공합니다. 메시징에 대한 추가 내구성은 원격 분석의 경우 최대 7일, 명령의 경우 2일 동안 IoT Hub의 메시지를 캐싱하여 달성됩니다. 이 방법을 사용하면 전원 또는 연결 문제로 인해 산발적으로 연결하는 디바이스에서 이러한 명령을 수신할 수 있습니다. Azure IoT Hub는 각 디바이스에 대한 디바이스별 큐를 유지 관리합니다.

확장성을 위해서는 광범위한 디바이스와 안전하게 상호 운영하는 기능이 필요합니다. Azure IoT hub를 사용하면 IP 사용 디바이스 및 비IP 사용 디바이스(IoT Edge 디바이스를 게이트웨이로 사용) 모두에 안전하게 연결할 수 있습니다.

기타 연결 보안 기능은 다음과 같습니다.

  • 디바이스 및 Azure IoT Hub 간 또는 게이트웨이 및 Azure IoT Hub 간 통신 경로는 X.509 프로토콜을 사용하여 인증된 Azure IoT Hub와 업계 표준 전송 계층 보안(TLS)을 사용하여 보안이 설정됩니다.
  • 요청하지 않은 인바운드 연결에서 디바이스를 보호하기 위해 Azure IoT Hub는 디바이스에 대한 연결을 열지 않습니다. 디바이스는 모든 연결을 시작합니다.
  • Azure IoT Hub는 지속적으로 디바이스에 대한 메시지를 저장하고 디바이스가 연결될 때까지 기다립니다. 이러한 명령은 2일 동안 저장되며 전원 또는 연결 문제로 인해 산발적으로 디바이스 연결을 가능하게 하여 이러한 명령을 수신합니다. Azure IoT Hub는 각 디바이스에 대한 디바이스별 큐를 유지 관리합니다.

보안 처리 및 클라우드 스토리지

Azure IoT Hub는 사용자 인증 및 권한 부여에 Microsoft Entra ID를 사용하여 클라우드의 데이터에 대한 정책 기반 권한 부여 모델을 제공함으로써 감사 및 검토할 수 있는 손쉬운 액세스 관리를 가능하게 할 수 있습니다.

데이터가 클라우드에 있는 경우 사용자가 정의한 워크플로에 처리 및 저장할 수 있습니다. 데이터의 각 부분에 대한 액세스는 사용되는 스토리지 서비스에 따라 Microsoft Entra ID로 제어됩니다.

IoT 인프라에서 사용되는 모든 키는 보안 스토리지의 클라우드에 저장되며 키를 다시 프로비전해야하는 경우 롤오버할 수 있는 기능을 보유합니다. 데이터는 Azure Cosmos DB 또는 SQL Database에 저장할 수 있으며 원하는 보안 수준의 정의를 사용할 수 있습니다. 또한 Azure에서는 데이터에 대한 모든 액세스를 모니터링 및 감사하는 방법을 제공하여 침입 또는 무단 액세스를 경고합니다.

네트워크 보호

기본적으로 IoT Hub의 호스트 이름은 인터넷을 통해 공개적으로 라우팅할 수 있는 IP 주소를 갖는 퍼블릭 엔드포인트에 매핑됩니다. 이렇게 하면 여러 고객이 이 IoT Hub 퍼블릭 엔드포인트를 공유할 수 있으며, 광역 네트워크 및 온-프레미스 네트워크를 통해 연결하는 IoT 디바이스가 허브에 액세스할 수 있습니다. 그러나 Azure 리소스에 대한 액세스를 제한하려는 경우가 있습니다. Azure IoT 솔루션은 IP 필터링과 가상 네트워크를 모두 지원하여 필요할 때 액세스를 보호합니다.

네트워크 액세스 보안에 대한 자세한 내용은 다음 리소스를 참조하세요.