วิธี SSH ไปยังเป้าหมายโดยตรงผ่าน jumphost โดยใช้ SSH Config โดยไม่ต้องใช้คำสั่ง ssh เพิ่มเติม


14

ถ้าฉันทำ:

ssh -J jumphost.example.com target.example.com

ฉันจะเข้าสู่ 'เป้าหมาย' ในทันที

หากฉันใช้ไฟล์กำหนดค่า ssh นี้ให้ใช้การกำหนดค่าการข้ามแบบใหม่ของ ssh-7.3:

Host jump 10.1.*, targets*, *.example.com
  HostName jumphost.example.com
  IdentitiesOnly yes
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/id_rsa

Host *
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/id_rsa

ฉันลงทะเบียนเข้าสู่ 'jumphost' ไม่ใช่ 'target'

มันคือพวงกุญแจสำหรับแม็คฉันได้ทำการทดสอบโดยที่ไม่มีมันและมันก็ไม่ได้สร้างความแตกต่างอะไร แต่คิดว่าฉันจะทิ้งไว้ในกรณี


1
-Jเป็นและไม่ได้ProxyJump HostName
Boris the Spider

คำตอบ:


21

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

  HostName jumphost.example.com

HostName แทนที่ชื่อโฮสต์ที่ระบุในบรรทัดคำสั่ง

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

Host everything, behind, jumphost, *.example.com
  ProxyJump jumphost.example.com

ตอนนี้คุณสามารถวิ่งได้ssh target.example.comและคุณจะต้องผ่านเส้นทางแห่งชัยชนะ


2

ปัญหาคือคำจำกัดความของโฮสต์จับทั้ง jumphost.example.com และ target.example.com เป็นนามแฝงจากนั้นตั้งค่าชื่อโฮสต์ให้ jumphost.example.com ในทั้งสองกรณี

ฉันขอแนะนำให้สร้างชื่อแทนตามคำสั่งโฮสต์ชื่อโดเมนไม่ผ่านการรับรองอย่างสมบูรณ์จากนั้นสร้างรายการโฮสต์สำหรับแต่ละรายการ

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