Mendiagnosis masalah konektivitas - AWS IoT Core

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mendiagnosis masalah konektivitas

Koneksi yang sukses untuk AWS IoT membutuhkan:

  • Koneksi yang valid

  • Sertifikat yang valid dan aktif

  • Kebijakan yang memungkinkan koneksi dan operasi yang diinginkan

Koneksi

Bagaimana cara menemukan titik akhir yang benar?
  • Yang endpointAddress dikembalikan oleh aws iot describe-endpoint --endpoint-type iot:Data-ATS

    atau

  • Yang domainName dikembalikan oleh aws iot describe-domain-configuration –-domain-configuration-name "domain_configuration_name"

Bagaimana cara menemukan nilai Server Name Indication (SNI) yang benar?

Nilai SNI yang benar adalah endpointAddress dikembalikan oleh describe-endpoint atau domainName dikembalikan oleh describe-domain-configuration perintah. Ini alamat yang sama dengan titik akhir pada langkah sebelumnya. Saat menghubungkan perangkat ke AWS IoT Core, klien dapat mengirim ekstensi Server Name Indication (SNI), yang tidak diperlukan tetapi sangat disarankan. Untuk menggunakan fitur seperti pendaftaran multi-akun, domain khusus, dan titik akhir VPC, Anda harus menggunakan ekstensi SNI. Untuk informasi selengkapnya, lihat Keamanan Transportasi di AWS IoT.

Bagaimana cara mengatasi masalah konektivitas yang berlanjut?

Anda dapat menggunakan AWS Device Advisor untuk membantu memecahkan masalah. Pengujian bawaan Device Advisor membantu Anda memvalidasi perangkat lunak perangkat Anda terhadap praktik terbaik untuk penggunaan TLS, MQTT, AWS IoT Device Shadow, dan Pekerjaan.AWS IoT

Berikut ini tautan ke konten Device Advisor yang ada.

Autentikasi

Perangkat harus diautentikasi untuk terhubung ke titik AWS IoT akhir. Untuk perangkat yang digunakan Sertifikat klien X.509 untuk otentikasi, sertifikat harus terdaftar AWS IoT dan aktif.

Bagaimana cara perangkat saya mengautentikasi titik AWS IoT akhir?

Tambahkan sertifikat AWS IoT CA ke toko kepercayaan klien Anda. Lihat dokumentasi tentang Otentikasi Server di AWS IoT Core dan kemudian ikuti tautan untuk mengunduh sertifikat CA yang sesuai.

Apa yang diperiksa saat perangkat terhubung AWS IoT?

Ketika perangkat mencoba untuk terhubung ke AWS IoT:

  1. AWS IoT memeriksa sertifikat yang valid dan nilai Server Name Indication (SNI).

  2. AWS IoT memeriksa untuk melihat bahwa sertifikat yang digunakan terdaftar di AWS IoT Akun dan telah diaktifkan.

  3. Saat perangkat mencoba melakukan tindakan apa pun AWS IoT, seperti berlangganan atau memublikasikan pesan, kebijakan yang dilampirkan pada sertifikat yang digunakan untuk menyambungkannya akan diperiksa untuk mengonfirmasi bahwa perangkat berwenang untuk melakukan tindakan tersebut.

Bagaimana saya bisa memvalidasi sertifikat yang dikonfigurasi dengan benar?

Gunakan perintah s_client OpenSSL untuk menguji koneksi ke titik akhir: AWS IoT

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

Untuk informasi selengkapnya tentang penggunaanopenssl s_client, lihat dokumentasi s_client OpenSSL.

Bagaimana cara memeriksa status sertifikat?
  • Buat daftar sertifikat

    Jika Anda tidak mengetahui ID sertifikat, Anda dapat melihat status semua sertifikat Anda dengan menggunakan aws iot list-certificates perintah.

  • Tampilkan detail sertifikat

    Jika Anda mengetahui ID sertifikat, perintah ini menunjukkan informasi lebih rinci tentang sertifikat.

    aws iot describe-certificate --certificate-id "certificateId"
  • Tinjau sertifikat di AWS IoT Konsol

    Di AWS IoT konsol, di menu sebelah kiri, pilih Aman, lalu pilih Sertifikat.

    Pilih sertifikat yang Anda gunakan untuk terhubung dari daftar untuk membuka halaman detailnya.

    Di halaman detail sertifikat, Anda dapat melihat statusnya saat ini.

    Status sertifikat dapat diubah dengan menggunakan menu Tindakan di sudut kanan atas halaman detail.

Otorisasi

AWS IoT sumber daya digunakan AWS IoT Core kebijakan untuk mengotorisasi sumber daya tersebut untuk melakukan tindakan. Agar suatu tindakan diotorisasi, AWS IoT sumber daya yang ditentukan harus memiliki dokumen kebijakan yang dilampirkan padanya yang memberikan izin untuk melakukan tindakan itu.

Saya menerima PUBNACK atau SUBNACK tanggapan dari broker. Apa yang harus saya lakukan?

Pastikan ada kebijakan yang dilampirkan pada sertifikat yang Anda gunakan untuk menelepon AWS IoT. Semua operasi terbitkan/berlangganan ditolak secara default.

Pastikan kebijakan terlampir mengotorisasi tindakan yang Anda coba lakukan.

Pastikan kebijakan terlampir mengotorisasi sumber daya yang mencoba melakukan tindakan resmi.

Saya memiliki entri AUTHORIZATION_FAILURE di log saya.

Pastikan ada kebijakan yang dilampirkan pada sertifikat yang Anda gunakan untuk menelepon AWS IoT. Semua operasi terbitkan/berlangganan ditolak secara default.

Pastikan kebijakan terlampir mengotorisasi tindakan yang Anda coba lakukan.

Pastikan kebijakan terlampir mengotorisasi sumber daya yang mencoba melakukan tindakan resmi.

Bagaimana cara memeriksa apa yang diizinkan oleh kebijakan?

Di AWS IoT konsol, di menu sebelah kiri, pilih Aman, lalu pilih Sertifikat.

Pilih sertifikat yang Anda gunakan untuk terhubung dari daftar untuk membuka halaman detailnya.

Di halaman detail sertifikat, Anda dapat melihat statusnya saat ini.

Di menu sebelah kiri halaman detail sertifikat, pilih Kebijakan untuk melihat kebijakan yang dilampirkan pada sertifikat.

Pilih kebijakan yang diinginkan untuk melihat halaman detailnya.

Di halaman detail kebijakan, tinjau dokumen Kebijakan kebijakan untuk melihat apa yang diotorisasi.

Pilih Edit dokumen kebijakan untuk membuat perubahan pada dokumen kebijakan.

Keamanan dan identitas

Ketika Anda memberikan sertifikat server untuk konfigurasi domain AWS IoT kustom, sertifikat memiliki maksimal empat nama domain.

Untuk informasi lebih lanjut, lihat AWS IoT Core kuota dan titik akhir.