Score:1

การเข้าถึง SSH ของนักเรียนโดยตรงไปยังคอนเทนเนอร์

ธง cn

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

ฉันครุ่นคิดอยู่ในใจว่านักเรียนสามารถมีคอนเทนเนอร์ของตนเองได้ ซึ่งพวกเขาสามารถมีสิทธิ์ใช้งานรูทได้ ฯลฯ เพื่อที่ฉันจะได้ครอบคลุมหัวข้อต่างๆ ได้กว้างขึ้น ฉันมีประสบการณ์เกี่ยวกับคอนเทนเนอร์ค่อนข้างจำกัด ดังนั้นฉันจึงมีคำถามสองสามข้อที่ฉันหวังว่าจะได้รับความช่วยเหลือ:

  • เป็นไปได้หรือไม่ที่จะให้นักเรียน ssh "โดยตรง" กับคอนเทนเนอร์หรือพวกเขาจะต้องเริ่มคอนเทนเนอร์เมื่อเข้าสู่ระบบ หมายเหตุ ฉันไม่ได้ถามเกี่ยวกับ (เช่น) การผูกคอนเทนเนอร์กับพอร์ตเฉพาะ แต่เป็นไปได้หรือไม่ที่จะให้เชลล์ (/etc/passwd) เป็นเชลล์ของคอนเทนเนอร์ หรือปล่อยลงในคอนเทนเนอร์โดยตรงหลังจากเข้าสู่ระบบผ่านการตั้งค่าทุบตี ?
  • คอนเทนเนอร์ส่วนใหญ่ทำงานชั่วคราว แต่โดยพื้นฐานแล้วฉันต้องการให้นักเรียนสามารถมีคอนเทนเนอร์ถาวรได้ มีปัญหาที่อาจเกิดขึ้นกับการมีคอนเทนเนอร์ถาวรหรือไม่?
  • ฉันรู้สึกว่าให้นักเรียนอยู่ในคอนเทนเนอร์จะปลอดภัยกว่านักเรียนที่มีการเข้าถึงเชลล์ที่ไม่มีสิทธิพิเศษ แต่มีข้อเสียด้านความปลอดภัยในการให้นักเรียนรูทเข้าถึงคอนเทนเนอร์หรือไม่

นักเรียนเคยใช้ระบบ Centos ในการทำงานมาก่อน และเนื้อหาหลักสูตรทั้งหมดของฉันสร้างขึ้นจาก Centos มีอิมเมจคอนเทนเนอร์ที่แนะนำที่ฉันควรใช้ไหม อิมเมจของนักเทียบท่า/พอดแมน centos ปกติจะทำงานได้หรือไม่สำหรับสถานการณ์นี้

ขอบคุณสำหรับความช่วยเหลือและข้อเสนอแนะของคุณ

Score:1
ธง cn

เพื่อตอบคำถามของคุณ:

  1. คุณจะสามารถส่ง SSH ไปยังคอนเทนเนอร์ได้โดยตรง โดยมีเงื่อนไขว่าคอนเทนเนอร์กำลังเรียกใช้บริการ SSHD และพอร์ตถูกแมป แต่ละคอนเทนเนอร์จำเป็นต้องมีพอร์ตของตัวเองเปิดบนโฮสต์เพื่อให้สามารถ SSH ได้ อาจมีตัวเลือกที่ซับซ้อนมากขึ้นโดยใช้ SystemD และการเข้าสู่ระบบแบบกำหนดเอง แต่คุณสามารถใช้ SSH ได้อย่างแน่นอน
  2. คุณสามารถกำหนดค่าคอนเทนเนอร์ด้วยวอลุ่มสำหรับพื้นที่จัดเก็บแบบถาวร และหากไม่ได้รับการแจ้งเตือน โดยปกติจะเป็นเพียง 'หยุด' ไม่ใช่หยุด & ลบออก ใช่แล้ว พวกมันสามารถยืนหยัดได้
  3. จริง ๆ แล้ว มันอาจจะไม่ได้ขึ้นอยู่กับวิธีการรันคอนเทนเนอร์! การให้สิทธิ์การเข้าถึงรูทแก่ใครบางคนในคอนเทนเนอร์นั้นค่อนข้างเหมือนกับการให้สิทธิ์การเข้าถึงรูทบนโฮสต์ - ต้องมีคำตอบอื่น ๆ เกี่ยวกับเรื่องนี้
  4. Centos มีอิมเมจคอนเทนเนอร์อย่างเป็นทางการ มันจะเป็นอย่างนั้น เซ็นโตส:7 หรือ เซ็นโตส:8 มีโอกาสมากที่สุด

อีกทางเลือกหนึ่งคือการดูว่าผู้ให้บริการคลาวด์รายใหญ่บางรายสามารถทำบัญชีการศึกษาเพื่ออนุญาตให้เข้าถึงชุดทรัพยากรที่จำกัดได้หรือไม่ วิธีนี้ทำให้นักเรียนสามารถปรับใช้สภาพแวดล้อมที่กำหนดค่าไว้ล่วงหน้าในระบบคลาวด์และเข้าถึงได้จากทุกที่ (ในขณะเดียวกันก็เรียนรู้ทักษะบางอย่างเกี่ยวกับระบบคลาวด์ด้วย!) ฉันคาดหวังว่าบิ๊ก 3 ทั้งหมด (amazon/google/microsoft) จะมีบางสิ่งที่พร้อมใช้งาน

in flag
ในกรณีที่ใครก็ตามเห็นข้อความแสดงข้อผิดพลาด `ข้อผิดพลาดในการเขียน /proc/self/loginuid' เมื่อเรียกใช้ `sshd` ในคอนเทนเนอร์ที่มี Podman ให้ตรวจสอบเคล็ดลับการแก้ปัญหานี้: https://github.com/containers/podman/blob/main/troubleshooting .md#32-the-sshd-process-fails-to-run-inside-of-the-container

โพสต์คำตอบ

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