தனிமைப்படுத்தப்பட்ட கொள்கலன்களின் அடிப்படையில் விநியோகிக்கப்படும் பாட்டில்ராக்கெட் 1.3 வெளியீடு

Linux விநியோகம் Bottlerocket 1.3.0 வெளியீடு வெளியிடப்பட்டது, தனிமைப்படுத்தப்பட்ட கொள்கலன்களின் திறமையான மற்றும் பாதுகாப்பான வெளியீட்டிற்காக Amazon பங்கேற்புடன் உருவாக்கப்பட்டது. விநியோகத்தின் கருவிகள் மற்றும் கட்டுப்பாட்டு கூறுகள் ரஸ்டில் எழுதப்பட்டு MIT மற்றும் Apache 2.0 உரிமங்களின் கீழ் விநியோகிக்கப்படுகின்றன. இது Amazon ECS, VMware மற்றும் AWS EKS Kubernetes க்ளஸ்டர்களில் Bottlerocket இயங்குவதை ஆதரிக்கிறது, அத்துடன் கன்டெய்னர்களுக்கான பல்வேறு ஆர்கெஸ்ட்ரேஷன் மற்றும் ரன்டைம் கருவிகளைப் பயன்படுத்த அனுமதிக்கும் தனிப்பயன் உருவாக்கங்கள் மற்றும் பதிப்புகளை உருவாக்குகிறது.

விநியோகமானது அணு மற்றும் தானாக புதுப்பிக்கப்பட்ட பிரிக்க முடியாத கணினி படத்தை வழங்குகிறது, இதில் லினக்ஸ் கர்னல் மற்றும் குறைந்தபட்ச கணினி சூழல், கொள்கலன்களை இயக்க தேவையான கூறுகள் மட்டுமே அடங்கும். சுற்றுச்சூழலில் systemd சிஸ்டம் மேனேஜர், Glibc லைப்ரரி, பில்ட்ரூட் பில்ட் டூல், GRUB பூட் லோடர், தீய நெட்வொர்க் கன்ஃபிகரேட்டர், தனிமைப்படுத்தப்பட்ட கொள்கலன்களுக்கான கொள்கலன் இயக்க நேரம், Kubernetes கொள்கலன் ஆர்கெஸ்ட்ரேஷன் தளம், aws-iam-authenticator மற்றும் Amazon ஆகியவை அடங்கும். ECS முகவர்.

கொள்கலன் ஆர்கெஸ்ட்ரேஷன் கருவிகள் ஒரு தனி மேலாண்மை கொள்கலனில் வருகின்றன, அவை இயல்பாகவே இயக்கப்பட்டு API மற்றும் AWS SSM முகவர் மூலம் நிர்வகிக்கப்படும். அடிப்படை படத்தில் கட்டளை ஷெல், SSH சேவையகம் மற்றும் விளக்கப்பட்ட மொழிகள் இல்லை (எடுத்துக்காட்டாக, பைதான் அல்லது பெர்ல் இல்லை) - நிர்வாக கருவிகள் மற்றும் பிழைத்திருத்த கருவிகள் ஒரு தனி சேவை கொள்கலனில் வைக்கப்படுகின்றன, இது இயல்பாகவே முடக்கப்பட்டுள்ளது.

Fedora CoreOS, CentOS/Red Hat Atomic Host போன்ற ஒத்த விநியோகங்களில் இருந்து முக்கிய வேறுபாடு சாத்தியமான அச்சுறுத்தல்களிலிருந்து கணினி பாதுகாப்பை வலுப்படுத்தும் சூழலில் அதிகபட்ச பாதுகாப்பை வழங்குவதில் முதன்மை கவனம் செலுத்துகிறது, இது OS கூறுகளில் உள்ள பாதிப்புகளை சுரண்டுவது கடினமாகிறது மற்றும் கொள்கலன் தனிமைப்படுத்தலை அதிகரிக்கிறது. . நிலையான லினக்ஸ் கர்னல் வழிமுறைகளைப் பயன்படுத்தி கொள்கலன்கள் உருவாக்கப்படுகின்றன - cgroups, namespaces மற்றும் seccomp. கூடுதல் தனிமைப்படுத்தலுக்கு, விநியோகமானது "செயல்படுத்துதல்" முறையில் SELinux ஐப் பயன்படுத்துகிறது.

ரூட் பகிர்வு படிக்க-மட்டும் ஏற்றப்பட்டுள்ளது, மேலும் /etc அமைப்புகள் பகிர்வு tmpfs இல் ஏற்றப்பட்டு மறுதொடக்கத்திற்குப் பிறகு அதன் அசல் நிலைக்கு மீட்டமைக்கப்படும். /etc/resolv.conf மற்றும் /etc/containerd/config.toml போன்ற /etc கோப்பகத்தில் உள்ள கோப்புகளை நேரடியாக மாற்றுவது ஆதரிக்கப்படவில்லை - அமைப்புகளை நிரந்தரமாகச் சேமிக்க, நீங்கள் API ஐப் பயன்படுத்த வேண்டும் அல்லது தனித்தனி கொள்கலன்களுக்கு செயல்பாட்டை நகர்த்த வேண்டும். ரூட் பகிர்வின் ஒருமைப்பாட்டை குறியாக்கவியல் முறையில் சரிபார்க்க dm-verity தொகுதி பயன்படுத்தப்படுகிறது, மேலும் தொகுதி சாதன மட்டத்தில் தரவை மாற்றும் முயற்சி கண்டறியப்பட்டால், கணினி மறுதொடக்கம் செய்யப்படுகிறது.

பெரும்பாலான கணினி கூறுகள் ரஸ்டில் எழுதப்பட்டுள்ளன, இது இலவச நினைவக அணுகல்கள், பூஜ்ய சுட்டிக்காட்டி குறைபாடுகள் மற்றும் இடையக மீறல்களால் ஏற்படும் பாதிப்புகளைத் தவிர்க்க நினைவக-பாதுகாப்பான அம்சங்களை வழங்குகிறது. முன்னிருப்பாக உருவாக்கும்போது, ​​"-enable-default-pie" மற்றும் "-enable-default-ssp" ஆகிய தொகுத்தல் முறைகள் இயங்கக்கூடிய கோப்பு முகவரி இடத்தின் (PIE) சீரற்றமயமாக்கலை இயக்கவும் மற்றும் கேனரி மாற்றீடு மூலம் ஸ்டாக் வழிதல்களுக்கு எதிராகப் பாதுகாப்பை இயக்கவும் பயன்படுத்தப்படுகின்றன. C/C++ இல் எழுதப்பட்ட தொகுப்புகளுக்கு, “-Wall”, “-Werror=format-security”, “-Wp,-D_FORTIFY_SOURCE=2”, “-Wp,-D_GLIBCXX_ASSERTIONS” மற்றும் “-fstack-clash” ஆகிய கொடிகள் கூடுதலாக இருக்கும். செயல்படுத்தப்பட்ட -பாதுகாப்பு".

புதிய வெளியீட்டில்:

  • டோக்கர் மற்றும் ரன்டைம் கன்டெய்னர்டு கருவிகளில் உள்ள நிலையான பாதிப்புகள் (CVE-2021-41089, CVE-2021-41091, CVE-2021-41092, CVE-2021-41103) தவறான அடிப்படை உரிமைகளை அமைப்பது தொடர்பானது அடைவு மற்றும் வெளிப்புற நிரல்களை இயக்கவும்.
  • IPv6 ஆதரவு kubelet மற்றும் pluto இல் சேர்க்கப்பட்டுள்ளது.
  • அதன் அமைப்புகளை மாற்றிய பின் கொள்கலனை மறுதொடக்கம் செய்ய முடியும்.
  • Amazon EC2 M6i நிகழ்வுகளுக்கான ஆதரவு eni-max-pods தொகுப்பில் சேர்க்கப்பட்டுள்ளது.
  • Open-vm-tools ஆனது Cilium கருவித்தொகுப்பின் அடிப்படையில் சாதன வடிப்பான்களுக்கான ஆதரவைச் சேர்த்துள்ளது.
  • x86_64 இயங்குதளத்திற்கு, ஒரு கலப்பின துவக்க முறை செயல்படுத்தப்படுகிறது (EFI மற்றும் BIOS க்கான ஆதரவுடன்).
  • ரஸ்ட் மொழிக்கான புதுப்பிக்கப்பட்ட தொகுப்பு பதிப்புகள் மற்றும் சார்புகள்.
  • Kubernetes 8ஐ அடிப்படையாகக் கொண்ட aws-k1.17s-1.17 என்ற விநியோக மாறுபாட்டிற்கான ஆதரவு நிறுத்தப்பட்டது. Kubernetes 8 ஆதரவுடன் aws-k1.21s-1.21 பதிப்பைப் பயன்படுத்த பரிந்துரைக்கப்படுகிறது. k8s வகைகள் cgroup runtime.slice மற்றும் system.slice அமைப்புகளைப் பயன்படுத்துகின்றன.

ஆதாரம்: opennet.ru

கருத்தைச் சேர்