Amazon nerbitake Bottlerocket 1.0.0, distribusi Linux adhedhasar wadhah sing terisolasi

Perusahaan Amazon diwenehi release pinunjul pisanan saka distribusi Linux darmabakti Botol 1.0.0, dirancang kanggo mbukak wadhah terisolasi kanthi efisien lan aman. Piranti distribusi lan komponen kontrol ditulis ing Rust lan Penyebaran ing lisensi MIT lan Apache 2.0. Proyèk iki lagi dikembangaké ing GitHub lan kasedhiya kanggo partisipasi dening anggota masyarakat. Gambar penyebaran sistem digawe kanggo arsitektur x86_64 lan Aarch64. OS diadaptasi kanggo mbukak ing kluster Amazon ECS lan AWS EKS Kubernetes. Disedhiyakake alat kanggo nggawe rakitan lan edisi dhewe, sing bisa nggunakake alat orkestrasi liyane, kernels lan runtime kanggo kontaner.

Distribusi kasebut nyedhiyakake kernel Linux lan lingkungan sistem minimal, kalebu mung komponen sing dibutuhake kanggo mbukak wadah. Antarane paket sing ana ing proyek kasebut yaiku sistem manajer sistem, perpustakaan Glibc, lan alat perakitan
Buildroot, bootloader GRUB, konfigurator jaringan duraka, runtime kanggo wadhah terisolasi ngemot, platform orkestrasi wadah Kubernetes, aws-iam-authenticator, lan agen Amazon ECS.

Distribusi kasebut dianyari kanthi atom lan dikirim ing wangun gambar sistem sing ora bisa dibagi. Rong partisi disk diparengake kanggo sistem, salah sijine ngemot sistem aktif, lan nganyari disalin menyang sing kapindho. Sawise nganyari wis disebarake, partisi kapindho dadi aktif, lan ing pisanan, nganti nganyari sabanjuré teka, versi sistem sadurungé disimpen, sing bisa muter maneh yen ana masalah. Nganyari diinstal kanthi otomatis tanpa campur tangan administrator.

Bentenane utama saka distribusi sing padha kayata Fedora CoreOS, CentOS / Red Hat Atomic Host minangka fokus utama kanggo nyedhiyakake keamanan maksimum ing konteks ngiyataken pangayoman sistem saka ancaman bisa, dadi luwih angel kanggo nggunakake vulnerabilities ing komponen OS lan nambah isolasi saka kontaner. Wadah digawe nggunakake mekanisme kernel Linux standar - cgroups, namespaces lan seccomp. Kanggo isolasi tambahan, distribusi nggunakake SELinux ing mode "enforcing", lan modul kasebut digunakake kanggo verifikasi kriptografi saka integritas partisi root. dm-kasunyatan. Yen nyoba kanggo ngowahi data ing tingkat piranti pamblokiran dideteksi, sistem reboots.

Partisi ROOT dipasang mung diwaca, lan partisi setelan / etc dipasang ing tmpfs lan dibalekake menyang kahanan asline sawise diwiwiti maneh. Modifikasi langsung file ing direktori /etc, kayata /etc/resolv.conf lan /etc/containerd/config.toml, ora didhukung - kanggo nyimpen setelan permanen, sampeyan kudu nggunakake API utawa mindhah fungsi menyang wadhah kapisah.

Umume komponen sistem ditulis ing Rust, sing nyedhiyakake fitur sing aman kanggo memori kanggo ngindhari kerentanan sing disebabake dening akses memori sawise-free, null pointer dereferences, lan buffer overruns. Nalika mbangun kanthi gawan, mode kompilasi "--enable-default-pie" lan "--enable-default-ssp" digunakake kanggo ngaktifake acak ruang alamat file eksekusi (pie) lan proteksi overflow tumpukan liwat substitusi kenari.
Kanggo paket sing ditulis ing C / C ++, panji tambahan kalebu
"-Wall", "-Werror=format-security", "-Wp,-D_FORTIFY_SOURCE=2", "-Wp,-D_GLIBCXX_ASSERTIONS" lan "-fstack-clash-protection".

Piranti orkestrasi kontainer diwenehake kanthi kapisah wadhah kontrol, sing diaktifake kanthi gawan lan dikontrol liwat API lan AWS SSM Agen. Gambar dhasar ora duwe cangkang perintah, server SSH lan basa sing diinterpretasikake (contone, ora ana Python utawa Perl) - alat administratif lan alat debugging dumunung ing wadhah layanan kapisah, sing dipateni kanthi gawan.

Source: opennet.ru

Add a comment