ฉันพยายามที่จะตั้งค่าตัวเลือกสากลสำหรับการเชื่อมต่อ ssh ใหญ่ นี่คือ~/.ssh/config
ไฟล์ของฉันย่อ:
Host *%via
ProxyCommand ssh gateway -W $(echo %h | cut -d%% -f1) %p
Host gateway
HostName gateway.example.com
User username
ForwardAgent yes
IdentityFile keypathg
Host target
User username
HostName target.example.com
IdentityFile keypatht
เมื่อฉันใช้*%via
ประโยชน์จากHost
ชื่อแทนฉันได้รับ:
% ssh -vvv target%via
OpenSSH_5.9p1, OpenSSL 0.9.8y 5 Feb 2013
debug1: Reading configuration data /Users/myuser/.ssh/config
debug1: /Users/myuser/.ssh/config line 5: Applying options for *
debug1: /Users/myuser/.ssh/config line 12: Applying options for *%via
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: auto-mux: Trying existing master
debug1: Control socket "/Users/myuser/.ssh/tmp/target%via_22_myuser" does not exist
debug2: ssh_connect: needpriv 0
debug1: Executing proxy command: exec ssh -A gateway -W $(echo target%via | cut -d% -f1):22
debug1: permanently_drop_suid: 501
debug1: identity file /Users/myuser/.ssh/id_rsa type -1
debug1: identity file /Users/myuser/.ssh/id_rsa-cert type -1
debug1: identity file /Users/myuser/.ssh/id_dsa type -1
debug1: identity file /Users/myuser/.ssh/id_dsa-cert type -1
ssh_exchange_identification: Connection closed by remote host
อย่างไรก็ตามถ้าฉันใช้
% ssh target.example.com%via
ฉันไปถึงเซิร์ฟเวอร์เป้าหมาย แต่เป็นผู้ใช้ที่ไม่ถูกต้องและไม่มีการรับรองความถูกต้อง pubkey
ฉันคิดว่าคำถามของฉัน ณ จุดนี้เป็นวิธีการตีกลับเมื่อใช้ForwardAgent
ผ่าน ssh config / สภาพแวดล้อมทั้งหมดของฉันหรือปุ่มเพียง หากใช้เพียงคีย์รหัสเดิมสามารถนำไปใช้ประโยชน์ในทางใดทางหนึ่งได้หรือไม่
เวอร์ชัน ssh ของฉันคือ 5.9v1, เกตเวย์คือ 5.9v1, และเป้าหมายคือ 5.3p1 ฉันเชื่อว่า-W
ได้รับการแนะนำใน 5.4 แต่ไม่ควรสำคัญสำหรับกล่องสุดท้ายในบรรทัด การใช้โรงเรียนที่เก่ากว่านั้นnc
ไม่แตกต่างกัน
ฉันได้ตรวจสอบแล้วว่าฉันสามารถ ssh ไปยังแต่ละช่องในบรรทัดได้ด้วยตนเอง การทำเช่นนี้แสดงให้เห็นว่าข้อมูลชื่อโฮสต์นามแฝงไม่ผ่านเช่นเมื่ออยู่บนเกตเวย์ฉันไม่สามารถแต่ฉันสามารถssh target
ssh target.example.com
วิธีนี้ใช้ได้กับ pubkey auth เกตเวย์และเป้าหมายมีชื่อผู้ใช้เดียวกันโดยบังเอิญซึ่งเป็นสาเหตุที่ใช้งานได้หากไม่มีการผลักดันการกำหนดค่า
หากการตั้งค่าที่ForwardAgent
คล้ายกันไม่สามารถส่งข้อมูลนี้ได้วิธีที่ปลอดภัยที่สุดในการแก้ไขคือให้รักษา. ssh / config บนเกตเวย์ด้วยข้อมูลนี้