አነስተኛ የሊኑክስ ማከፋፈያ ጠርሙስ ኮንቴይነሮችን ለማስኬድ ተለቋል። ስለ እሱ በጣም አስፈላጊው ነገር

አነስተኛ የሊኑክስ ማከፋፈያ ጠርሙስ ኮንቴይነሮችን ለማስኬድ ተለቋል። ስለ እሱ በጣም አስፈላጊው ነገር

አማዞን አስታውቋል ስለ መጨረሻው መለቀቅ ጠርሙስ ሮኬት - መያዣዎችን ለማስኬድ እና እነሱን በብቃት ለማስተዳደር ልዩ ስርጭት።

ጠርሙስ (በነገራችን ላይ ለአነስተኛ የቤት ውስጥ ጥቁር ፓውደር ሮኬቶች የተሰጠው ስም) ለመያዣዎች የመጀመሪያው ስርዓተ ክወና አይደለም፣ ነገር ግን በነባሪ ከAWS አገልግሎቶች ጋር በመቀናጀት ሰፊ ሊሆን ይችላል። ምንም እንኳን ስርዓቱ በአማዞን ደመና ላይ ያተኮረ ቢሆንም ክፍት ምንጭ ኮድ በማንኛውም ቦታ እንዲገነባ ያስችለዋል-በአገር ውስጥ በአገልጋይ ፣ Raspberry Pi ፣ በማንኛውም ተፎካካሪ ደመና እና ሌላው ቀርቶ መያዣ በሌለው አካባቢ።

ይህ ቀይ ኮፍያ የቀበረውን የCoreOS ስርጭት ሙሉ በሙሉ ብቁ የሆነ ምትክ ነው።

በእርግጥ፣ የአማዞን ዌብ ሰርቪስ ክፍል አስቀድሞ Amazon ሊኑክስ አለው፣ እሱም በቅርቡ በሁለተኛው እትም ወጥቷል፡ አጠቃላይ ዓላማ ስርጭት በዶከር ኮንቴይነር ውስጥ ወይም ከሊኑክስ KVM፣ Microsoft Hyper-V እና VMware ጋር ሊሰራ የሚችል ነው። ESXi hypervisors. በAWS ደመና ላይ እንዲሰራ ተመቻችቷል፣ ነገር ግን ቦትልሮኬት ሲለቀቅ ሁሉም ሰው ይበልጥ ደህንነቱ የተጠበቀ፣ ዘመናዊ እና ጥቂት ሀብቶችን ወደ ሚጠቀም አዲስ ስርዓት እንዲያድግ ይበረታታል።

AWS Bottlerocket አስታወቀ በመጋቢት 2020 ዓ.ም. CoreOS ፣ Rancher OS እና Project Atomic እንደ መነሳሻ ምንጮች በመጥቀስ ይህ የመጀመሪያው “ሊኑክስ ለኮንቴይነሮች” እንዳልሆነ ወዲያውኑ አምናለች። ገንቢዎቹ የስርዓተ ክወናው "የማምረቻ አገልግሎቶችን በአማዞን መጠን ለረጅም ጊዜ በመስራት የተማርናቸው ትምህርቶች እና ኮንቴይነሮችን እንዴት እንደሚሠሩ ባለፉት ስድስት ዓመታት ያገኘነው ልምድ ነው" ሲሉ ጽፈዋል ።

እጅግ በጣም ዝቅተኛነት

ሊኑክስ ኮንቴይነሮችን ለማስኬድ የማይፈለጉትን ነገሮች በሙሉ ተዘርፏል። ይህ ንድፍ እንደ ኩባንያው ገለጻ የጥቃቱን ገጽታ ይቀንሳል.

ይህ ማለት በመሠረታዊ ስርዓቱ ላይ ጥቂት ጥቅሎች ተጭነዋል ፣ ይህም ስርዓተ ክወናውን ለመጠገን እና ለማዘመን ቀላል ያደርገዋል ፣ እንዲሁም በጥገኝነት ምክንያት የችግሮች እድልን ይቀንሳል ፣ የሀብት አጠቃቀምን ይቀንሳል። በመሠረቱ, እዚህ ሁሉም ነገር በተለየ መያዣዎች ውስጥ ይሠራል, እና የስር ስርዓቱ በተግባር ባዶ ነው.

አማዞን ሁሉንም ዛጎሎች እና ተርጓሚዎች አስወግዷል, ይህም ጥቅም ላይ መዋል ወይም ተጠቃሚዎች በአጋጣሚ ልዩ መብቶችን ሊያሳድጉ የሚችሉትን አደጋ በማስወገድ ነው. ለአነስተኛነት እና ለደህንነት ሲባል የመሠረት ምስሉ የትእዛዝ ሼልን፣ ኤስኤስኤች አገልጋይን ወይም እንደ Python ያሉ የተተረጎሙ ቋንቋዎችን አያካትትም። የአስተዳዳሪ መሳሪያዎች በተለየ የአገልግሎት መያዣ ውስጥ ይቀመጣሉ, ይህም በነባሪነት ተሰናክሏል.

ስርዓቱ የሚተዳደረው በሁለት መንገዶች ነው፡ በኤፒአይ እና ኦርኬስትራ በኩል።

ነጠላ የሶፍትዌር ቁርጥራጮችን ከሚያዘምን የጥቅል አስተዳዳሪ ይልቅ፣ Bottlerocket የተሟላ የፋይል ስርዓት ምስል አውርዶ እንደገና ይጀምራል። አንድ ጭነት ካልተሳካ፣ በራስ ሰር ወደ ኋላ ይንከባለል፣ እና የስራ ጫና አለመሳካት በእጅ መመለስን ያስነሳል (ትእዛዝ በኤፒአይ)።

ማዕቀፍ TUF (The Update Framework) በምስል ላይ የተመሰረቱ ዝማኔዎችን ወደ ተለዋጭ ወይም "ያልተሰቀሉ" ክፍልፋዮች ያወርዳል። ለስርዓቱ ሁለት የዲስክ ክፍልፋዮች ተመድበዋል, አንደኛው ገባሪ ስርዓቱን ይይዛል, እና ዝመናው ወደ ሁለተኛው ይገለበጣል. በዚህ ሁኔታ ውስጥ, የስር ክፍልፍል ተነባቢ-ብቻ ሁነታ, እና ክፍልፋይ ውስጥ mounted ነው /etc በ RAM ውስጥ ካለው የፋይል ስርዓት ጋር ተጭኗል tmpfs እና እንደገና ከተጀመረ በኋላ የመጀመሪያውን ሁኔታ ይመልሳል። የውቅረት ፋይሎችን በቀጥታ ማሻሻያ /etc አይደገፍም፡ ቅንጅቶችን ለማስቀመጥ ኤፒአይን መጠቀም ወይም ተግባራዊነቱን ወደ ተለያዩ መያዣዎች መውሰድ አለቦት።

አነስተኛ የሊኑክስ ማከፋፈያ ጠርሙስ ኮንቴይነሮችን ለማስኬድ ተለቋል። ስለ እሱ በጣም አስፈላጊው ነገር
የኤፒአይ ማዘመን እቅድ

ደህንነት

ኮንቴይነሮች የተፈጠሩት በሊኑክስ ከርነል መደበኛ ስልቶች - ቡድኖች ፣ የስም ቦታዎች እና ሰኮንዶች ነው ፣ እና እንደ አስገዳጅ የመግቢያ ቁጥጥር ስርዓት ያገለግላሉ ፣ ማለትም ፣ ለተጨማሪ ማግለል SELinux በ "ማስገደድ" ሁነታ.

በነባሪነት ፖሊሲዎች በመያዣዎች እና በከርነል መካከል ሀብቶችን ለመጋራት ነቅተዋል። ተጠቃሚዎች ወይም ፕሮግራሞች እንዳይፈጽሙ ለመከላከል ሁለትዮሾች በባንዲራዎች የተጠበቁ ናቸው። እና አንድ ሰው ወደ የፋይል ስርዓቱ ከደረሰ, Bottlerocket የተደረጉ ለውጦችን ለመፈተሽ እና ለመከታተል መሳሪያ ያቀርባል.

የ"የተረጋገጠ ቡት" ሁነታ በመሳሪያ-ካርታ-እውነተኛ ተግባር በኩል ይተገበራል (dm-እውነት), በሚነሳበት ጊዜ የስር ክፋይን ትክክለኛነት የሚያረጋግጥ. AWS dm-verityን እንደ “እንደ ዋናው የስርዓት ሶፍትዌር መገልበጥ ያሉ ማልዌሮችን በስርዓተ ክወናው ላይ እንዳይሰሩ የታማኝነት ማረጋገጫዎችን የሚያቀርብ የሊኑክስ ከርነል ባህሪ ነው።

በስርዓቱ ውስጥ ማጣሪያም አለ ኢ.ቢ.ፒ.ኤፍ. (የተራዘመ BPF, በ Alexey Starovoitov የተገነባ), ይህም የከርነል ሞጁሎችን ይበልጥ ደህንነታቸው በተጠበቀ BPF ፕሮግራሞች ለመተካት ለዝቅተኛ ደረጃ ስርዓተ ክወናዎች ይፈቅዳል።

የማስፈጸሚያ ሞዴል
ተጠቃሚው ተገልጿል
ማጠናቀር
ደህንነት
ውድቀት ሁነታ
የንብረቶች መዳረሻ

ተጠቃሚ
ሥራው
አዎ
ማንኛውም።
የተጠቃሚ መብቶች
አፈጻጸምን አቋርጥ
የስርዓት ጥሪ, ስህተት

ዋናው ነገር
ሥራው
የለም
የማይንቀሳቀስ
የለም
የከርነል ሽብር
ቀጥ ያለ

ቢፒኤፍ
ክስተት
አዎ
JIT፣ CO-RE
ማረጋገጫ, JIT
የተሳሳተ መልእክት
ውስን ረዳቶች

BPF ከመደበኛ ተጠቃሚ ወይም የከርነል ደረጃ ኮድ እንዴት እንደሚለይ ምንጩ

AWS Bottlerocket "ከአስተዳደራዊ መብቶች ካላቸው የምርት አገልጋዮች ጋር ግንኙነቶችን በመከላከል ደህንነትን የበለጠ የሚያሻሽል ኦፕሬቲንግ ሞዴል ይጠቀማል" እና "በእያንዳንዱ ግለሰብ አስተናጋጅ ላይ ያለው ቁጥጥር የተገደበ ለትልቅ ስርጭት ስርዓቶች ተስማሚ ነው."

የአስተዳዳሪ መያዣ ለስርዓት አስተዳዳሪዎች ቀርቧል። ነገር ግን AWS አንድ አስተዳዳሪ ብዙውን ጊዜ በBottlerocket ውስጥ መሥራት አለበት ብሎ አያስብም: - "በተለየ የጠርሙስ ምሳሌ ውስጥ የመግባት ተግባር ላልተለመዱ ስራዎች የታሰበ ነው፡ የላቀ ማረም እና መላ መፈለግ" ይፃፉ ገንቢዎች.

ዝገት ቋንቋ

በከርነል አናት ላይ ያለው የስርዓተ ክወናው መሳሪያ በአብዛኛው የሚፃፈው በሩስት ነው። ይህ ቋንቋ በባህሪው ነው። ደህንነቱ ያልተጠበቀ ማህደረ ትውስታ የመድረስ እድልን ይቀንሳል, እንዲሁም በክር መካከል የዘር ሁኔታዎችን ያስወግዳል.

ባንዲራዎች በሚገነቡበት ጊዜ በነባሪ ይተገበራሉ --enable-default-pie и --enable-default-ssp ሊተገበሩ የሚችሉ ፋይሎችን የአድራሻ ቦታ በዘፈቀደ ለማድረግ (እ.ኤ.አ.)አቋም-ገለልተኛ ፈጻሚ, PIE) እና የተቆለለ ትርፍ መከላከያ.

ለC/C++ ጥቅሎች፣ ተጨማሪ ባንዲራዎች ተካትተዋል። -Wall, -Werror=format-security, -Wp,-D_FORTIFY_SOURCE=2, -Wp,-D_GLIBCXX_ASSERTIONS и -fstack-clash-protection.

ከ Rust እና C/C++ በተጨማሪ አንዳንድ ጥቅሎች በ Go ውስጥ ተጽፈዋል።

ከ AWS አገልግሎቶች ጋር ውህደት

ከተመሳሳይ ኮንቴይነር ኦፕሬቲንግ ሲስተሞች ያለው ልዩነት Amazon Bottlerocket በ AWS ላይ እንዲሰራ እና ከሌሎች የ AWS አገልግሎቶች ጋር እንዲዋሃድ አድርጓል።

በጣም ታዋቂው ኮንቴይነር ኦርኬስትራ ኩበርኔትስ ነው፣ ስለዚህ AWS ከራሱ የድርጅት ኩበርኔትስ አገልግሎት (EKS) ጋር ውህደትን አስተዋውቋል። የኦርኬስትራ መሳሪያዎች በተለየ የመቆጣጠሪያ መያዣ ውስጥ ይመጣሉ የጠርሙስ-መቆጣጠሪያ-መያዣበነባሪ የነቃ እና በኤፒአይ እና በAWS SSM ወኪል የሚተዳደር።

ቀደም ባሉት ጊዜያት አንዳንድ ተመሳሳይ ጅምሮች ባለመሳካታቸው ቦትልሮኬት ይነሳ እንደሆነ ማየት አስደሳች ይሆናል። ለምሳሌ፣ PhotonOS ከ Vmware የይገባኛል ጥያቄ ያልተነሳ ሆኖ ተገኝቷል፣ እና RedHat CoreOS ን ገዛ ፕሮጀክቱን ዘጋውበመስክ አቅኚ ተደርጎ ይቆጠር የነበረው።

Bottlerocket ከ AWS አገልግሎቶች ጋር መቀላቀል ይህን ስርዓት በራሱ መንገድ ልዩ ያደርገዋል። ይህ ምናልባት አንዳንድ ተጠቃሚዎች Bottlerocketን ከሌሎች እንደ CoreOS ወይም Alpine ካሉ ዳይስትሮዎች የሚመርጡበት ዋናው ምክንያት ነው። ስርዓቱ መጀመሪያ ላይ ከ EKS እና ECS ጋር ለመስራት የተነደፈ ነው, ነገር ግን ይህ አስፈላጊ እንዳልሆነ ደጋግመን እንሰራለን. በመጀመሪያ፣ ቦትልሮኬት ይችላል። በእራስዎ ይሰብስቡ እና ለምሳሌ እንደ የተስተናገደ መፍትሄ ይጠቀሙበት። በሁለተኛ ደረጃ፣ EKS እና ECS ተጠቃሚዎች አሁንም ስርዓተ ክወናቸውን የመምረጥ ችሎታ ይኖራቸዋል።

የBottlerocket ምንጭ ኮድ በ Apache 2.0 ፍቃድ በ GitHub ላይ ታትሟል። ገንቢዎቹ አስቀድመው አሏቸው የሳንካ ሪፖርቶችን እና የባህሪ ጥያቄዎችን ምላሽ ይስጡ.

በቅጂ መብቶች ላይ

ቪዲሲና ቅናሾች ቪዲኤስ ከዕለታዊ ክፍያ ጋር. ከእራስዎ ምስል ጨምሮ ማንኛውንም ስርዓተ ክወና መጫን ይቻላል. እያንዳንዱ አገልጋይ ከ 500 ሜጋ ቢትስ የበይነመረብ ቻናል ጋር የተገናኘ እና ከ DDoS ጥቃቶች የተጠበቀ ነው!

አነስተኛ የሊኑክስ ማከፋፈያ ጠርሙስ ኮንቴይነሮችን ለማስኬድ ተለቋል። ስለ እሱ በጣም አስፈላጊው ነገር

ምንጭ: hab.com

አስተያየት ያክሉ