เครื่องมือใดที่คุณแนะนำให้ติดตามการเปลี่ยนแปลงบนเซิร์ฟเวอร์ Linux / Unix


38

ฉันจัดการเซิร์ฟเวอร์ Linux หลายตัวสำหรับลูกค้าในหลายบทบาทเช่นอีเมลแคชการให้บริการเว็บการกรองไฟร์วอลล์ / การกำหนดเส้นทางเป็นต้น

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

เครื่องมือใดที่คุณแนะนำให้ติดตามการเปลี่ยนแปลงไฟล์การกำหนดค่าการติดตั้งแพ็คเกจและอื่น ๆ

ฉันคิดว่าสิ่งที่ผู้รักษาอาจจะใกล้เคียงกับสิ่งที่ฉันต้องการ แต่ฉันต้องการที่จะรู้ว่ามีบางสิ่งที่ดีกว่า


ปรับปรุง

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



โหวตให้ etckeeper ฉันไม่เคยได้ยินเรื่องนี้มาก่อน
icasimpan

คำตอบ:


14

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

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

ในทางกลับกันหากคนอื่นทำการเปลี่ยนแปลงเป็นประจำ (และพวกเขามักจะไม่ทำผิดพลาด) คุณอาจต้องหันไปติดตามสิ่งที่คนอื่นทำเพื่อการกู้คืนความเสียหายในภายหลัง อย่าลืมว่าสิ่งต่าง ๆ จะถูกเปลี่ยนแปลงไปทั่วสถานที่ดังนั้นเครื่องมือจุดตรวจเต็มรูปแบบอาจจะดีกว่า ฉันอาจจะลองใช้การสำรองข้อมูลแบบเพิ่มดิสก์เต็มรูปแบบในนั้น (เช่น rdiff-backup หรืออะไรบางอย่าง) เพื่อให้แน่ใจว่าคุณกำลังติดตามทุกอย่าง (อาจปล่อย / home และพื้นที่ระดับผู้ใช้อื่น ๆ ออกจากการสำรองข้อมูลหากคุณต้องการ เพื่อติดตามการเปลี่ยนแปลงการบริหาร)


6

คุณอาจต้องการดูTripwireหรือAIDE

ทั้งสองจะติดตามการเปลี่ยนแปลงการกำหนดค่าไฟล์ในเครื่องของคุณ


Tripwire และ AIDE เป็นเครื่องมือที่ดีจริง ๆ แต่พวกมันทั้งคู่มีน้ำหนักมากเมื่อเทียบกับ changetrack หรือ etckeeper หากคุณต้องการการตรวจสอบความสมบูรณ์และคุณสมบัติ IDS ที่ใช้โฮสต์เป็นทางเลือกที่ดี แต่ถ้าคุณเพียงต้องการตรวจสอบการเปลี่ยนแปลงที่เกิดขึ้นโดยผู้ดูแลระบบคนอื่นฉันจะไม่แนะนำพวกเขา
Christopher Cashell

1
ฉันจะเห็นด้วยกับการประเมินของคุณถ้ามันเป็นเพียงเกี่ยวกับ Tripwire .. แต่ผู้ช่วยใช้งานง่ายมากสำหรับการติดตามเพียงแค่การเปลี่ยนแปลงระบบไฟล์
Mark Turner

เป็นเวลานานแล้วที่ฉันได้เล่นกับ AIDE หรือ Tripwire แต่เมื่อฉันกำลังมองหาบางสิ่งบางอย่างเพื่อตรวจสอบการเปลี่ยนแปลงการกำหนดค่า (ในที่สุดฉันก็ไปกับ Changetrack) การเล่นกับ AIDE ของฉันแนะนำว่ามันยากหรือเป็นไปไม่ได้ ของไฟล์ใด ๆ ที่เปลี่ยนแปลงในชั่วโมงที่ผ่านมาส่งทุก ๆ ชั่วโมง (ตัวอย่าง) นั่นรวมถึงการจัดเก็บการเปลี่ยนแปลงในระบบควบคุมการแก้ไขบางอย่างที่ฉันต้องการทั้งหมดและผู้ช่วยก็ดูยุ่งยากสำหรับมัน อย่างไรก็ตามเมื่อหลายปีก่อนสิ่งต่าง ๆ อาจเปลี่ยนแปลงไปอย่างแน่นอน
Christopher Cashell

4

ฉันดูที่ผู้รักษาความปลอดภัย แต่ฉันไม่ได้ใช้ อย่างไรก็ตามฉันได้ใช้Changetrackแล้ว ฉันใช้มันกับเครื่องที่บ้านของฉันมาเป็นเวลาหลายปีและที่งานก่อนหน้าของฉันมันเป็นส่วนหนึ่งของการติดตั้งเซิร์ฟเวอร์มาตรฐานของเรา เราใช้มันที่นั่นในช่วงห้าปีที่ผ่านมาและติดตั้งบนกล่องประมาณ 200 กล่อง

การตั้งค่าเป็นเรื่องเล็กน้อย (ฉันสร้าง RPM สำหรับงานล่าสุด) และการกำหนดค่านั้นง่ายมาก ฉันมักจะตั้งค่าเพื่อตรวจสอบทั้งหมดของ / etc /


1
ดังนั้นทำไมคุณไม่ได้อัปโหลดรอบต่อนาทีไปยังโครงการ changetrack :)
gbjbaanb

1
จริง ๆ แล้วฉันวางแผนที่จะทำเช่นนั้น อย่างไรก็ตามฉันลงเอยด้วยการออกจากงานล่าสุดก่อนที่ฉันจะได้อัพโหลดและไม่สามารถเข้าถึงได้อีกต่อไป อย่างไรก็ตามฉันจะส่งอดีตเพื่อนร่วมงานของฉันดูว่าพวกเขาสามารถทำได้หรือไม่
Christopher Cashell

4

สำหรับการติดตามการเปลี่ยนแปลงแพคเกจ (การติดตั้งอัพเกรด ฯลฯ ) บนระบบ RPM-based ตราบเท่าที่การเปลี่ยนแปลงทั้งหมดจะทำด้วยyumหรือyumex, /var/log/yum.logการเปลี่ยนแปลงแต่ละแพคเกจถูกบันทึกลงใน

คนอื่น ๆ ได้ตอบการเปลี่ยนแปลงการติดตาม/etcแล้ว อย่าลืมว่าคุณยังต้องการติดตามการเปลี่ยนแปลงการกำหนดค่าbindที่บางส่วน/var(อย่างน้อยในการกระจาย Linux จำนวนมาก) และหน้าเว็บนั้นอยู่ภายใต้/var/wwwการกระจาย Linux จำนวนมาก จะมีไดเรกทอรีภายนอก/etcที่มีข้อมูลการกำหนดค่าที่สำคัญ

คุณอาจต้องการติดตาม/usr/local/etcและแผนผังไดเรกทอรีอื่น ๆ ( /optต้นไม้บางต้นภายใต้/varและสิ่งอื่น ๆ ที่เฉพาะเจาะจงสำหรับลูกค้าของคุณ) ขึ้นอยู่กับวิธีการจัดการสิ่งต่าง ๆ


3

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


2

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


2

คุณสามารถใส่ / etc ภายใต้ dvcs เช่น git คุณจะกระทำทุกครั้งที่คุณทำการเปลี่ยนแปลงและจากนั้นคุณสามารถคอมไพล์เมื่อใดก็ตามที่คุณเริ่มงานและแสดงการเปลี่ยนแปลงทั้งหมด


1
ความคิดที่ดีนี่คือสิ่งที่ผู้รักษาทำ รองรับ git, mercurial หรือ bazaar มันเชื่อมต่อกับระบบการจัดการบรรจุภัณฑ์ของคุณเพื่อติดตามการเปลี่ยนแปลงที่เกี่ยวข้องกับการเพิ่ม / อัพเดทแพ็คเกจ
Zoredache

นี่คือโพสต์เกี่ยวกับการตั้งค่าบางอย่างเช่นนี้ใน Arch Linux ARM ควรใช้อย่างเท่าเทียมกันที่นี่ zduck.com/2012/storing-your-raspberry-pi-config-in-git
silent__ แม้ว่า

0

LBackupมีการสนับสนุนการบันทึกการลบไฟล์การแก้ไขและการเพิ่มเติม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.