แนวทางปฏิบัติที่ดีที่สุดสำหรับการอัพเดตเซิร์ฟเวอร์ที่ไม่มีการดูแลก่อนหน้านี้ RHEL5.7


21

เซิร์ฟเวอร์ RedHat EL5.6 ใหม่ได้รับการปรับปรุงเมื่อไม่นานมานี้ จะเห็นได้ชัดทันทีว่าในช่วง 12 เดือนที่ผ่านมามีการให้ความสนใจเพียงเล็กน้อยกับการอัพเดทแพ็คเกจ

โดยทั่วไปฉันเป็นคนหนึ่งที่คิดว่าถ้ามันไม่พัง - ไม่ต้องแก้ไข อย่างไรก็ตามหลังจากลงทะเบียนเซิร์ฟเวอร์กับ RHN และใช้ปลั๊กอินความปลอดภัย yum เพื่อตรวจสอบการปรับปรุงความปลอดภัยมีการปรับปรุง "ความปลอดภัย" เพียง 1100 มากกว่าที่มีอยู่

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

คำตอบ:


21

โดยทั่วไปการพูดการอัปเดตความปลอดภัยจะถือว่าค่อนข้างปลอดภัยโดยเฉพาะอย่างยิ่งสำหรับการแจกจ่ายที่มีเป้าหมายเช่น RedHat จุดเน้นหลักของพวกเขาคือการสร้างสภาพแวดล้อมการทำงานที่สอดคล้องกัน ผู้ดูแลดังกล่าวมีแนวโน้มที่จะเลือกแพคเกจเวอร์ชันและติดกับพวกเขาเป็นระยะเวลานาน เพื่อดูสิ่งที่ผมหมายถึงดูที่รุ่นของแพคเกจดังกล่าวเช่นkernel, python, และperl httpdสิ่งที่พวกเขายังทำคือแพทช์รักษาความปลอดภัย backport จากนักพัฒนาต้นน้ำ ดังนั้นหากพบช่องโหว่ด้านความปลอดภัยสำหรับ Apache httpd 2.2.x ทุกรุ่นรากฐาน Apache อาจปล่อยรุ่น 2.2.40 พร้อมกับการแก้ไข แต่ RedHat จะม้วนโปรแกรมแก้ไขภายในเครื่องแล้วปล่อยhttpd-2.2.3-80ด้วยโปรแกรมแก้ไข

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

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

คำแนะนำของฉันคือทำการอัปเดต แต่ต้องฉลาดเกี่ยวกับมัน

  • วางแผนออกมาในช่วงหน้าต่างการบำรุงรักษา หากไม่มีสิ่งอื่นใดที่เซิร์ฟเวอร์จะต้องเริ่มต้นใหม่มีการอัปเดตเคอร์เนลเป็นจำนวนมากและคุณจะต้องรีบู๊ตเพื่อใช้งาน
  • ตรวจสอบให้แน่ใจว่าได้ทำการสำรองข้อมูลเต็มรูปแบบก่อนที่จะทำอะไร นี่อาจเป็นการจับภาพหากเป็น VM เรียกการสำรองข้อมูลเต็มรูปแบบในทุกสิ่งที่เครื่องมือของคุณใช้งาน/(สำหรับระบบอื่น) ถ่ายddภาพไดรฟ์ไม่ว่าจะเป็นอะไรก็ตาม ตราบใดที่มันเป็นสิ่งที่คุณสามารถกู้คืนได้
  • วางแผนว่าคุณจะใช้การอัปเดตได้อย่างไร คุณไม่ต้องการที่จะโยนyum update -yมันและเดินไป สำหรับสิ่งที่ดีทั้งหมดที่ yum ทำนั้นไม่ได้เรียงลำดับเมื่อมีการใช้การอัปเดตตามการอ้างอิง สิ่งนี้ทำให้เกิดปัญหาในอดีต yum clean all && yum update -y yum && yum update -y glibc && yum updateผมทำงานอยู่เสมอ ซึ่งมีแนวโน้มที่จะดูแลปัญหาการสั่งซื้อส่วนใหญ่ที่อาจเกิดขึ้น

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

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


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

@ tdk2fe: ​​มันเป็นเสมอ :) ตามจริงแล้วขึ้นอยู่กับว่าสิ่งนี้ทำงานอย่างไรมันควรจะเหม็นค่อนข้างมั่นคง ฉันจะกังวลน้อยลงเกี่ยวกับแอปพลิเคชันที่ไม่ทำงานอีกต่อไปมากกว่าที่ฉันจะให้บริการเริ่มต้นจริง ๆ
Scott Pack

อย่ากังวลเกี่ยวกับ RHEL 5.7 กับ 5.9, RHEL 5.9 เป็นเพียง RHEL 5.0 พร้อมการอัปเดตทั้งหมดตั้งแต่จัดส่งพร้อมติดตั้ง ไม่จำเป็นต้อง "อัปเกรด" ภายในซีรี่ส์ ฉันแนะนำให้ติดตั้งการปรับปรุงความปลอดภัยเป็นอย่างน้อยและพิจารณาติดตั้งส่วนที่เหลืออย่างจริงจัง คุณไม่สามารถตั้งค่าเครื่องเสมือนหรือกล่องทดสอบเพื่อทำซ้ำเครื่องหลักและตรวจสอบว่าไม่มีอะไรเกิดการระเบิดขึ้นอย่างรุนแรงหรือไม่
vonbrand

1
@ vonbrand: ถูกต้องแน่นอน จุดที่ปล่อยออกมานั้นมีประสิทธิภาพเพียงแค่ติดแท็กการตัดข้อมูลซื้อคืนตามวันที่กำหนด ไม่ได้หมายความว่าจะไม่มีปัญหา gilbc kerfuffle จาก 5.3 เป็น 5.4 เป็นตัวอย่างที่ยอดเยี่ยม
Scott Pack

@ tdk2fe ไม่พูดถึงถ้าระบบถูกเพียง unmaintained สำหรับปีที่คุณกำลังทำสวยดี พวกเราส่วนใหญ่เคยเห็นระบบต่าง ๆ ไปโดยไม่สนใจมานานหลายปี ...
Michael Hampton

3

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

อย่างไรก็ตามจะไม่ขยายไปถึงสิ่งใดก็ตามที่ได้รับการติดตั้งจากภายนอกเป็น rpm

คุณสามารถใช้rpm -qfเพื่อค้นหาไฟล์ที่คุณสงสัยว่ารวบรวมจากภายนอกหากไฟล์นั้นส่งคืน "ไม่ได้เป็นของแพ็คเกจใด ๆ " ดังนั้นคุณอาจพบปัญหาในการอัพเกรด

ฉันจะถ่ายรูปเซิร์ฟเวอร์และทำการอัพเกรดฉันเป็นปีศาจที่อาจสนใจมากกว่าเล็กน้อย


จุดดี. ตรวจสอบว่า/etc/yum.repos.dมีที่เก็บข้อมูลแปลก ๆ ที่ได้รับการกำหนดค่า ( EPELควรปลอดภัย) ติดตั้งyum-utilsและตรวจสอบผลลัพธ์ของpackage-cleanup --orphans(แพ็คเกจที่ติดตั้งซึ่งไม่ได้อยู่ในที่เก็บข้อมูลที่กำหนดค่าไว้)
vonbrand
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.