Score:0

ตัวเลือก NO_ALL_SQUASH ทำอะไรในการส่งออก NFS

จาก ส่งออก (5) หน้าคนในส่วน "การแมป ID ผู้ใช้" ระบุว่า:

การทำแผนที่ ID ผู้ใช้

...

บ่อยครั้งที่ผู้ใช้รูทบนเครื่องไคลเอ็นต์ไม่ได้รับการปฏิบัติเหมือนเป็นรูทเมื่อเข้าถึงไฟล์บนเซิร์ฟเวอร์ NFS ไม่เป็นที่ต้องการ ด้วยเหตุนี้ โดยปกติแล้ว uid 0 จะถูกแมปกับ id อื่น: ที่เรียกว่า anonymous หรือ ไม่มีใคร uid โหมดการทำงานนี้ (เรียกว่า `root squashing') เป็นค่าเริ่มต้น และสามารถปิดได้ด้วย no_root_squash.

...

นี่คือรายการตัวเลือกการทำแผนที่ทั้งหมด:

root_squash
แมปคำขอจาก uid/gid 0 ไปยัง uid/gid ที่ไม่ระบุตัวตน โปรดทราบว่าสิ่งนี้ใช้ไม่ได้กับ uids หรือ gids อื่นใดที่อาจมีความละเอียดอ่อนเท่ากัน เช่น ผู้ใช้ ถัง หรือกลุ่ม พนักงาน.
no_root_squash
ปิดการบีบรูต ตัวเลือกนี้มีประโยชน์สำหรับไคลเอ็นต์ที่ไม่มีดิสก์เป็นหลัก
all_squash
แมป uids และ gids ทั้งหมดกับผู้ใช้ที่ไม่ระบุตัวตน มีประโยชน์สำหรับไดเร็กทอรี FTP สาธารณะที่ส่งออกโดย NFS, ไดเร็กทอรีสปูลข่าว ฯลฯ ตัวเลือกตรงข้ามคือ no_all_squashซึ่งเป็นการตั้งค่าเริ่มต้น

...

ฉันได้สรุปตัวเลือกการแมป UID ไว้ในตารางต่อไปนี้ (สันนิษฐานว่า 1000 เป็น UID ของผู้ใช้ที่ไม่มีสิทธิพิเศษ และ 65534 เป็น UID นิรนาม):

ตัวเลือก UID ของลูกค้า เซิร์ฟเวอร์ UID
root_squash 0 65534
root_squash 1000 1000
no_root_squash 0 0
no_root_squash 1000 1000
all_squash 0 65534
all_squash 1000 65534
no_all_squash 0 0 (ไม่แน่ใจ)
no_all_squash 1000 65534 (ไม่แน่ใจ)
Score:0

หลังจากตั้งค่าเซิร์ฟเวอร์และไคลเอนต์ NFS คู่หนึ่งในสภาพแวดล้อมเสมือน ฉันพบผลลัพธ์ต่อไปนี้:

ตัวเลือก UID ของลูกค้า เซิร์ฟเวอร์ UID
root_squash 0 65534
root_squash 1000 1000
no_root_squash 0 0
no_root_squash 1000 1000
all_squash 0 65534
all_squash 1000 65534
no_all_squash 0 65534
no_all_squash 1000 1000

กล่าวอีกนัยหนึ่งว่า no_all_squash ตัวเลือกดูเหมือนจะทำงานเหมือนกับ root_squash ตัวเลือก. สิ่งนี้ตอบคำถาม 1 และอธิบายคำถามที่ 2 ในเวลาเดียวกัน

Score:0
ธง cn

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

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

Score:-1
ธง za

วิธีการปกติคือการอนุญาตการแมปรูทระหว่างเครื่อง นอกจากนี้ วิธีการดั้งเดิมของ NFS แบบเก่าใช้ NIS เพื่อซิงค์ ID ผู้ใช้ในโดเมน NIS เพื่อจุดประสงค์นี้: มิฉะนั้น ผู้ใช้เดียวกันที่มี ID ต่างกันจะสับสนระหว่างกัน

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

สำหรับ all/none squashing/no-squashing นั้นง่ายมาก: เมื่อคุณต้องการใช้ ACL ที่ซับซ้อนสำหรับแผนผังระบบไฟล์ของคุณ คุณต้องใช้ NFSv4 ซึ่งจัดการ ACL อย่างถูกต้อง เนื่องจาก NFSv<=3 ไม่ได้ทำ โดยมีหรือไม่มีการสควอช (ส่วนหลังทำให้โมเดลการเข้าถึง NFSv<=3 ยุ่งยาก แต่ไม่สมบูรณ์) ส่วนสุดท้ายเป็นสาเหตุหลักที่ NFSv4 ปรากฏขึ้น

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

โพสต์คำตอบ

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