Обявено е пускането на новата версия на Linux дистрибуцията "Bottlerocket 1.3.0" , в която са направени някои промени и подобрения в системата, като акцентите са добавените ограничения на MCS към политиката на SELinux , както и решението на няколко проблема с политиката на SELinux, поддръжката на IPv6 в kubelet и pluto, както и поддръжката на хибридно зареждане за x86_64.
За тези, които не са запознати с Bottlerocket, това е Linux дистрибуция, разработена в партньорство с Amazon, за да работи ефективно и сигурно с изолирани контейнери. Тази нова версия е предимно актуализация на пакета, въпреки че включва и някои нови функции.
Дистрибуцията се характеризира с предоставяне на автоматично и атомно актуализиран неделим системен образ , който включва ядрото на Linux и минимална системна среда, включваща само компонентите, необходими за стартиране на контейнери.
За Bottlerocket
Средата използва системния мениджър systemd, библиотеката Glibc, Buildroot, мениджъра за зареждане GRUB , мрежовия конфигуратор wicked, средата за изпълнение containerd за изолиране на контейнери, платформата Kubernetes, AWS-iam-authenticator и агента Amazon ECS.
Инструментите за оркестрация на контейнери се доставят в отделен контейнер за управление, който е активиран по подразбиране и се управлява чрез AWS SSM API и агент. Базовото изображение няма командна обвивка, SSH сървър и интерпретирани езици (например, няма Python или Perl): инструментите за администриране и отстраняване на грешки са преместени в отделен контейнер за услуги, който е деактивиран по подразбиране.
Ключовата разлика в сравнение с подобни дистрибуции като Fedora CoreOS, CentOS/Red Hat Atomic Host е основният фокус върху осигуряването на максимална сигурност в контекста на укрепване на системата срещу потенциални заплахи, което затруднява използването на уязвимости в компонентите на операционната система и увеличава изолацията на контейнерите.
Основни нови функции на Bottlerocket 1.3.0
Тази нова версия на дистрибуцията подчертава корекцията на уязвимости в Docker Toolkit и Runtime Container (CVE-2021-41089, CVE-2021-41091, CVE-2021-41092, CVE-2021-41103), свързани с неправилна конфигурация на разрешенията, която позволява на непривилегировани потребители да напускат домашната директория и да стартират външни програми.
Сред внедрените промени можем да открием, че е добавена поддръжка на IPv6 към kubelet и pluto , в допълнение към предоставянето на възможност за рестартиране на контейнера след промяна на конфигурацията му, и добавяне на поддръжка за Amazon EC2 M6i инстанции към eni-max-pods.
Заслужават да се отбележат и новите ограничения на MCS върху политиката на SELinux, както и разрешаването на няколко проблема с политиката на SELinux. Освен това, за платформата x86_64 е реализиран хибриден режим на зареждане (с поддръжка за EFI и BIOS), а Open-vm-tools добавя поддръжка за филтри на устройства, базирани на инструментариума Cilium.
От друга страна, съвместимостта с версията на дистрибуцията aws-k8s-1.17, базирана на Kubernetes 1.17, беше премахната, поради което се препоръчва използването на варианта aws-k8s-1.21 със съвместимост с Kubernetes 1.21, в допълнение към k8s варианти, използващи настройките на cgroup runtime.slice и system.slice.
От останалите промени, които се открояват в тази нова версия:
- Флагът на региона е добавен към командата aws-iam-authentication
- Рестартирайте модифицираните контейнери на хост
- Актуализиран контролен контейнер по подразбиране на v0.5.2
- Eni-max-pods се актуализира с нови типове инстанции
- Добавени са нови филтри за устройства cilium към open-vm-инструменти
- Включете / var / log / kdumpen logdog tarballs
- Актуализирайте пакети на трети страни
- Добавена е дефиниция на вълна за бавно внедряване
- Добавени са „инфразси“ за създаване на TUF инфра на AWS
- Архивирайте стари миграции
- Промени в документацията
И накрая, ако се интересувате да научите повече , можете да намерите подробностите на следния линк.