ทำไม“ chroot” ไม่เคยใช้กับ Mac OS X


9

ฉันใช้ Macs มา 25 ปีแล้วและ "UNIX" ตั้งแต่ OS X 10.0 .. แต่ฉันไม่เคยคิดเรื่อง chroot มากนักหรือฉันไม่เคยต้องการหรือต้องการ ...

มันเป็นคำถามง่าย ๆ แต่ ... ภายใต้สถานการณ์ใดที่เราจะเลือกใช้ "chroot" บน Mac? มันเป็นฟังก์ชั่นในตัวจากยุค BSD แต่ฉันไม่เคยได้ยินมาก่อนว่ามันถูกใช้งานหรือไม่ ... ฟังก์ชั่นนี้เป็นส่วนหนึ่งของเครื่องมือบรรทัดคำสั่งหรือเครื่องมือระดับระบบอื่นที่ไม่ต้องการ chroot หรือไม่? ถ้าเป็นเช่นนั้นฟังก์ชันที่เทียบเท่าคืออะไร? ถ้าไม่ทำไมมันไม่เคยถูกใช้อ้างอิงหรือจำเป็น?

คำตอบ:


14

มีการใช้งานหลักสองประเภทสำหรับ chroot ( บทความ Wikipediaมีรายละเอียดเพิ่มเติม):

  • แยกแอปพลิเคชันออกให้โดยมีมุมมองที่ จำกัด ของระบบไฟล์ โดยทั่วไปแล้วจะทำเช่นนี้สำหรับเซิร์ฟเวอร์ FTP สาธารณะเพื่อให้แน่ใจว่าพวกเขาจะไม่สามารถให้บริการไฟล์นอกพื้นที่สาธารณะแม้ว่าจะมีข้อผิดพลาดในซอฟต์แวร์เซิร์ฟเวอร์ กรณีใช้งานนี้เริ่มน้อยลงด้วยเหตุผลสองประการ อันดับแรก chroot ไม่ได้แยกกันมากช่องโหว่ในเซิร์ฟเวอร์อาจทำให้ผู้โจมตีเสียหายได้หลายวิธีนอกเหนือจากการเข้าถึงไฟล์ ประการที่สองเครื่องเสมือนจริงที่ให้การแยกที่แข็งแกร่งยิ่งขึ้นมีราคาถูกลงและบ่อยครั้งที่ติดตั้งได้ง่ายขึ้นดังนั้นจึงเป็นตัวเลือกที่เป็นธรรมชาติ
  • ใช้งานซอฟต์แวร์ในระบบปฏิบัติการอื่นด้วยเคอร์เนลเดียวกัน แต่มีไลบรารีที่แตกต่างกัน ตัวอย่างเช่นตามคำแนะนำของ David Cournapeauหากคุณกำลังพัฒนาซอฟต์แวร์ติดตั้งสิ่งพิเศษไว้มากมายและต้องการให้แน่ใจว่าซอฟต์แวร์ของคุณไม่ได้ขึ้นอยู่กับสิ่งพิเศษนั้นคุณอาจทดสอบด้วย chroot ที่มีเพียง การติดตั้งน้อยที่สุด หรือ (แต่ฉันไม่คิดว่ามันเป็นเรื่องธรรมดามากสำหรับระบบ OSX) คุณอาจใช้ระบบปฏิบัติการรุ่นอื่น - ตัวอย่างเช่นฉันมีระบบ Linux 64 บิตซึ่งมีการกระจายแบบ 32 บิตที่สามารถเข้าถึงได้ด้วย chroot สำหรับช่วงเวลาที่หายากเหล่านั้นเมื่อฉัน จำเป็นต้องเรียกใช้แอปพลิเคชัน 32 บิตที่จะไม่ทำงานบนระบบหลักโดยตรง

ทั้งสองกรณีใช้งานค่อนข้างเฉพาะ Chroot ไม่มีประโยชน์กับคนส่วนใหญ่ มันมีเพราะมันมีประโยชน์กับบางคนและมันถูกมากที่จะใช้


6

ฉันใช้ chroot บน mac os x เพื่อทดสอบซอฟต์แวร์บางอย่างหรือทดสอบบรรจุภัณฑ์ของโครงการที่ฉันเกี่ยวข้อง (เช่นทดสอบการติดตั้งใน 10.4 ขณะที่ฉันใช้ 10.6)


2
คุณสามารถยกตัวอย่างวิธีการใช้งานได้หรือไม่?
Alexander Mills

2

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

บางทีโพสต์นี้จะเริ่มต้นคุณในทิศทางที่ถูกต้อง:

http://hints.macworld.com/article.php?story=2004110314282345

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