Konu yayınlandı. LinuxAmazon ile ortaklaşa geliştirilen Bottlerocket 1.7.0 dağıtımı, izole edilmiş konteynerleri verimli ve güvenli bir şekilde çalıştırmak için tasarlanmıştır. Dağıtımın araçları ve kontrol bileşenleri Rust dilinde yazılmıştır ve MIT ve Apache 2.0 lisansları altında lisanslanmıştır. Bottlerocket, Amazon ECS, VMware ve AWS EKS Kubernetes kümelerinde çalışır ve ayrıca çeşitli konteyner düzenleme ve çalışma zamanı araçlarının kullanımını destekleyen özel derlemeleri ve sürümleri de destekler.
Bu dağıtım, çekirdek de dahil olmak üzere, atomik olarak ve otomatik olarak güncellenen, bölünemez bir sistem imajı sağlar. Linux ve yalnızca konteynerleri çalıştırmak için gerekli bileşenleri içeren minimal bir sistem ortamı. Bu ortam, systemd sistem yöneticisini, Glibc kütüphanesini, Buildroot derleme araç zincirini, GRUB önyükleyicisini, wicked ağ yapılandırıcısını, izole konteynerler için containerd çalışma zamanını, Kubernetes konteyner düzenleme platformunu, aws-iam-authenticator kimlik doğrulayıcısını ve Amazon ECS aracısını içerir.
Konteyner düzenleme araçları, varsayılan olarak etkinleştirilmiş ve API ve AWS SSM Aracısı aracılığıyla yönetilen ayrı bir yönetim konteynerinde sunulur. Temel imaj bir komut kabuğu içermez. sunucu SSH ve yorumlayıcı diller (örneğin Python veya Perl hariç) - yönetim ve hata ayıklama araçları, varsayılan olarak devre dışı bırakılmış ayrı bir hizmet kapsayıcısında yer almaktadır.
Fedora CoreOS gibi benzer dağıtımlardan en önemli farkı şudur: CentOSRed Hat Atomic Host, öncelikle potansiyel tehditlere karşı sistem korumasını artırarak, işletim sistemi bileşenlerindeki güvenlik açıklarının istismarını zorlaştırarak ve konteyner izolasyonunu artırarak maksimum güvenlik sağlamaya odaklanmıştır. Konteynerler, yerel çekirdek mekanizmaları kullanılarak oluşturulur. Linux — cgroups, namespaces ve seccomp. Ek izolasyon için dağıtım SE kullanır.Linux "Uygulama" modunda.
Kök bölüm salt okunur olarak bağlanır ve /etc ayarlar bölümü tmpfs'ye bağlanır ve yeniden başlatmanın ardından orijinal durumuna geri yüklenir. /etc/resolv.conf ve /etc/containerd/config.toml gibi /etc dizinindeki dosyaların doğrudan değiştirilmesi desteklenmez; ayarları kalıcı olarak kaydetmek için API'yi kullanmanız veya işlevselliği ayrı kapsayıcılara taşımanız gerekir. Dm-verity modülü, kök bölümünün bütünlüğünü kriptografik olarak doğrulamak için kullanılır ve blok cihaz düzeyinde verileri değiştirmeye yönelik bir girişim tespit edilirse sistem yeniden başlatılır.
Çoğu sistem bileşeni, boş bellek erişimleri, boş işaretçi referansları ve arabellek taşmalarından kaynaklanan güvenlik açıklarını önlemek için bellek açısından güvenli özellikler sağlayan Rust'ta yazılmıştır. Varsayılan olarak oluştururken, "-enable-default-pie" ve "-enable-default-ssp" derleme modları, yürütülebilir dosya adres alanının (PIE) rastgele hale getirilmesini ve kanarya ikamesi yoluyla yığın taşmalarına karşı korumayı etkinleştirmek için kullanılır. C/C++ ile yazılmış paketler için “-Wall”, “-Werror=format-security”, “-Wp,-D_FORTIFY_SOURCE=2”, “-Wp,-D_GLIBCXX_ASSERTIONS” ve “-fstack-clash” bayrakları ek olarak etkin koruma".
Yeni sürümde:
- RPM paketlerini kurarken, JSON formatında programların bir listesini oluşturmak ve mevcut paketler hakkında bilgi almak için bunu /var/lib/bottlerocket/inventory/application.json dosyası olarak ana bilgisayar kapsayıcısına eklemek mümkündür.
- “Yönetici” ve “kontrol” kapsayıcıları güncellendi.
- Go ve Rust dilleri için güncellenmiş paket sürümleri ve bağımlılıklar.
- Üçüncü taraf programlara sahip paketlerin güncellenmiş sürümleri.
- kmod-5.10-nvidia için tmpfilesd yapılandırma sorunları çözüldü.
- Tuftool yüklenirken bağımlılık sürümleri bağlanır.
Kaynak: opennet.ru
