ฉันจะอัพเดต apache2 เป็นเวอร์ชันล่าสุดบน Debian jessie ได้อย่างไร


16

ในเครื่อง Debian ของฉัน apache2 เวอร์ชันปัจจุบันคือ 2.4.10:

root@9dd0fd95a309:/# apachectl -V
Server version: Apache/2.4.10 (Debian)

ฉันต้องการอัพเกรด apache เป็นเวอร์ชั่นล่าสุด (อย่างน้อย 2.4.26): ฉันได้ลอง:

root@9dd0fd95a309:/# apt-get install apache2
Reading package lists... Done
Building dependency tree
Reading state information... Done
apache2 is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 48 not upgraded.

แต่ไม่พบการอัปเดตใด ๆ ฉันจะทำอย่างไรเพื่ออัพเกรดเป็นเวอร์ชั่นล่าสุด

ป้อนคำอธิบายรูปภาพที่นี่


คุณใช้ Debian เวอร์ชันใด
ม.ค.

1
ทำไมคุณต้องการอัพเกรด
Stephen Kitt

1
@wawanopoulos: Jessie ยังคงได้รับการสนับสนุนดังนั้นคุณควรคาดหวังว่าแพตช์ความปลอดภัยหรือ backport จะปรากฏขึ้นแม้ว่าหมายเลขเวอร์ชั่นจะแตกต่างจากอัปสตรีม
เควิน

1
ไม่มีอะไรให้แก้ไข
Stephen Kitt

1
ได้รับการแก้ไขในแพ็คเกจ Debian รายงาน Tenable ขึ้นอยู่กับหมายเลขรุ่นล้วนๆ แต่น่าเสียดายที่ไม่สามารถใช้งานได้กับแพ็คเกจการกระจายสินค้าจำนวนมาก
Stephen Kitt

คำตอบ:


32

อย่าอัปเกรด Apache ด้วยตนเอง

การอัพเกรดด้วยตนเองเพื่อความปลอดภัยนั้นไม่จำเป็นและอาจเป็นอันตราย

Debian เผยแพร่ซอฟต์แวร์อย่างไร

เพื่อดูว่าทำไมถึงเป็นเช่นนี้คุณต้องเข้าใจว่า Debian จัดการกับบรรจุภัณฑ์รุ่นและปัญหาด้านความปลอดภัยอย่างไร เนื่องจาก Debian ให้ความสำคัญกับความเสถียรมากกว่าการเปลี่ยนแปลงนโยบายคือการหยุดเวอร์ชันซอฟต์แวร์ในแพ็คเกจของรุ่นที่เสถียร ซึ่งหมายความว่าสำหรับการเปลี่ยนแปลงที่เสถียรน้อยมากและเมื่อสิ่งต่าง ๆ ทำงานพวกเขาควรทำงานต่อไปเป็นเวลานาน

แต่จะเกิดอะไรขึ้นถ้าหากพบข้อผิดพลาดที่ร้ายแรงหรือปัญหาด้านความปลอดภัยหลังจากมีการเผยแพร่เวอร์ชั่นเสถียรของเดเบียน เหล่านี้ได้รับการแก้ไขในรุ่นซอฟแวร์ที่ให้มากับเดมีเสถียรภาพ ดังนั้นหาก Debian ที่เสถียรมาพร้อมกับ Apache 2.4.10พบปัญหาความปลอดภัยและแก้ไขใน2.4.26Debian จะนำการแก้ไขความปลอดภัยนี้ไปใช้และนำไปใช้กับ2.4.10และแจกจ่ายการแก้ไข2.4.10ให้กับผู้ใช้ สิ่งนี้ช่วยลดการหยุดชะงักของการอัปเกรดเวอร์ชันแต่ทำให้การดมกลิ่นเช่น Tenable ไม่มีความหมาย

ข้อผิดพลาดที่ร้ายแรงจะถูกรวบรวมและแก้ไขในรุ่นที่วางจำหน่าย ( .9ใน Debian 8.9) ทุก ๆ สองสามเดือน การแก้ไขความปลอดภัยจะได้รับการแก้ไขทันทีและมีให้ผ่านทางช่องทางการอัพเดท

โดยทั่วไปตราบใดที่คุณใช้งานเวอร์ชันเดเบียนที่สนับสนุนติดแพคเกจเดเบียนและอัพเดตการรักษาความปลอดภัยของคุณให้ทันสมัยอยู่เสมอคุณควรจะดี

รายงาน Tenable ของคุณ

ในการตรวจสอบว่า Debian เสถียรเสี่ยงต่อปัญหาของคุณหรือไม่ "2.4.x <2.4.27 หลายประเด็น" ของ Tenable ไม่มีประโยชน์ เราจำเป็นต้องทราบว่าพวกเขากำลังพูดถึงประเด็นความปลอดภัยใด โชคดีที่ช่องโหว่ที่สำคัญทุกตัวได้รับการกำหนดเป็นตัวระบุช่องโหว่ทั่วไปและการเปิดเผย (CVE) ดังนั้นเราจึงสามารถพูดคุยเกี่ยวกับช่องโหว่ที่เฉพาะเจาะจงได้ง่าย

ตัวอย่างเช่นในหน้านี้เพื่อแก้ไขปัญหา 101788เราจะเห็นว่าปัญหานั้นเกี่ยวกับช่องโหว่ CVE-2017-9788 และ CVE-2017-9789 เราสามารถค้นหาช่องโหว่เหล่านี้ในการติดตามการรักษาความปลอดภัย Debian ถ้าเราทำอย่างนั้นเราจะเห็นว่าCVE-2017-9788 มีสถานะเป็น "คงที่"2.4.10-10+deb8u11ในหรือก่อนรุ่น ในทำนองเดียวกันCVE-2017-9789 ได้รับการแก้ไข

ปัญหาที่น่าเชื่อถือ 10095เป็นเรื่องเกี่ยวกับCVE-2017-3167 , CVE-2017-3169 , CVE-2017-7659 , CVE-2017-7668และCVE-2017-7679ทั้งหมดได้รับการแก้ไข

ดังนั้นหากคุณใช้เวอร์ชัน2.4.10-10+deb8u11คุณควรปลอดภัยจากช่องโหว่เหล่านี้! คุณสามารถตรวจสอบสิ่งนี้ได้ด้วยdpkg -l apache2(ตรวจสอบให้แน่ใจว่าเทอร์มินัลของคุณกว้างพอที่จะแสดงหมายเลขเวอร์ชันเต็ม)

อยู่ถึงวันที่

ดังนั้นคุณจะมั่นใจได้อย่างไรว่าคุณได้รับข้อมูลอัปเดตความปลอดภัยเหล่านี้อยู่เสมอ

ก่อนอื่นคุณต้องมีที่เก็บความปลอดภัยในของคุณ/etc/apt/sources.listหรือ/etc/apt/sources.list.d/*อย่างนี้:

deb http://security.debian.org/ jessie/updates main

นี่เป็นส่วนปกติของการติดตั้งใด ๆ คุณไม่ควรทำอะไรเป็นพิเศษ

ถัดไปคุณต้องตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งแพ็คเกจที่อัพเดตแล้ว นี่เป็นความรับผิดชอบของคุณ มันไม่ได้ทำโดยอัตโนมัติ วิธีที่เรียบง่าย แต่น่าเบื่อคือการเข้าสู่ระบบและเรียกใช้เป็นประจำ

# apt-get update
# apt-get upgrade

เมื่อพิจารณาจากข้อเท็จจริงที่ว่าคุณรายงานเวอร์ชันเดเบียนของคุณเป็น 8.8 (เราอยู่ที่ 8.9) และ... and 48 not upgraded.จากโพสต์ของคุณคุณอาจต้องการดำเนินการในไม่ช้า

ได้รับการแจ้งการปรับปรุงการรักษาความปลอดภัยผม higly แนะนำการสมัครสมาชิกDebian ประกาศการรักษาความปลอดภัยเมล

อีกทางเลือกหนึ่งคือให้แน่ใจว่าเซิร์ฟเวอร์ของคุณสามารถส่งอีเมลถึงคุณและติดตั้งแพ็คเกจเช่นapticronซึ่งจะส่งอีเมลถึงคุณเมื่อแพ็คเกจต่างๆในระบบของคุณต้องการการอัปเดต โดยพื้นฐานแล้วมันจะรันapt-get updateส่วนนั้นเป็นประจำและทดสอบให้คุณทำapt-get upgradeส่วนนั้น

ในที่สุดคุณสามารถติดตั้งบางอย่างเช่นการอัพเกรดแบบไม่ต้องใส่ข้อมูลซึ่งไม่เพียง แต่ตรวจสอบการอัปเดตเท่านั้น แต่จะติดตั้งการอัปเดตโดยอัตโนมัติโดยไม่ต้องมีการแทรกแซงจากมนุษย์ การอัพเกรดบรรจุภัณฑ์โดยอัตโนมัติโดยไม่ต้องมีการควบคุมดูแลของมนุษย์มีความเสี่ยงดังนั้นคุณต้องตัดสินใจด้วยตัวเองหากนี่เป็นทางออกที่ดีสำหรับคุณ ฉันใช้มันและฉันมีความสุขกับมัน แต่ตัวอัปเดต caveat

ทำไมการอัพเกรดตัวเองจึงเป็นอันตราย

ในประโยคที่สองของฉันฉันกล่าวว่าการอัพเกรดเป็นเวอร์ชั่นล่าสุด Apache คืออาจจะเป็นอันตราย

เหตุผลนี้ง่ายมาก: ถ้าคุณติดตาม Apache เวอร์ชันของ Debian และสร้างนิสัยในการติดตั้งโปรแกรมปรับปรุงความปลอดภัยคุณก็จะอยู่ในตำแหน่งที่ดีปลอดภัย ทีมรักษาความปลอดภัยของเดเบียนระบุและแก้ไขปัญหาด้านความปลอดภัยและคุณสามารถเพลิดเพลินกับงานนั้นได้โดยใช้ความพยายามน้อยที่สุด

อย่างไรก็ตามหากคุณติดตั้ง Apache 2.4.27+ ให้พูดด้วยการดาวน์โหลดจากเว็บไซต์ Apache แล้วทำการรวบรวมด้วยตัวคุณเองแล้วการทำงานเพื่อแก้ไขปัญหาด้านความปลอดภัยนั้นเป็นของคุณอย่างสมบูรณ์ คุณต้องติดตามปัญหาด้านความปลอดภัยและดำเนินการดาวน์โหลด / รวบรวม / ฯลฯ ทุกครั้งที่พบปัญหา

ปรากฎว่านี่เป็นงานที่มีปริมาณพอสมควรและคนส่วนใหญ่ก็หยุดงาน ดังนั้นพวกเขาจึงจบการทำงาน Apache เวอร์ชันที่คอมไพล์ด้วยตนเองซึ่งจะมีความเสี่ยงมากขึ้นเมื่อพบปัญหา ดังนั้นพวกเขาจึงลงเอยที่เลวร้ายยิ่งกว่าถ้าพวกเขาเพียงแค่ติดตามความปลอดภัยของเดเบียน ดังนั้นใช่อาจเป็นอันตราย

ไม่ได้หมายความว่าจะไม่มีสถานที่สำหรับรวบรวมซอฟต์แวร์ด้วยตัวคุณเอง (หรือเลือกรับแพคเกจจากการทดสอบ Debian หรือไม่เสถียร) แต่โดยทั่วไปฉันแนะนำให้ใช้กับมัน

ระยะเวลาของการอัพเดทความปลอดภัย

เดเบียนไม่ยอมปล่อยมันตลอดไป ตามกฎทั่วไป Debian รีลีสได้รับการสนับสนุนด้านความปลอดภัยอย่างเต็มรูปแบบเป็นเวลาหนึ่งปีหลังจากที่รีลีสใหม่นั้นรีลีสแล้ว

รุ่นที่คุณใช้อยู่ Debian 8 / jessieเป็นรุ่นที่เสถียรแล้วซึ่งล้าสมัย ( oldstableในเงื่อนไข Debian) จะได้รับการสนับสนุนด้านความปลอดภัยอย่างเต็มรูปแบบจนถึงเดือนพฤษภาคม 2561และการสนับสนุนระยะยาวจนถึงเมษายน 2563 ฉันไม่แน่ใจว่าขอบเขตของการสนับสนุน LTS นี้เป็นอย่างไร

ปัจจุบันรุ่นเสถียร Debian เป็น Debian 9 stretch/ พิจารณาอัปเกรดเป็น Debian 9ซึ่งมาพร้อมกับซอฟต์แวร์เวอร์ชั่นใหม่ทั้งหมดและรองรับการรักษาความปลอดภัยอย่างเต็มที่เป็นเวลาหลายปี (น่าจะถึงกลางปี ​​2020) ฉันขอแนะนำให้อัปเกรด ณ เวลาที่สะดวกสำหรับคุณ แต่ก่อนถึงเดือนพฤษภาคม 2018

พูดปิด

ก่อนหน้านี้ฉันเขียนไว้ว่า Debian backports ได้แก้ไขความปลอดภัยแล้ว การลงเอยนี้ไม่สามารถใช้กับซอฟต์แวร์บางตัวได้เนื่องจากการพัฒนาที่รวดเร็วและปัญหาด้านความปลอดภัยที่มีอัตราสูง แพ็กเกจเหล่านี้เป็นข้อยกเว้นและอัพเดตเป็นเวอร์ชันอัพสตรีมล่าสุด แพคเกจฉันรู้ว่านี้เป็นchromium(เบราว์เซอร์) และfirefoxnodejs

ในที่สุดวิธีการจัดการกับการอัปเดตความปลอดภัยทั้งหมดนี้ก็ไม่ได้เป็นเอกลักษณ์เฉพาะของเดเบียน ดิสทริบิวชันจำนวนมากทำงานเช่นนี้โดยเฉพาะที่ให้ความเสถียรกับซอฟต์แวร์ใหม่


ฉันได้ยินจุดที่คุณทำที่นี่ แต่พวกเขาจะมีความสำคัญมากขึ้นถ้าเปรียบเทียบการยืด (คงที่) กับซิด (ไม่แน่นอน) การยืดได้รับความสนใจส่วนใหญ่อยู่แล้วและกฎเดียวกันกับการปรับปรุงความปลอดภัย เหตุผลหลักสำหรับ oldstable คือการสนับสนุนแบบดั้งเดิมสำหรับผู้ดูแลระบบที่ขี้เกียจทั้งหมดหรือเฉพาะผู้ที่มีการพึ่งพาซอฟต์แวร์ภายในที่ไม่ได้รับการอัพเดต คุณสามารถแสดงให้เห็นถึงความแตกต่างที่เห็นได้ชัดในการรักษาความปลอดภัยโดยใช้ความเสถียรกับความเสถียรแบบเก่าหรือไม่?
jdwolf

@ jdwolf ตราบใดที่ฉันรู้ตราบใดที่มีการรองรับ oldstable จะได้รับการสนับสนุนด้านความปลอดภัยที่มั่นคง ฉันจัดการเครื่องเดเบียนหลายโหลหลายเครื่องในปัจจุบันผสมผสานเจสซีและยืดออกและฉันอ่าน DSAs ทั้งหมดที่ใช้กับฉัน ฉันไม่เคยสังเกตเห็นรูปแบบเก่า ๆ ที่ไม่ได้รับความสนใจมากพอ หากคุณเคยอ่าน DSAs คุณจะเห็นว่าพวกเขามีแนวโน้มที่จะแสดงรายการเวอร์ชันคงที่สำหรับทั้งเสถียรและเก่า (ปกติพร้อมกับข้อมูลเกี่ยวกับการทดสอบและไม่เสถียร) ในการประกาศเดียวกัน
marcelm

ฉันเข้าใจว่า แต่โพสต์ของคุณให้การอัปเดตการแสดงผลจากแบบเก่าเป็นแบบเสถียรนั้นเป็นสิ่งที่ไม่ดี
jdwolf

@jdwolf นั่นไม่ใช่ความตั้งใจของฉันเลย! ในความเป็นจริงฉันแนะนำให้มีเสถียรภาพมากกว่า oldstable (สมมติว่าสถานการณ์อนุญาต) คุณได้รับความประทับใจนั้นจากส่วนใด ฉันแก้ไขโพสต์ของฉันเล็กน้อย หวังว่ามันชัดเจนขึ้นตอนนี้ฉันไม่ได้สนับสนุนคนเก่าแก่กว่าเสถียร
marcelm

6

ยังคงรองรับ Debian Jessie และการแก้ไขความปลอดภัยที่มีในเวอร์ชันที่ใหม่กว่าได้รับการส่งกลับไปยังแพ็คเกจที่มีใน Jessie (2.4.10-10 + deb8u11 ซึ่งหมายความว่ามีการอัพเดต 11 ครั้งนับตั้งแต่เปิดตัว Jessie) ทุกคนที่รู้จักช่องโหว่แน่นอนใน Apache มีการแก้ไขในแพคเกจเจสซี่ ; ตราบใดที่คุณให้การติดตั้งเป็นปัจจุบันคุณควรจะปลอดภัย ช่องโหว่ในอนาคตจะยังคงได้รับการแก้ไขใน Jessie ตราบใดที่ยังคงได้รับการสนับสนุน

มันไม่น่าเป็นไปได้ที่จะมีรุ่นใหม่กว่าที่จะส่งคืนให้ Jessie ตามที่ระบุไว้ข้างต้นคุณจะปลอดภัยถ้าคุณอยู่ใน Jessie ตราบใดที่ยังรองรับอยู่ หากคุณต้องการคุณสมบัติใหม่กว่าที่ไม่มีใน 2.4.10 คุณจะต้องอัปเกรดเป็น Debian 9


3

คุณกำลังใช้ Debian Jessie ซึ่งเป็นรุ่นที่เสถียรของ Debian Apache รุ่นล่าสุดใน Jessie คือ 2.4.10

ดังนั้นคุณมีสองตัวเลือกรัน apt dist-upgrade และโยกย้ายไปยัง Debian Stretch หรือคุณสามารถรอให้มันพร้อมใช้งานใน backport


และเรารุ่น apache อะไรในเดเบียนยืด?
wawanopoulos

@wawanopoulos2.4.25-3+deb9u3
LinuxSecurityFreak

3

OP ได้ระบุไว้ในความคิดเห็นที่:

  • พวกเขาอยู่ใน Debian Jessie
  • พวกเขาต้องการอัพเกรด Apache เพื่อจัดการกับปัญหาด้านความปลอดภัย

Debian Jessie เป็นรีลีสที่เก่าแก่ปัจจุบัน(ณ วันที่ 2017-11-12) ควรได้รับการปรับปรุงความปลอดภัยปกติจากทีมรักษาความปลอดภัย Debian ตามคำถามที่พบบ่อยเกี่ยวกับความปลอดภัย Debian :

ทีมรักษาความปลอดภัยพยายามที่จะสนับสนุนการกระจายที่มั่นคงประมาณหนึ่งปีหลังจากการเผยแพร่ที่เสถียรถัดไปได้รับการปล่อยตัวยกเว้นเมื่อมีการเผยแพร่ที่มั่นคงอีกครั้งภายในปีนี้ ไม่สามารถสนับสนุนการแจกแจงสามแบบได้ การรองรับสองตัวพร้อมกันนั้นยากพอแล้ว

ปัจจุบัน Debian เสถียรภาพยืดซึ่งถูกปล่อยออกมา2017/06/17 ดังนั้นเราจึงคาดหวังว่าทีมรักษาความปลอดภัยจะสนับสนุนเจสซีจนถึงประมาณกลางปี ​​2018 หลังจากเวลาดังกล่าวจะอยู่ในLTSจนถึงสิ้นเดือนเมษายน 2020

บรรทัดล่าง:ระบบของ OP ยังอยู่ภายใต้การสนับสนุน OP สามารถอัปเกรดapache2แพ็คเกจตามปกติ หากพวกเขาไม่ได้มีการปรับปรุงความปลอดภัยแล้วพวกเขาจะได้รับมันทันทีที่มันได้รับการ backported และปล่อย หมายเลขเวอร์ชันอาจไม่ตรงกันแต่นี่ไม่ได้หมายความว่าระบบไม่ปลอดภัย

ตามอีเมลนี้ในเดือนกันยายน Debian ได้รายงานการแก้ไขCVE-2017-9798ลงใน Jessie หากนี่คือช่องโหว่ที่ OP เกี่ยวข้องกับ (และ repo jessie-security อยู่ในไฟล์ source.list ตามที่ควรจะเป็น) ดังนั้นจึงควรได้รับการแก้ไขในระบบของพวกเขาแล้ว (และพวกเขาสามารถยืนยันได้โดยการเรียกใช้apt show apache2และตรวจสอบว่า รุ่นคือ2.4.10-10+deb8u11) ถ้าไม่เช่นนั้นพวกเขาควรใส่หมายเลข CVE ลงในช่องค้นหาบนตัวติดตามความปลอดภัยของเดเบียนและดูว่าเกิดอะไรขึ้น ควรสร้างหน้าซึ่งอธิบายสถานะของช่องโหว่ใน Debian เวอร์ชันต่างๆ OP จะค้นหาบรรทัด "jessie (ความปลอดภัย)"


1

apache2 (2.4.10-10)เป็นรุ่นล่าสุดที่ติดตั้งจากที่เก็บเดเบียนผ่านคำสั่งเมื่อมีรุ่นใหม่ที่สามารถใช้ได้ก็จะถูกปรับโดยอัตโนมัติผ่านaptapt

น่าเสียดายที่apache2ไม่มีใน jessie bacports

คุณสามารถติดตั้งเวอร์ชันล่าสุดที่มีในapache wesiteโดยการรวบรวม:

รวบรวมและติดตั้ง


นี่เป็นคำแนะนำที่ไม่ดี ถ้า OP รวบรวมอาปาเช่ของตัวเองพวกเขาจะต้องทำอย่างนั้นหลังจากพบปัญหาด้านความปลอดภัยทุกครั้ง มันยังดีกว่าที่จะอยู่กับรุ่นที่รองรับที่กำลังใช้งานอยู่
marcelm

1

คุณสามารถดูเวอร์ชันที่มีอยู่ในที่เก็บของคุณด้วย:

root@server 20:54:59:~# apt-cache policy apache2
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.