Windows üzerinde Linux için IoT Edge güvenliği
Şunlar için geçerlidir: IoT Edge 1.4
Önemli
Azure IoT Edge 1.5 LTS ve IoT Edge 1.4 desteklenen sürümlerdir. IoT Edge 1.4 LTS, 12 Kasım 2024'te hizmet sonuna ulaşıyor. Önceki bir sürümü kullanıyorsanız, IoT Edge’i güncelleştirme makalesine bakın.
Windows üzerinde Linux için Azure IoT Edge, bir Windows İstemcisi/Sunucu konağından çalıştırılan tüm güvenlik tekliflerinden yararlanır ve tüm ek bileşenlerin aynı güvenlik şirket içinde kalmasını sağlar. Bu makalede, varsayılan olarak etkinleştirilen farklı güvenlik şirketleriyle ve kullanıcının etkinleştirebileceği isteğe bağlı şirket içi şirketlerden bazıları hakkında bilgi sağlanır.
Sanal makine güvenliği
Linux için IoT Edge (EFLOW) tarafından seçilen sanal makine, Microsoft CBL-Mariner'ı temel alır. CBL-Mariner, Microsoft'un bulut altyapısı ve uç ürün ve hizmetleri için bir iç Linux dağıtımıdır. CBL-Mariner, bu cihazlar ve hizmetler için tutarlı bir platform sağlamak üzere tasarlanmıştır ve Microsoft'un Linux güncelleştirmelerinde güncel kalma yeteneğini geliştirir. Daha fazla bilgi için bkz . CBL-Mariner güvenliği.
EFLOW sanal makinesi dört noktalı kapsamlı bir güvenlik platformu üzerine kurulmuştur:
- Hizmet güncelleştirmeleri
- Salt okunur kök dosya sistemi
- Güvenlik duvarı kilitleme
- DM-Verity
Hizmet güncelleştirmeleri
Güvenlik açıkları ortaya çıktığında, CBL-Mariner en son güvenlik düzeltme eklerini ve düzeltmelerini ELOW aylık güncelleştirmeleri aracılığıyla kullanıma sunar. Sanal makinede paket yöneticisi olmadığından RPM paketlerini el ile indirip yüklemek mümkün değildir. Sanal makinedeki tüm güncelleştirmeler EFLOW A/B güncelleştirme mekanizması kullanılarak yüklenir. EFLOW güncelleştirmeleri hakkında daha fazla bilgi için bkz . Windows üzerinde Linux için IoT Edge'i güncelleştirme
Salt okunur kök dosya sistemi
EFLOW sanal makinesi iki ana bölüm kök dizininden ve veriden oluşur. rootFS-A veya rootFS-B bölümleri değiştirilebilir ve iki bölümden biri konumunda /
salt okunur bir dosya sistemi olarak bağlanır. Bu, bu bölümde depolanan dosyalarda hiçbir değişikliğe izin verilmediği anlamına gelir. Öte yandan, altına /var
bağlanan veri bölümü okunabilir ve yazılabilir olduğundan, kullanıcının bölümün içindeki içeriği değiştirmesine olanak tanır. Bu bölümde depolanan veriler güncelleştirme işlemi tarafından işlenmez ve bu nedenle güncelleştirmeler arasında değiştirilmez.
Belirli kullanım örnekleri için /etc
, , /home
/root
öğesine /var
yazma erişimine ihtiyacınız olabileceğinden, bu dizinler için yazma erişimi, veri bölümümüze özel olarak dizinine /var/.eflow/overlays
yüklenerek gerçekleştirilir. Bunun sonucu, kullanıcıların önceki dizinlere herhangi bir şey yazabilmesidir. Yer paylaşımları hakkında daha fazla bilgi için bkz . yer paylaşımları.
Bölüm | Size | Açıklama |
---|---|---|
BootEFIA | 8 MB | Gelecek GRUBless önyüklemesi için üretici yazılımı bölümü A |
BootA | 192 MB | Bir bölüm için önyükleyiciyi içerir |
RootFS A | 4 GB | Kök dosya sistemini tutan iki etkin/pasif bölümden biri |
BootEFIB | 8 MB | Gelecek GRUBless önyüklemesi için üretici yazılımı bölümü B |
BootB | 192 MB | B bölümü için önyükleme yükleyicisini içerir |
RootFS B | 4 GB | Kök dosya sistemini tutan iki etkin/pasif bölümden biri |
Günlük | 1 GB veya 6 GB | /logs altına bağlanan belirli bölümü günlüğe kaydeder |
Veri | 2 GB ile 2 TB | Güncelleştirmeler arasında kalıcı verileri depolamak için durum bilgisi olan bölüm. Dağıtım yapılandırmasına göre genişletilebilir |
Not
Bölüm düzeni mantıksal disk boyutunu temsil eder ve sanal makinenin konak işletim sistemi diskinde kaplayacak fiziksel alanı göstermez.
Güvenlik Duvarı
Varsayılan olarak, EFLOW sanal makinesi güvenlik duvarı yapılandırmaları için iptables yardımcı programını kullanır. Iptable'lar , Linux çekirdeğindeki IP paket filtresi kurallarının tablolarını ayarlamak, korumak ve incelemek için kullanılır. Varsayılan uygulama yalnızca 22 numaralı bağlantı noktasında (SSH hizmeti) gelen trafiğe izin verir ve aksi takdirde trafiği engeller. Iptables yapılandırmasını aşağıdaki adımlarla de kontrol edebilirsiniz:
Yükseltilmiş bir PowerShell oturumu açma
EFLOW sanal makinesine bağlanma
Connect-EflowVm
Tüm iptable kurallarını listeleme
sudo iptables -L
Doğrulanmış önyükleme
EFLOW sanal makinesi, blok cihazlarının saydam bütünlük denetimini sağlayan dahil edilen cihaz eşleyici-verity (dm-verity) çekirdek özelliği aracılığıyla Doğrulanmış önyüklemeyi destekler. dm-verity , kök ayrıcalıklarını saklayabilen ve cihazların güvenliğini tehlikeye atabilen kalıcı rootkit'lerin önlenmesine yardımcı olur. Bu özellik, sanal makine temel yazılım görüntüsünün aynı olduğundan ve değiştirilmediğinden emin olur. Sanal makine, dm-verity özelliğini kullanarak dosya sisteminin temel depolama katmanı olan belirli blok cihazını denetler ve beklenen yapılandırmasıyla eşleşip eşleşmediğini belirler.
Varsayılan olarak, bu özellik sanal makinede devre dışıdır ve açılabilir veya kapatılabilir. Daha fazla bilgi için bkz . dm-verity.
Güvenilen platform modülü (TPM)
Güvenilir platform modülü (TPM) teknolojisi, donanım tabanlı, güvenlikle ilgili işlevler sağlamak için tasarlanmıştır. TPM yongası, şifreleme işlemlerini gerçekleştirmek için tasarlanmış güvenli bir şifreleme işlemcisidir. Yonga üzerinde oynanmaya karşı dayanıklı hale getirmek için birden çok fiziksel güvenlik mekanizması içerir ve kötü amaçlı yazılımlar TPM'nin güvenlik işlevleriyle oynanamaz.
EFLOW sanal makinesi vTPM'yi desteklemez. Ancak kullanıcı, EFLOW sanal makinesinin Windows ana bilgisayar işletim sistemi TPM'sini kullanmasına izin veren TPM geçiş özelliğini etkinleştirebilir/devre dışı bırakabilir. Bu, iki ana senaryo sağlar:
- Cihaz Sağlama Hizmeti'ni (DPS) kullanarak IoT Edge cihaz sağlama için TPM teknolojisini kullanın. Daha fazla bilgi için bkz . TPM kullanarak büyük ölçekte Windows cihazında Linux için IoT Edge oluşturma ve sağlama.
- TPM içinde depolanan şifreleme anahtarlarına salt okunur erişim. Daha fazla bilgi için bkz . SET-EflowVmFeature to enable TPM passthrough.
Güvenli konak ve sanal makine iletişimi
EFLOW, zengin bir PowerShell modülü uygulamasını ortaya çıkartarak sanal makineyle etkileşim kurmanın birden çok yolunu sağlar. Daha fazla bilgi için bkz . Windows üzerinde Linux için IoT Edge için PowerShell işlevleri. Bu modülün çalışması için yükseltilmiş bir oturum gerekir ve bir Microsoft Corporation sertifikası kullanılarak imzalanır.
Windows ana bilgisayar işletim sistemi ile PowerShell cmdlet'lerinin gerektirdiği EFLOW sanal makinesi arasındaki tüm iletişimler bir SSH kanalı kullanılarak yapılır. Varsayılan olarak, sanal makine SSH hizmeti kullanıcı adı ve parola aracılığıyla kimlik doğrulamasına izin vermez ve sertifika kimlik doğrulamasıyla sınırlıdır. Sertifika, EFLOW dağıtım işlemi sırasında oluşturulur ve her EFLOW yüklemesi için benzersizdir. Ayrıca, SSH deneme yanılma saldırılarını önlemek için sanal makine, SSH hizmetine dakikada üçten fazla bağlantı girişiminde bulunursa bir IP adresini engeller.
EFLOW Sürekli Sürüm (CR) sürümünde, SSH bağlantısını kurmak için kullanılan aktarım kanalında bir değişiklik yaptık. Başlangıçta, SSH hizmeti tcp bağlantı noktası 22 üzerinde çalışır ve bu bağlantı noktasına bir TCP yuvası kullanılarak aynı ağdaki tüm dış cihazlar tarafından erişilebilir. Güvenlik nedeniyle, EFLOW CR SSH hizmetini normal TCP yuvaları yerine Hyper-V yuvaları üzerinden çalıştırır. Hyper-V yuvaları üzerinden yapılan tüm iletişim, Ağ kullanmadan Windows ana bilgisayar işletim sistemi ile EFLOW sanal makinesi arasında çalışır. Bu, SSH hizmetinin erişimini sınırlar ve bağlantıları yalnızca Windows ana bilgisayar işletim sistemiyle kısıtlar. Daha fazla bilgi için bkz . Hyper-V yuvaları.
Sonraki adımlar
Windows IoT güvenlik şirket içi hakkında daha fazla bilgi edinin
Windows üzerinde Linux için En son IoT Edge güncelleştirmeleriyle güncel kalın.