เป้าหมายมองเห็นการเชื่อมต่อ TCP ที่มาจาก bastion ขณะที่ไคลเอนต์ SSH ที่ทำการพิสูจน์ตัวตนยังคงทำงานบนเวิร์กสเตชัน

Host behind-bastion
    ProxyCommand ssh -W %h:%p bastion

ที่นี่ตัวช่วยเข้าสู่ระบบ bastion และขอให้เซิร์ฟเวอร์ SSH ของมันส่งต่อการเชื่อมต่อไปยังเป้าหมาย ไคลเอนต์ SSH ชั้นนอกของเวิร์กสเตชันแลกเปลี่ยนโปรโตคอล SSH ของเป้าหมายผ่านสตรีมนั้น bastion ให้การขนส่ง แต่ไม่ได้เริ่มไคลเอนต์ SSH ที่หันไปทางเป้าหมาย

ความแตกต่างนี้สำคัญสำหรับการพิสูจน์ตัวตนตามโฮสต์ ตัวช่วย ssh-keysign ของ OpenSSH เข้าถึงคีย์โฮสต์ภายในเครื่องเพื่อสร้างลายเซ็นที่จำเป็น การที่ที่อยู่ต้นทางเครือข่ายเป็นของ bastion ไม่ได้ทำให้เวิร์กสเตชันลงนามด้วยคีย์โฮสต์ของ bastion

เปรียบเทียบกับ:

ssh -t bastion ssh target

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

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

บทความที่เกี่ยวข้อง