Score:0

ทำไม sudo ต้องการรหัสผ่านผู้ใช้และไม่ใช่รหัสผ่านรูท

ธง at

ฉันพยายามที่จะเข้าใจว่าทำไม "su" จึงล้มเหลวและ "sudo" ประสบความสำเร็จ

ดังนั้น เนื่องจากบัญชีรูทถูกปิดใช้งานตามค่าเริ่มต้น คำสั่ง "su" จึงล้มเหลว ยุติธรรมเพียงพอ

แต่ที่ผมรับไม่ได้คือ

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

อย่างไรก็ตาม สิ่งที่เกิดขึ้นจริงคือผู้ใช้ถูกขอให้ป้อน รหัสผ่านของเขาเอง. ใครช่วยอธิบายตรรกะในกระบวนการนี้ได้ไหม

N0rbert avatar
zw flag
สิ่งนี้ตอบคำถามของคุณหรือไม่ [ฉันจะกำหนดรหัสผ่าน sudo ได้อย่างไร](https://askubuntu.com/questions/297046/how-can-i-determine-the-sudo-password)
Yaniv G avatar
at flag
จริงไม่ ฉันไม่ได้พยายามที่จะเข้าใจ "วิธีการ" แต่ "ทำไม" คำสั่ง sudo ขอรหัสผ่านผู้ใช้แทนที่จะเป็นรหัสผ่านรูทโดยพิจารณาว่าสิทธิ์รูทกำลังจะมอบให้กับผู้ใช้
muru avatar
us flag
นั่นคือวิธีกำหนดค่า `sudo` ตามค่าเริ่มต้น - คุณเชื่อถือผู้ใช้ ดังนั้นขอรหัสผ่านของผู้ใช้เพื่อยืนยันว่าเป็นผู้ใช้จริง คุณสามารถใช้ `targetpw` เพื่อขอรหัสผ่านของผู้ใช้เป้าหมายได้หากต้องการ
Martin Thornton avatar
cn flag
สิ่งนี้ตอบคำถามของคุณหรือไม่ [Sudo เป็นรหัสผ่านเข้าสู่ระบบของผู้ใช้ด้วย - ทำไม เปลี่ยนยังไง?](https://askubuntu.com/questions/490746/sudo-is-also-user-login-password-why-how-to-change)
Score:11
ธง cn

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

  • ซูโด อนุญาตให้ผู้ใช้ที่มีสิทธิ์ดำเนินการคำสั่งในฐานะผู้ใช้รายอื่นหากไม่ได้ระบุผู้ใช้ ผู้ใช้รายนั้นจะถูกระบุ ราก. ผู้ใช้จำเป็นต้องให้รหัสผ่านของตน จากนั้นระบบรักษาความปลอดภัยจะตรวจสอบว่าผู้ใช้นั้นมีสิทธิ์ทำหน้าที่เป็นรูทหรือไม่
  • สุ อนุญาตให้กลายเป็นผู้ใช้รายอื่นชั่วคราวเพื่อดำเนินการคำสั่ง หากไม่ได้ระบุผู้ใช้ ผู้ใช้จะเป็น ราก. ดังนั้นจึงจำเป็นต้องป้อนรหัสผ่านของผู้ใช้เป้าหมาย บน Ubuntu ก สุ ที่จะกลายเป็น ราก จะไม่ทำงานเพราะ ราก บัญชีไม่ได้เปิดใช้งานโดยค่าเริ่มต้น - คุณไม่สามารถเข้าสู่ระบบได้ อย่างไรก็ตาม คุณสามารถเปิดรูตเชลล์ด้วย sudo -iถ้าคุณมีสิทธิพิเศษ ด้วยวิธีนี้ คุณจะเรียกใช้เชลล์ด้วยสิทธิ์ระดับรูทโดยไม่ต้องลงชื่อเข้าใช้บัญชีรูท

ผู้ใช้รายแรกที่สร้างขึ้นบนระบบ Ubuntu ที่ติดตั้งใหม่ ผู้ใช้ 1,000 คนจะได้รับอนุญาตให้ใช้งานได้โดยอัตโนมัติ ซูโด เพื่อรับสิทธิ์รูท ผู้ใช้รายอื่นต้องได้รับสิทธิ์ "sudo" อย่างชัดแจ้งจากผู้ใช้ที่มีสิทธิ์ดังกล่าวอยู่แล้ว ผู้ใช้ที่ไม่ได้รับอนุญาตดังกล่าวจะไม่สามารถใช้งานได้ ซูโด เพื่อดำเนินการคำสั่งด้วยสิทธิ์รูท

Yaniv G avatar
at flag
ประเด็นของฉันคือผู้ใช้ทุกคนรู้รหัสผ่านของเขา ดังนั้นผู้ใช้ทุกคนสามารถได้รับอนุญาตรูทเมื่อต้องการ
muru avatar
us flag
@YanivG คุณสรุปได้อย่างไร คุณต้องระบุว่าผู้ใช้หรือกลุ่มใดที่คุณเชื่อถือและอะไรใน `sudoers` - คุณอนุญาตให้ผู้ใช้ทั้งหมดสุ่มสี่สุ่มห้าใช้ `sudo` เพื่ออะไร
Organic Marble avatar
us flag
ขอบคุณสำหรับคำอธิบายที่ชัดเจน บางที OP มองข้ามความจริงที่ว่า * ผู้ดูแลระบบต้องอนุญาตให้ผู้ใช้ใช้ sudo ตั้งแต่แรก * (ให้สิทธิ์)
vanadium avatar
cn flag
ฉันเน้นประเด็นนั้นและรวมรายละเอียดบางอย่างไว้ด้วย

โพสต์คำตอบ

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