Yüzlerce cihaz sahaya dağıldığında yazılımı elle güncellemek mümkün değildir. Ama uzaktan güncelleme, doğru yapılmadığında bir güvenlik açığıdır: cihaza kötü bir paket gönderebilen kişi cihazın tamamını ele geçirir. Bu yüzden güncelleme yolunu en az bağlantı yolu kadar korumalı tasarladık.
RAUC nedir?
RAUC, gömülü Linux cihazlar için geliştirilmiş, açık kaynaklı bir güncelleme çerçevesidir. Güncellemeyi imzalı bir paket (bundle) olarak taşır; cihaz, paketin yetkili bir anahtarla imzalandığını doğrulamadan hiçbir şey kurmaz.
Akış
- 1
Paket hazırlanır ve imzalanır
Yeni sürüm, yalnızca sunucuda duran özel anahtarla imzalanır. İmzalama anahtarı yazılım deposunda ya da cihazlarda bulunmaz.
- 2
Yönetici yayınlar
Sürüm, yönetim panelinden yayınlanır. Yayınlanmayan hiçbir paket cihazlara dağıtılmaz.
- 3
Cihaz çeker
Cihaz yeni sürümü kendi kontrol kanalından öğrenir ve paketi aynı şifreli bağlantıdan, kendisi indirir. Ayrı bir port açılmaz; yalnızca giden TCP 443 yeterlidir.
- 4
İmza doğrulanır
Cihaz, paketin imzasını içindeki sertifikayla doğrular. Doğrulanamayan paket kurulmaz.
- 5
Kurulum ve izleme
Paket kurulur, cihaz yeniden başlar ve yeni sürüm numarası panelde görünür. Güncelleme durumu cihaz bazında panelden izlenir.
- Sunucuda imzalama
- Panelden yayınlama
- Cihaz indirir (TLS)
- İmza doğrulama
- Kurulum