Uscita di Bottlerocket 1.2, distribuzione basata su container isolati

ДоступСн выпуск Linux-дистрибутива Bottlerocket 1.2.0, Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΡ€ΠΈ участии ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Amazon для эффСктивного ΠΈ бСзопасного запуска ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ². Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ дистрибутива написаны Π½Π° языкС Rust ΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡŽΡ‚ΡΡ ΠΏΠΎΠ΄ лицСнзиями MIT ΠΈ Apache 2.0. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ запуск Bottlerocket Π² кластСрах Amazon ECS, VMware ΠΈ AWS EKS Kubernetes, Π° Ρ‚Π°ΠΊΠΆΠ΅ созданиС ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… сборок ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΉ, Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… инструмСнтов оркСстровки ΠΈ runtime для ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ².

La distribuzione fornisce un'immagine di sistema atomica, indissolubile e automaticamente aggiornata, che include il kernel Linux e un ambiente di sistema minimale, contenente solo i componenti necessari per l'avvio dei container. Nel suo ambiente sono coinvolti il manager di sistema systemd, la libreria Glibc, l'ambiente di build Buildroot, il bootloader GRUB, il configuratore di rete wicked, il runtime per container isolati containerd, la piattaforma di orchestrazione dei container Kubernetes, l'autenticatore aws-iam-authenticator e l'agente Amazon ECS.

Gli strumenti per l'orchestrazione dei contenitori sono forniti in un contenitore di gestione separato, che Γ¨ abilitato per impostazione predefinita e gestito tramite API e AWS SSM Agent. L'immagine di base non include una shell di comando, un server SSH e linguaggi interpretati (ad esempio, non ci sono Python o Perl) β€” gli strumenti per l'amministratore e gli strumenti di debug sono stati spostati in un contenitore di servizio separato, che Γ¨ disabilitato per impostazione predefinita.

La principale differenza rispetto a distribuzioni simili come Fedora CoreOS e CentOS/Red Hat Atomic Host Γ¨ l'orientamento primario verso la massima sicurezza, in un contesto di potenziamento della protezione del sistema da potenziali minacce, complicando l'exploitation delle vulnerabilitΓ  nei componenti del sistema operativo e aumentando l'isolamento dei contenitori. I contenitori vengono creati utilizzando i meccanismi standard del kernel Linux β€” cgroups, namespace e seccomp. Per un'ulteriore isolamento, il supporto SELinux Γ¨ abilitato in modalitΓ  'enforcing'.

La partizione principale viene montata in modalitΓ  di sola lettura, mentre la partizione delle impostazioni /etc viene montata in tmpfs e ripristina lo stato originale dopo il riavvio. Le modifiche dirette ai file nella cartella /etc, come /etc/resolv.conf e /etc/containerd/config.toml, non sono supportate: per il salvataggio permanente delle impostazioni Γ¨ necessario utilizzare l'API o trasferire la funzionalitΓ  in contenitori separati. Per la verifica crittografica dell'integritΓ  della partizione principale Γ¨ attivato il modulo dm-verity, e in caso venga rilevato un tentativo di modifica dei dati a livello di dispositivo a blocchi, il sistema si riavvia.

La maggior parte dei componenti di sistema sono scritti in Rust, un linguaggio che fornisce strumenti per una gestione della memoria sicura, evitando così vulnerabilità dovute all'accesso a memoria liberata, dereferenziazione di puntatori nulli e overflow del buffer. Durante la compilazione predefinita, vengono applicati i flag di compilazione «—enable-default-pie» e «—enable-default-ssp» per attivare la randomizzazione dello spazio degli indirizzi dei file eseguibili (PIE) e per fornire protezione contro l'overflow dello stack tramite la sostituzione di etichette canarie. Per i pacchetti scritti in C/C++, vengono inclusi ulteriori flag «-Wall», «-Werror=format-security», «-Wp,-D_FORTIFY_SOURCE=2», «-Wp,-D_GLIBCXX_ASSERTIONS» e «-fstack-clash-protection».

Nel nuovo rilascio:

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π·Π΅Ρ€ΠΊΠ°Π» рССстра ΠΎΠ±Ρ€Π°Π·ΠΎΠ² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ².
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования самоподписанных сСртификатов.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ для настройки ΠΈΠΌΠ΅Π½ΠΈ хоста.
  • ОбновлСна вСрсия ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ административного ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ настройки topologyManagerPolicy ΠΈ topologyManagerScope для kubelet.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° сТатия ядра ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° zstd.
  • ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π² VMware di macchine virtuali Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ OVA (Open Virtualization Format).
  • ΠžΠ±Π½ΠΎΠ²Π»Ρ‘Π½ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° дистрибутива aws-k8s-1.21 c ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Kubernetes 1.21. ΠŸΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° aws-k8s-1.16.
  • Aggiornate le versioni dei pacchetti e le dipendenze per il linguaggio Rust.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server πŸ”₯ Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster