기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
의 전송 보안 AWS IoT Core
전송 계층 보안(TLS)은 컴퓨터 네트워크를 통한 보안 통신을 위해 설계된 암호화 프로토콜입니다. AWS IoT Core Device Gateway를 사용하려면 디바이스에서 게이트웨이로의 연결에 TLS를 사용하여 전송 중 모든 통신을 암호화해야 합니다. TLS는 AWS IoT Core에서 지원하는 애플리케이션 프로토콜(MQTT, HTTP, WebSocket)의 기밀성을 달성하는 데 사용됩니다. TLS 지원은 다수의 프로그래밍 언어 및 운영 체제를 지원합니다. 내의 데이터는 특정 AWS 서비스에 의해 암호화 AWS 됩니다. 다른 AWS 서비스의 데이터 암호화에 대한 자세한 내용은 해당 서비스의 보안 설명서를 참조하세요.
TLS 프로토콜
AWS IoT Core 는 다음 버전의 TLS 프로토콜을 지원합니다.
-
TLS 1.3
-
TLS 1.2
를 사용하면 도메인 구성에서 TLS 설정(TLS 1.2
보안 정책
보안 정책은 클라이언트와 서버 간의 TLS 협상 중에 지원되는 프로토콜과 암호를 결정하는 TLS 프로토콜과 해당 암호의 조합입니다. 필요에 따라 미리 정의된 보안 정책을 사용하도록 디바이스를 구성할 수 있습니다. AWS IoT Core 는 사용자 지정 보안 정책을 지원하지 않습니다.
디바이스를 연결할 때 디바이스에 대해 사전 정의된 보안 정책 중 하나를 선택할 수 있습니다 AWS IoT Core. 에서 사전 정의된 최신 보안 정책의 이름에는 릴리스된 연도 및 월을 기반으로 한 버전 정보가 AWS IoT Core 포함됩니다. 기본 사전 정의 보안 정책은 IoTSecurityPolicy_TLS13_1_2_2022_10
입니다. 보안 정책을 지정하려면 AWS IoT 콘솔 또는를 사용할 수 있습니다 AWS CLI. 자세한 내용은 도메인 구성에서 TLS 설정 구성 단원을 참조하십시오.
다음 테이블에는 AWS IoT Core 에서 지원하는 가장 최근의 사전 정의된 보안 정책이 설명되어 있습니다. IotSecurityPolicy_
가 제목 행의 정책 이름에서 제거되어 해당 위치에 맞게 조정되었습니다.
보안 정책 | TLS13_1_3_2022_10 | TLS13_1_2_2022_10 | TLS12_1_2_2022_10 | TLS12_1_0_2016_01* | TLS12_1_0_2015_01* | ||
---|---|---|---|---|---|---|---|
TCP 포트 |
443/8443/8883 |
443/8443/8883 |
443/8443/8883 |
443 | 8443/8883 | 443 | 8443/8883 |
TLS 프로토콜 | |||||||
TLS 1.2 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
TLS 1.3 | ✓ | ✓ | |||||
TLS 암호 | |||||||
TLS_AES_128_GCM_SHA256 | ✓ | ✓ | |||||
TLS_AES_256_GCM_SHA384 | ✓ | ✓ | |||||
TLS_CHACHA20_POLY1305_SHA256 | ✓ | ✓ | |||||
ECDHE-RSA-AES128-GCM-SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
ECDHE-RSA-AES128-SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
ECDHE-RSA-AES128-SHA | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
ECDHE-RSA-AES256-GCM-SHA384 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
ECDHE-RSA-AES256-SHA384 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
ECDHE-RSA-AES256-SHA | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
AES128-GCM-SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
AES128-SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ | ||
AES128-SHA | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
AES256-GCM-SHA384 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
AES256-SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
AES256-SHA | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
DHE-RSA-AES256-SHA | ✓ | ✓ | |||||
ECDHE-ECDSA-AES128-GCM-SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
ECDHE-ECDSA-AES128-SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
ECDHE-ECDSA-AES128-SHA | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
ECDHE-ECDSA-AES256-GCM-SHA384 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
ECDHE-ECDSA-AES256-SHA384 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
ECDHE-ECDSA-AES256-SHA | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
참고
TLS12_1_0_2016_01
는 AWS 리전 ap-east-1, ap-northeast-2, ap-south-1, ap-southeast-2, ca-central-1, cn-north-1, cn-northwest-1, eu-north-1, eu-west-2, eu-west-3, me-south-1, sa-east-1, us-east-2, us-gov-west-1, us-gov-west-2, us-west-1에서만 사용할 수 있습니다.
TLS12_1_0_2015_01
는 AWS 리전 ap-northeast-1, ap-southeast-1, eu-central-1, eu-west-1, us-east-1, us-west-2에서만 사용할 수 있습니다.
AWS IoT Core의 전송 보안에 관한 중요 참고 사항
MQTT를 AWS IoT Core 사용하여에 연결하는 디바이스의 경우 TLS는 디바이스와 브로커 간의 연결을 암호화하고 TLS 클라이언트 인증을 AWS IoT Core 사용하여 디바이스를 식별합니다. 자세한 내용은 클라이언트 인증을 참조하세요. HTTP를 AWS IoT Core 사용하여에 연결하는 디바이스의 경우 TLS는 디바이스와 브로커 간의 연결을 암호화하고 인증은 AWS 서명 버전 4에 위임됩니다. 자세한 내용은 AWS 일반 참조에서 서명 버전 4를 사용하여 요청에 서명을 참조하세요.
디바이스를에 연결할 때 서버 이름 표시(SNI) 확장host_name
필드에 전체 엔드포인트 주소를 제공해야 합니다. host_name
필드에는 호출하는 엔드포인트가 포함되어야 합니다. 이 엔드포인트는 다음 중 하나여야 합니다.
-
aws iot describe-endpoint
에서 반환한--endpoint-type iot:Data-ATS endpointAddress
-
aws iot describe-domain-configuration
에서 반환한–-domain-configuration-name " domain_configuration_name
"domainName
잘못된 값 또는 잘못된 host_name
값을 가진 디바이스에서 시도한 연결은 실패합니다. AWS IoT Core 는 사용자 지정 인증의 인증 유형에 대해 CloudWatch에 실패를 기록합니다.
AWS IoT Core 는 SessionTicket TLS 확장
LoRaWAN 무선 디바이스를 위한 전송 보안
LoRaWAN 디바이스는 LoRaWAN™ 보안: LoRa Alliance™에 Gemalto, Actility 및 Semtech이 준비한 백서
LoRaWAN 디바이스를 사용한 전송 보안에 대한 자세한 내용은 LoRaWAN 데이터 및 전송 보안 섹션을 참조하세요.