Score:1

SSH พร้อมพอร์ตส่งต่อระยะไกลที่จัดสรรแบบไดนามิก - วิธีค้นหาหมายเลขพอร์ต

ธง cn

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

ฉันกำลังใช้คำสั่งเช่น ssh -R 0:localhost:8001 ชื่อเซิร์ฟเวอร์ -- ใช้ 0 สำหรับหมายเลขพอร์ต ดังนั้นเซิร์ฟเวอร์ระยะไกลสามารถเลือกพอร์ตให้ฉันได้ วิธีนี้ใช้ได้ดี ลูกค้าบอกหมายเลขพอร์ตที่จัดสรรให้ฉัน จากนั้นฉันสามารถใช้มันเพื่อเชื่อมต่อกลับไปยังเครื่องของฉัน (หรือหมายเลขอื่นในเครือข่ายของฉัน) ด้วยตนเอง

ปัญหาคือฉันต้องเขียนสคริปต์บางอย่างเพื่อให้ผู้อื่นใช้บนระบบรีโมต และฉันต้องการวิธีการกำหนดที่ปลายทางระยะไกลว่าหมายเลขพอร์ตสำหรับเซสชันนั้นคืออะไร ฉันได้ดูตัวแปรสภาพแวดล้อม SSH_* ในเซสชันแล้ว และไม่มีประโยชน์เลย ฉันได้ลองค้นหาผลลัพธ์ของ เอสเอส -le | grep "uid:$UID" และนั่นทำให้พบพอร์ตอื่น ๆ แต่ดูเหมือนว่าค่อนข้างซับซ้อนและไม่แน่นอนที่จะใช้งานได้เสมอ โดยเฉพาะอย่างยิ่งหากผู้ใช้บังเอิญมีกระบวนการอื่นทำงานอยู่ บางทีอาจอยู่ในเซสชันการเข้าสู่ระบบที่แตกต่างกัน

มีวิธีที่ชัดเจนและไม่ยุ่งเหยิงในการค้นหาหมายเลขพอร์ตส่งต่อระยะไกลที่จัดสรรแบบไดนามิกหรือไม่

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

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

โพสต์คำตอบ

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