
Przegląd
Ten przewodnik przeprowadzi Cię przez proces pobierania, konfiguracji i uruchamiania Skrypt Provisioningu AWS dla Shelly. Ten skrypt automatyzuje konfigurację AWS CLI, Zasoby AWS IoT Core, i konfiguruje twoje urządzenie Shelly aby bezpiecznie połączyć się z AWS IoT Core.
Wymagania Wstępne
Bezpłatny konto AWS z włączoną usługą IoT Core, również obecnie bezpłatną.
Urządzenie Shelly Gen2+ (np. Shelly 1 G3) podłączone do sieci z dostępem do internetu
Podstawowa znajomość AWS IoT Core i MQTT.
Upewnij się, że Twoje urządzenie Shelly ma najnowsze oprogramowanie układowe zainstalowano.
Komputer działający na Ubuntu or Linux oparty na Debianie.
Administracyjne (
korzeń) dostęp do twojego systemu.Urządzenie Shelly podłączone do Twojej sieci lokalnej.
Instrukcje Krok Po Kroku
Pobieranie i Konfigurowanie skryptu
Pobieranie Skryptu
Otwórz terminal & przejdź do katalogu, w którym chcesz pobrać skrypt.
Pobierz skrypt z tego odnośnik.
Sprawdź, czy skrypt został pobrany.
Ustawianie Uprawnień
Aby uruchomić skrypt, musisz nadać mu uprawnienia wykonywalne:
Zmień uprawnienia skryptu:
sudo chmod +x shelly-aws-provision.sh Uruchamianie Skryptu
Skrypt musi być uruchomiony z uprawnieniami roota:
Uruchom skrypt jako użytkownik root:
sudo ./shelly-aws-provision.sh Początkowy wynik skryptu:
Po uruchomieniu skryptu zobaczysz wynik podobny do:
[INFO] Plik dziennika ustawiono na: /path/to/your/directory/shelly-aws-provision.log ----------- ############################| Faza 1 |############################ ----------- Faza 1: Konfiguracja AWS CLI
Sprawdzanie i Instalowanie Wymagań Wstępnych
Zachowanie skryptu:
Skrypt sprawdza, czy każdy pakiet jest zainstalowany:
curl,rozpakuj,python3, ijq.Jeśli któregokolwiek z nich brakuje, wyświetla monit o zainstalowanie ich przy użyciu odpowiedni.
Przykładowe wyjście:

Instalacja AWS CLI
Skrypt wykryje, czy AWS CLI jest już zainstalowany w twoim systemie.
Jeśli AWS CLI Jest Zainstalowany:
Polecenie:
AWS CLI jest już zainstalowany. Czy chcesz przeprowadzić czystą instalację czy aktualizację? (y/n): -
Opcje:
Tak (y): Przechodzi do czystej instalacji lub aktualizacji.
Nie (n): Pomija instalację i przechodzi do AWS CLI konfiguracja.
Jeśli przystępujesz do instalacji lub aktualizacji:
Pytaj o Katalog Instalacyjny:
Naciśnij Wpisz aby zaakceptować ustawienie domyślne lub wskazać inny katalog.
Skrypt ustawi katalog bazowy dla AWS CLI pliki instalacyjne i magazyn certyfikatów.
Przykładowe wyjście:

Pobieranie AWS CLI:
Skrypt pobierze Instalator AWS CLI.
Postęp będzie wyświetlany w terminalu.
Rozpakowywanie i Instalacja AWS CLI:
Instalator zostanie rozpakowany.
AWS CLI zostanie zainstalowany lub zaktualizowany.
Testowanie Instalacji AWS CLI:
Skrypt weryfikuje AWS CLI instalacja.
Wyświetla zainstalowaną wersję.
Czyszczenie Plików Instalacyjnych:
Skrypt porządkuje pobrane i rozpakowane AWS CLI pliki.
W katalogu bazowym pozostały tylko katalogi certyfikatów.
Przykładowe Wyjście:

Wybierz Metodę Uwierzytelniania:
-
Opcja 1: SSO
Jeśli wybierzesz SSO, postępuj zgodnie z instrukcjami, aby skonfigurować AWS SSO.
Może być konieczne otwarcie przeglądarki i zalogowanie się do swojego konto AWS.
-
Opcja 2: Krótkoterminowe Poświadczenia
Jeśli wybierzesz tymczasowe dane uwierzytelniające, wpisz swój ID Klucza Dostępu AWS i Tajny Klucz Dostępu gdy pojawi się monit.
Określ domyślny region i format wyjściowy.
Przykładowe Wyjście:

Pamiętaj, że ponieważ już używamy CLI, jesteśmy zalogowani, więc po prostu otrzymujemy sugerowane wartości, na które klikamy Wprowadź. Jeśli robisz to po raz pierwszy, musisz wprowadzić wartości ręcznie.
Faza 2: Konfiguracja AWS IoT Core
Utwórz Urządzenie IoT
Wyświetl Istniejące Typy Elementów
Skrypt wyświetla istniejące Typy Obiektów pobrano z AWS IoT Core.
Jeśli nie masz żadnego, należy utworzyć nowy.
Jeśli Tworzysz Nowy Typ Rzeczy
Wpisz n aby utworzyć nowy Typ Rzeczy.
Skrypt tworzy nowy Typ Obiektu i zastosowania to dla nowego Urządzenie IoT dla bieżącego uruchomienia skryptu.
Wprowadź Nazwę Rzeczy
Skrypt tworzy Urządzenie IoT z określonym nazwa które zostały podane oraz Typ Przedmiotu wybrane/utworzone przez Ciebie.
Przykładowe wyjście:

Zarządzanie Zasadami
Wyświetl Istniejące Polityki
Skrypt wyświetla istniejące polityki IoT.
Jeśli nie masz żadnego, należy utworzyć nowy.
Jeśli Utwórz Nową Politykę
Wprowadź n aby utworzyć nową politykę.
Wprowadź nazwę
Skrypt tworzy nową politykę z domyślnymi uprawnieniami (zezwala na wszystkie działania IoT na wszystkich zasobach).
Przykładowe Wyjście:

Generowanie Certyfikatu i Załączanie
Generowanie Certyfikatów
Skrypt generuje nowy certyfikat i klucz prywatny dla Urządzenie IoT.
Certyfikaty są przechowywane w katalogu nazwanym od Rzecz o
/aws/< thing_name>-cert.
Utworzone Pliki:
Certyfikat urządzenia: deviceCert_
.pem Klucz Prywatny: privateKey_
.pem Główny urząd certyfikacji: rootCA.pem
Dołącz Polisę do Certyfikatu:
Skrypt przypisuje wybraną lub utworzoną politykę do certyfikatu.
Przypisz certyfikat do urządzenia:
Skrypt dołącza certyfikat do Urządzenie IoT.
Przykładowy Wynik:

Pobierz Informacje o Kliencie MQTT
Skrypt pobiera niezbędne dane połączenia MQTT dla urządzenia Shelly.
Podane Szczegóły:
Punkt końcowy AWS IoT Core/MQTT
Identyfikator Klienta (Nazwa Obiektu)
Ścieżki do Klucza Prywatnego, Certyfikatu i Root CA
Przykładowy Wynik:

Faza 3: Konfiguracja Urządzenia Shelly
Podaj adres IP urządzenia Shelly
Wprowadź IP twojego Urządzenie Shelly.
-
Skrypt weryfikuje format adresu IP.
Próbuje połączyć się z urządzeniem Shelly, używając podanego adresu IP.
W przypadku niepowodzenia pojawia się monit o ponowne wprowadzenie adresu IP.
Sprawdzanie i Aktualizacja Oprogramowania Układowego
-
Sprawdzenie Wersji:
Skrypt sprawdza aktualna wersja oprogramowania układowego urządzenia Shelly.
Minimalna wymagana wersja to 1.4.2.
-
Proces aktualizacji:
Jeśli oprogramowanie układowe jest nieaktualne, skrypt inicjuje aktualizacja oprogramowania układowego.
Urządzenie może uruchomić się ponownie podczas tego procesu.
Przykładowe Wyjście:

Wgraj Certyfikaty do Urządzenia Shelly
Skrypt przesyła certyfikaty, które pobrano w Faza 2: Konfiguracja AWS IoT Core (Krok: Generowanie i Dołączanie Certyfikatu) do urządzenie Shelly.
Skonfiguruj MQTT na Urządzeniu Shelly
Skrypt konfiguruje urządzenie Shelly, aby połączyć się z AWS IoT Core przez MQTT przez TLS.
Ustawienia Konfiguracji:
Endpoint Serwera: AWS IoT Core MQTT punkt końcowy.
ID Klienta: Nazwa Urządzenia IoT.
Ustawienia SSL/TLS: Używa wgranych certyfikatów.
Uruchom Ponownie Urządzenie Shelly
Skrypt ponownie uruchamia urządzenie Shelly, aby zastosować nowe ustawienia.
Czeka, aż urządzenie znów będzie online, sprawdzając okresowo.
Przykładowy wynik:

Podsumowanie
Pomyślnie skonfigurowano Twoje Shelly urządzenie do bezpiecznego łączenia się z AWS IoT Core korzystając ze skryptu provisioningowego. Twoje urządzenie jest teraz skonfigurowane do komunikacji z AWS IoT Core, i możesz zacząć monitorować i sterować nim za pomocą usługi AWS.
Notatki
Logi:
Skrypt generuje plik dziennika shelly-aws-provision.log w katalogu, w którym go uruchamiasz.
Przejrzyj ten plik, aby uzyskać szczegółowe logi z wykonania skryptu.
Katalog Certyfikatów
Chroń swoje certyfikaty.
Nie udostępniaj klucza prywatnego.
Certyfikaty znajdują się w katalogu: /ścieżka/do/aws/
-certyfikat .
Rozwiązywanie Problemów
Błędy Uprawnień:
Upewnij się, że uruchamiasz skrypt z sudo.
Zweryfikuj, czy katalogi używane przez skrypt są zapisywalne.
Problemy Z Łącznością:
Upewnij się, że Twój komputer i urządzenie Shelly są na ta sama sieć.
Zweryfikuj IP adres Shelly urządzenie jest poprawne.
Sprawdź połączenie z internetem.
Uprawnienia AWS:
Upewnij się, że Twoje użytkownik AWS ma niezbędne uprawnienia.
Jeśli używasz AWS SSO lub ról, sprawdź, czy uprawnienia są poprawnie przypisane.
Niepowodzenia Aktualizacji Oprogramowania Układowego:
Jeśli aktualizacja oprogramowania układowego się nie powiedzie, spróbuj zaktualizować Shelly urządzenie ręcznie poprzez jego interfejs WWW.
Upewnij się, że urządzenie jest włączone i połączone z internetem.
Błędy Skryptu:
Sprawdź shelly-aws-provision.log plik ze szczegółowymi komunikatami o błędach.
Upewnij się, że wszystkie wymagania wstępne są spełnione.
Cenimy Twoją Opinię!
Dziękujemy za poświęcenie czasu na lekturę naszego artykułu! Czy był pomocny lub interesujący?
Państwa spostrzeżenia mogą pomóc nam się ulepszać. Bylibyśmy wdzięczni za wszelkie opinie. Jeśli mają Państwo chwilę,
prosimy o przesłanie nam tego na następujący adres e‑mail: