Diagnóstico de problemas de conectividade - AWS IoT Core

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Diagnóstico de problemas de conectividade

Ajude-nos a melhorar este tópico

Uma conexão bem-sucedida com AWS IoT requer:

  • Uma conexão válida

  • Um certificado válido e ativo

  • Uma política que permite a conexão e a operação desejadas

Conexão

Como faço para encontrar o endpoint correto?
Como faço para encontrar o valor correto da Server Name Indication (SNI — Indicação de nome de servidor)?

O valor correto do SNI é o endpointAddress retornado pelo describe-endpoint ou o domainName retornado pelos describe-domain-configuration comandos. É o mesmo endereço do endpoint na etapa anterior. Ao conectar dispositivos a AWS IoT Core, os clientes podem enviar a extensão de Indicação de Nome do Servidor (SNI), que não é obrigatória, mas é altamente recomendada. Para usar atributos como registro de várias contas, domínios personalizados e endpoints da VPC, é necessário usar a extensão SNI. Para obter mais informações, consulte Segurança de transporte em AWS IoT.

Como resolvo um problema de conectividade que persiste?

Você pode usar o AWS Device Advisor para ajudar a solucionar problemas. Os testes pré-criados do Device Advisor ajudam você a validar o software do dispositivo em relação às práticas recomendadas de uso de TLS, MQTT, Sombra do dispositivo AWS IoT e Tarefas de AWS IoT.

Aqui está um link para o conteúdo existente do Device Advisor.

Autenticação

Os dispositivos devem ser autenticados para se conectarem aos AWS IoT endpoints. Para dispositivos que usam Certificados do cliente X.509 para autenticação, os certificados devem estar registrados AWS IoT e estar ativos.

Como meus dispositivos autenticam AWS IoT endpoints?

Adicione o certificado AWS IoT CA ao armazenamento confiável do seu cliente. Consulte a documentação em Autenticação de servidor no AWS IoT Core e siga os links para fazer download do certificado apropriado da CA.

O que é verificado quando um dispositivo se conecta a AWS IoT?

Quando um dispositivo tenta se conectar ao AWS IoT:

  1. AWS IoT verifica se há um certificado válido e um valor de Indicação de Nome de Servidor (SNI).

  2. AWS IoT verifica se o certificado usado está registrado na AWS IoT Conta e se foi ativado.

  3. Quando um dispositivo tenta realizar qualquer ação AWS IoT, como assinar ou publicar uma mensagem, a política anexada ao certificado usado para se conectar é verificada para confirmar se o dispositivo está autorizado a realizar essa ação.

Como posso validar um certificado configurado corretamente?

Use o comando s_client OpenSSL para testar uma conexão com o endpoint da AWS IoT :

openssl s_client -connect custom_endpoint.iot.aws-region.amazonaws.com:8443 -CAfile CA.pem -cert cert.pem -key privateKey.pem

Para obter mais informações sobre como usar o openssl s_client, consulte a documentação do OpenSSL s_client.

Como faço para verificar o status de um certificado?
  • Liste os certificados

    Se você não souber o ID do certificado, poderá ver o status de todos os seus certificados usando o comando aws iot list-certificates.

  • Mostrar os detalhes de um certificado

    Se você souber o ID do certificado, este comando mostrará informações mais detalhadas sobre o certificado.

    aws iot describe-certificate --certificate-id "certificateId"
  • Revise o certificado no AWS IoT console

    No console do AWS IoT, no menu esquerdo, selecione Segurança e, depois, selecione Certificados.

    Escolha o certificado que você está usando para se conectar na lista para abrir sua página de detalhes.

    Na página de detalhes do certificado, você pode ver seu status atual.

    O status do certificado pode ser alterado usando o menu Ações no canto superior direito da página de detalhes.

Autorização

AWS IoT recursos usados AWS IoT Core políticas para autorizar esses recursos a realizar ações. Para que uma ação seja autorizada, os AWS IoT recursos especificados devem ter um documento de política anexado que conceda permissão para realizar essa ação.

Recebi uma resposta PUBNACK ou SUBNACK do operador. O que devo fazer?

Verifique se há uma política anexada ao certificado que você está usando para ligar AWS IoT. Todas as operações de publicação/assinatura são negadas por padrão.

Certifique-se de que a política anexada autorize as ações que você está tentando realizar.

Certifique-se de que a política anexada autorize os recursos que estão tentando executar as ações autorizadas.

Eu tenho uma entrada AUTHORIZATION_FAILURE em meus logs.

Verifique se há uma política anexada ao certificado que você está usando para ligar AWS IoT. Todas as operações de publicação/assinatura são negadas por padrão.

Certifique-se de que a política anexada autorize as ações que você está tentando realizar.

Certifique-se de que a política anexada autorize os recursos que estão tentando executar as ações autorizadas.

Como faço para verificar o que a política autoriza?

No console do AWS IoT, no menu esquerdo, selecione Segurança e, depois, selecione Certificados.

Escolha o certificado que você está usando para se conectar na lista para abrir sua página de detalhes.

Na página de detalhes do certificado, você pode ver seu status atual.

No menu esquerdo da página de detalhes do certificado, selecione Políticas para visualizar as políticas que estão anexadas ao certificado.

Escolha a política desejada para ver sua página de detalhes.

Na página de detalhes da política, revise o Documento da política para ver o que ele autoriza.

Escolha Editar documento de política para fazer alterações no documento de política.

Segurança e identidade

Quando você fornece os certificados do servidor para configuração de domínio AWS IoT personalizada, os certificados têm no máximo quatro nomes de domínio.

Para obter mais informações, consulte AWS IoT Core Endpoints e cotas.