

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 연결 문제 진단
<a name="diagnosing-connectivity-issues"></a>

**이 주제를 개선하도록 도와주세요.**  
 [이 주제를 개선할 수 있는 의견이 있으시다면 알려주세요.](https://docs.aws.amazon.com//forms/aws-doc-feedback?hidden_service_name=IoT%20Docs&topic_url=http://docs.aws.amazon.com/en_us/iot/latest/diagnosing-connectivity-issues.html)

에 성공적으로 연결하려면 다음이 AWS IoT 필요합니다.
+ 유효한 연결
+ 유효한 활성 인증서
+ 원하는 연결 및 작업을 허용하는 정책

## Connection
<a name="troubleshooting-connect"></a>

올바른 엔드포인트를 찾으려면 어떻게 해야 합니까?  
+ `aws iot [describe-endpoint](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/describe-endpoint.html) --endpoint-type iot:Data-ATS`에서 반환한 `endpointAddress`

  또는
+ `aws iot [describe-domain-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/describe-domain-configuration.html) –-domain-configuration-name "domain_configuration_name"`에서 반환한 `domainName`

올바른 서버 이름 표시(SNI) 값을 찾으려면 어떻게 합니까?  
올바른 SNI 값은 **[describe-endpoint](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/describe-endpoint.html)**에서 반환된 `endpointAddress` 또는 **[describe-domain-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/describe-domain-configuration.html)** 명령에서 반환된 `domainName`입니다. 이전 단계에서 엔드포인트와 동일한 주소입니다. 디바이스를에 연결할 때 AWS IoT Core클라이언트는 [서버 이름 표시(SNI) 확장](https://tools.ietf.org/html/rfc3546#section-3.1)을 전송할 수 있습니다.이 확장은 필수는 아니지만 적극 권장됩니다. [다중 계정 등록](https://docs.aws.amazon.com//iot/latest/developerguide/x509-client-certs.html#multiple-account-cert), [사용자 지정 도메인](https://docs.aws.amazon.com//iot/latest/developerguide/iot-custom-endpoints-configurable-custom.html), [VPC 엔드포인트](https://docs.aws.amazon.com//iot/latest/developerguide/IoTCore-VPC.html)와 같은 기능을 사용하려면 SNI 확장을 사용해야 합니다. 자세한 내용은 [의 전송 보안을 AWS IoT](transport-security.html) 참조하세요.

지속되는 연결 문제를 해결하려면 어떻게 해야 하나요?  
 AWS Device Advisor를 사용하여 문제를 해결할 수 있습니다. Device Advisor의 미리 빌드된 테스트는 [TLS](https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html), [MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html), [AWS IoT 디바이스 섀도우](https://docs.aws.amazon.com/iot/latest/developerguide/iot-device-shadows.html) 및 [AWS IoT 작업](https://docs.aws.amazon.com/iot/latest/developerguide/iot-jobs.html) 사용에 대한 모범 사례에 대해 디바이스 소프트웨어를 검증하는 데 도움이 됩니다.  
 다음은 기존 [Device Advisor](https://docs.aws.amazon.com/iot/latest/developerguide/device-advisor.html) 콘텐츠 링크입니다.

## Authentication
<a name="troubleshooting-authentication"></a>

 AWS IoT 엔드포인트에 연결하려면 디바이스를 [인증](client-authentication.md)해야 합니다. 인증[X.509 클라이언트 인증서](x509-client-certs.md)에를 사용하는 디바이스의 경우 인증서를에 등록 AWS IoT 하고 활성화해야 합니다.

디바이스가 AWS IoT 엔드포인트를 인증하는 방법  
클라이언트의 트러스트 스토어에 AWS IoT CA 인증서를 추가합니다. [AWS IoT Core에서 서버 인증](x509-client-certs.html#server-authentication)에 대한 설명서를 참조한 다음 링크를 따라 적절한 CA 인증서를 다운로드하세요.

디바이스가에 연결되면 무엇이 확인되나요 AWS IoT?  
디바이스가 AWS IoT에 연결을 시도할 때:  

1. AWS IoT 는 유효한 인증서와 서버 이름 표시(SNI) 값을 확인합니다.

1. AWS IoT 는 사용된 인증서가 계정에 등록되어 AWS IoT 있고 활성화되었는지 확인합니다.

1. 디바이스가 메시지 구독 또는 게시 AWS IoT와 같은 작업을 수행하려고 하면 연결하는 데 사용한 인증서에 연결된 정책을 확인하여 디바이스가 해당 작업을 수행할 권한이 있는지 확인합니다.

올바로 구성된 인증서를 어떻게 확인할 수 있습니까?  
OpenSSL `s_client` 명령을 사용하여 AWS IoT 엔드포인트와 연결을 테스트하세요.  

```
openssl s_client -connect custom_endpoint.iot.aws-region.amazonaws.com:8443 -CAfile CA.pem -cert cert.pem -key privateKey.pem
```
`openssl s_client` 사용에 관한 자세한 내용은 [OpenSSL s\$1client 설명서](https://www.openssl.org/docs/man1.0.2/man1/openssl-s_client.html)를 참조하세요.

인증서 상태를 확인하려면 어떻게 합니까?  
+ 

**인증서 나열**  
인증서 ID를 모르는 경우 `aws iot [list-certificates](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/list-certificates.html)` 명령을 사용하여 모든 인증서의 상태를 볼 수 있습니다.
+ 

**인증서 세부 정보 표시**  
인증서의 ID를 알고 있는 경우 이 명령은 인증서에 대한 자세한 정보를 표시합니다.

  ```
  aws iot [describe-certificate](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/describe-certificate.html) --certificate-id "certificateId"
  ```
+ 

**AWS IoT 콘솔에서 인증서 검토**  
[AWS IoT 콘솔](https://console.aws.amazon.com/iot/home)의 왼쪽 메뉴에서 **보안(Secure)**을 선택한 다음 **인증서(Certificates)**를 선택합니다.

  목록에서 연결하는 데 사용할 인증서를 선택하여 세부 정보 페이지를 엽니다.

  인증서의 세부 정보 페이지에서 현재 상태를 볼 수 있습니다.

  인증서 상태는 세부 정보 페이지의 오른쪽 상단 모서리에 있는 **작업(Actions)** 메뉴를 사용하여 변경할 수 있습니다.

## 권한 부여
<a name="troubleshooting-authorization"></a>

AWS IoT 리소스는 [AWS IoT Core 정책](iot-policies.md)를 사용하여 해당 리소스가 [작업을](iot-policy-actions.md) 수행하도록 승인합니다. 작업을 승인하려면 지정된 AWS IoT 리소스에 해당 작업을 수행할 수 있는 권한을 부여하는 정책 문서가 연결되어 있어야 합니다.

브로커로부터 `PUBNACK` 또는 `SUBNACK` 응답을 받았습니다. 어떻게 해야 합니까?  
호출하는 데 사용하는 인증서에 연결된 정책이 있는지 확인합니다 AWS IoT. 모든 게시/구독 작업은 기본적으로 거부됩니다.  
연결된 정책이 수행하려는 [작업](iot-policy-actions.md)을 승인하는지 확인하세요.  
연결된 정책이 승인된 작업을 수행하려는 [리소스](iot-action-resources.md)를 승인하는지 확인하세요.

내 로그에 *AUTHORIZATION\$1FAILURE* 항목이 있습니다.  
호출하는 데 사용하는 인증서에 연결된 정책이 있는지 확인합니다 AWS IoT. 모든 게시/구독 작업은 기본적으로 거부됩니다.  
연결된 정책이 수행하려는 [작업](iot-policy-actions.md)을 승인하는지 확인하세요.  
연결된 정책이 승인된 작업을 수행하려는 [리소스](iot-action-resources.md)를 승인하는지 확인하세요.

정책에서 권한 부여한 내용을 어떻게 확인합니까?  
[AWS IoT 콘솔](https://console.aws.amazon.com/iot/home)의 왼쪽 메뉴에서 **보안**을 선택한 다음 **인증서**를 선택합니다.  
목록에서 연결하는 데 사용할 인증서를 선택하여 세부 정보 페이지를 엽니다.  
인증서의 세부 정보 페이지에서 현재 상태를 볼 수 있습니다.  
인증서 세부 정보 페이지의 왼쪽 메뉴에서 **정책(Policies)**을 선택하고 인증서에 연결된 정책을 봅니다.  
원하는 정책을 선택하여 세부 정보 페이지를 봅니다.  
정책의 세부 정보 페이지에서 정책의 **정책 문서**를 검토하여 어떤 권한을 부여하는지 확인합니다.  
**정책 문서 편집(Edit policy document)**을 선택하여 정책 문서를 변경합니다.

## 보안 및 자격 증명
<a name="troubleshooting-security-identity"></a>

 AWS IoT 사용자 지정 도메인 구성을 위한 서버 인증서를 제공하면 인증서의 도메인 이름은 최대 4개입니다.

자세한 내용은 [AWS IoT Core 엔드포인트 및 할당량](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#security-limits)을 참조하세요.