Udostępnij przez


Usługa IoT Edge dla systemu Linux w zabezpieczeniach systemu Windows

Dotyczy:Znacznik wyboru usługi IoT Edge 1.5 IoT Edge 1.5

Ważne

Obsługiwana wersja usługi IoT Edge 1.5 LTS. Usługa IoT Edge 1.4 LTS kończy się od 12 listopada 2024 r. Jeśli korzystasz z wcześniejszej wersji, zobacz aktualizację Azure IoT Edge.

Usługa Azure IoT Edge dla systemu Linux w systemie Windows używa wszystkich funkcji zabezpieczeń hosta klienta lub serwera z systemem Windows i zapewnia, że wszystkie dodatkowe składniki są zgodne z tymi samymi zasadami zabezpieczeń. W tym artykule wyjaśniono różne zasady zabezpieczeń, które są domyślnie włączone, i niektóre opcjonalne zasady, które można włączyć.

Zabezpieczenia maszyn wirtualnych

Zgromadzona maszyna wirtualna usługi IoT Edge dla systemu Linux (EFLOW) jest oparta na systemie Microsoft Azure Linux. Azure Linux to wewnętrzna dystrybucja systemu Linux dla infrastruktury chmury, produktów brzegowych i usług firmy Microsoft. System Azure Linux zapewnia spójną platformę dla tych urządzeń i usług i pomaga firmie Microsoft być na bieżąco z aktualizacjami systemu Linux. Aby uzyskać więcej informacji, zobacz Zabezpieczenia systemu Linux platformy Azure.

Maszyna wirtualna EFLOW używa czteropunktowej kompleksowej platformy zabezpieczeń:

  1. Aktualizacje obsługi
  2. Główny system plików tylko do odczytu
  3. Blokada zapory
  4. Dm-Verity

Aktualizacje obsługi

Gdy pojawiają się luki w zabezpieczeniach, system Azure Linux udostępnia najnowsze aktualizacje zabezpieczeń i poprawki za pośrednictwem comiesięcznych aktualizacji EFLOW. Maszyna wirtualna nie ma menedżera pakietów, więc nie można ręcznie pobrać ani zainstalować pakietów RPM. System EFLOW instaluje wszystkie aktualizacje maszyny wirtualnej przy użyciu mechanizmu aktualizacji A/B. Aby uzyskać więcej informacji na temat aktualizacji EFLOW, zobacz Aktualizowanie usługi IoT Edge dla systemu Linux w systemie Windows.

Główny system plików tylko do odczytu

Maszyna wirtualna EFLOW ma dwie główne partycje: rootfs i dane. Partycje rootFS-A lub rootFS-B są wymienne, a jedna z nich jest zamontowana jako system plików tylko do odczytu w systemie /, więc nie można zmienić plików w tej partycji. Partycja danych , instalowana w obszarze /var, jest czytelna i zapisywalna, dzięki czemu można zmienić jego zawartość. Proces aktualizacji nie zmienia danych przechowywanych w tej partycji, więc nie jest modyfikowany w ramach aktualizacji.

Aby zapewnić dostęp do zapisu, ponieważ może być potrzebny w określonych przypadkach użycia, platforma EFLOW nakłada te katalogi na partycję danych pod adresem /etc dla katalogów /home, /root, /var, i /var/.eflow/overlays. Ta konfiguracja umożliwia zapisywanie w tych katalogach. Aby uzyskać więcej informacji na temat nakładek, zobacz nakładki.

Układ partycji EFLOW CR

Partycja Rozmiar opis
BootEFIA 8 MB Partycja oprogramowania układowego A dla przyszłego rozruchu bezbłędnego
BootA 192 MB Zawiera moduł ładujący dla partycji A
RootFS A 4 GB Jedna z dwóch aktywnych/pasywnych partycji z głównym systemem plików
BootEFIB 8 MB Partycja oprogramowania układowego B dla przyszłego rozruchu bezbłędowego
BootB 192 MB Zawiera moduł ładujący dla partycji B
RootFS B 4 GB Jedna z dwóch aktywnych/pasywnych partycji z głównym systemem plików
Dziennik 1 GB lub 6 GB Rejestruje określoną partycję instalowaną w obszarze /logs
Dane Od 2 GB do 2 TB Partycja stanowa do przechowywania trwałych danych między aktualizacjami. Można rozszerzyć zgodnie z konfiguracją wdrożenia.

Uwaga

Układ partycji reprezentuje rozmiar dysku logicznego i nie wskazuje miejsca fizycznego używanego przez maszynę wirtualną na dysku systemu operacyjnego hosta.

Zapora sieciowa

Domyślnie maszyna wirtualna EFLOW używa narzędzia iptables do konfiguracji zapory. Iptables ustawia, utrzymuje i sprawdza reguły filtrowania pakietów IP w tabelach w jądrze systemu Linux. Domyślna implementacja umożliwia ruch przychodzący na porcie 22 (usługa SSH) i blokuje inny ruch. Sprawdź konfigurację iptables, wykonując następujące kroki:

  1. Otwieranie sesji programu PowerShell z podwyższonym poziomem uprawnień

  2. Nawiązywanie połączenia z maszyną wirtualną EFLOW

    Connect-EflowVm
    
  3. Wyświetlanie listy wszystkich reguł iptables

    sudo iptables -L
    

    Domyślne tabele iptable protokołu EFLOW

Zweryfikowany rozruch

Maszyna wirtualna EFLOW obsługuje zweryfikowany rozruch za pośrednictwem dołączonej funkcji jądra device-mapper-verity (dm-verity), która zapewnia przezroczyste sprawdzanie integralności urządzeń blokowych. Dm-verity pomaga zapobiegać trwałym zestawom rootkit, które mogą trzymać się uprawnień głównych i naruszyć bezpieczeństwo urządzeń. Ta funkcja zapewnia, że podstawowy obraz oprogramowania maszyny wirtualnej jest taki sam i nie został zmieniony. Maszyna wirtualna używa funkcji dm-verity , aby sprawdzić określone urządzenie blokowe, podstawową warstwę magazynu systemu plików i sprawdzić, czy jest zgodna z oczekiwaną konfiguracją.

Domyślnie ta funkcja jest wyłączona na maszynie wirtualnej, ale można ją włączyć lub wyłączyć. Aby uzyskać więcej informacji, zobacz dm-verity.

Moduł TPM (Trusted Platform Module)

Technologia modułu TPM (Trusted Platform Module) została zaprojektowana w celu zapewnienia funkcji związanych ze sprzętem i zabezpieczeniami. Układ TPM jest bezpieczne kryptograficznego tekstów, przeznaczony do wykonywania operacji kryptograficznych. Polega na układzie wiele mechanizmów zabezpieczeń fizycznych dokonanie odpornych na manipulacje i złośliwego oprogramowania nie może modyfikować funkcji zabezpieczeń modułu TPM.

Maszyna wirtualna EFLOW nie obsługuje maszyny wirtualnej vTPM. Można jednak włączyć lub wyłączyć funkcję przekazywania modułu TPM, która umożliwia maszynie wirtualnej EFLOW korzystanie z modułu TPM systemu Windows na hoście. Umożliwia to wykonanie dwóch głównych scenariuszy:

Bezpieczna komunikacja hosta i maszyny wirtualnej

Platforma EFLOW umożliwia interakcję z maszyną wirtualną przy użyciu modułu programu PowerShell. Aby uzyskać więcej informacji, zobacz Funkcje programu PowerShell dla usługi IoT Edge dla systemu Linux w systemie Windows. Ten moduł wymaga uruchomienia sesji z podwyższonym poziomem uprawnień i jest podpisany przy użyciu certyfikatu firmy Microsoft Corporation.

Cała komunikacja między hostem systemu operacyjnego Windows a maszyną wirtualną EFLOW, która korzysta z poleceń cmdlet programu PowerShell, odbywa się przez kanał SSH. Domyślnie usługa SSH maszyny wirtualnej nie zezwala na uwierzytelnianie za pomocą nazwy użytkownika i hasła i zezwala tylko na uwierzytelnianie certyfikatów. Certyfikat jest tworzony podczas procesu wdrażania EFLOW i jest unikatowy dla każdej instalacji EFLOW. Aby zapobiec atakom siłowym SSH, maszyna wirtualna blokuje adres IP, jeśli próbuje więcej niż trzy połączenia na minutę z usługą SSH.

W wersji EFLOW Continuous Release (CR) kanał transportu dla połączenia SSH zmienia się. Pierwotnie usługa SSH działa na porcie TCP 22, do którego każde urządzenie zewnętrzne w tej samej sieci może uzyskać dostęp przy użyciu gniazda TCP. Dla większego bezpieczeństwa EFLOW CR uruchamia usługę SSH przez gniazda Hyper-V zamiast standardowych gniazd TCP. Cała komunikacja za pośrednictwem gniazd Hyper-V pozostaje między systemem operacyjnym hosta systemu Windows i maszyną wirtualną EFLOW bez korzystania z sieci. Ta konfiguracja ogranicza dostęp do usługi SSH przez ograniczenie połączeń tylko do systemu operacyjnego hosta systemu Windows. Aby uzyskać więcej informacji, zobacz Gniazda funkcji Hyper-V.

Następne kroki

Dowiedz się więcej o środowisku zabezpieczeń IoT systemu Windows

Bądź na bieżąco z najnowszymi aktualizacjami usługi IoT Edge dla systemu Linux.