ตัวเลือก ssh“ -P” มันใช้ทำอะไร?


19

ในสคริปต์เก่า (2001?) สำหรับ Linux OS ฉันพบการใช้งาน-Pตัวเลือกสำหรับsshคำสั่ง:

$ ssh -P host.domain -l user

แต่ในsshหน้าคู่มือไม่มีการพูดถึง-Pตัวเลือก อย่างไรก็ตามการดำเนินการssh -P host.domainจะไม่แสดงคำเตือนหรือข้อผิดพลาดใด ๆ

มันคืออะไร? อาจเป็นตัวเลือกเก่า / ไม่มีเอกสาร?

คำตอบ:


26

หน้าคนเก่า:

-P

ใช้พอร์ตที่ไม่มีสิทธิพิเศษ ด้วยวิธีนี้คุณจะไม่สามารถใช้การพิสูจน์ตัวตนของ rhosts หรือ rsarhosts ได้ แต่สามารถใช้เพื่อข้ามไฟร์วอลล์บางตัวที่ไม่อนุญาตให้พอร์ตต้นทางที่มีสิทธิใช้งานส่งผ่านได้

[ ... ]

UsePrivilegedPort

ระบุว่าจะใช้พอร์ตพิเศษเมื่อเชื่อมต่อกับส่วนอื่น ๆ หรือไม่ ค่าเริ่มต้นคือใช่ถ้า rhosts หรือ rsarhosts ถูกเปิดใช้งาน

ส่งตรงจากซอร์สโค้ด:

            case 'P':       /* deprecated */
                    options.use_privileged_port = 0;
                    break;

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

การ/* deprecated */เปลี่ยนแปลงวันที่กลับไป 2002-09-04


แม้กระทั่งรหัสเล็กน้อยที่ฉันยกมาด้านบน (จาก openssh-portable 7.7) เพิ่งถูกลบออกไปในการคอมมิชชันล่าสุด :

upstream: เลิกใช้ UsePrivilegedPort

ตอนนี้การสนับสนุนสำหรับการรัน ssh (1) setuid ได้ถูกลบไปแล้วลบรหัสสนับสนุนและทำความสะอาดข้อมูลอ้างอิงในหน้า man

เรายังไม่ได้จัดส่ง ssh (1) บิต setuid ตั้งแต่ปี 2002 หาก ayone จำเป็นต้องทำการเชื่อมต่อจากหมายเลขพอร์ตต่ำสามารถทำได้ผ่าน setuid ProxyCommand ขนาดเล็ก

ok markus @ jmc @ djm @

OpenBSD-Commit-ID: d03364610b7123ae4c6792f5274bd147b6de717e

มันยังคงละเว้นตัวเลือก แต่ไม่มีการตั้งค่าตัวแปรภายในให้ไปกับมันอีกต่อไป

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