Score:0

โฮสต์ที่กำหนดไว้ก่อนหน้านี้สามารถใช้เป็นชื่อโฮสต์ในไฟล์ .ssh/config สำหรับการกำหนดค่าช่องสัญญาณโดยใช้ LocalForward ได้หรือไม่

ธง co

ดังนั้น ฉันมีเซิร์ฟเวอร์จำนวนมากที่เข้าถึงได้ผ่านโฮสต์ป้อมปราการเท่านั้น

อย่างไรก็ตามโฮสต์ป้อมปราการของฉันมี IP แบบไดนามิกซึ่งเปลี่ยนแบบสุ่ม

สำหรับ ssh'ing ในเซิร์ฟเวอร์ต่างๆ ฉันเพียงแค่มี .ssh/config กับ ProxyJump ที่อ้างอิงถึงโฮสต์ของเซิร์ฟเวอร์ป้อมปราการของฉัน ดังนั้นฉันจึงต้องเปลี่ยน IP ที่เดียวเท่านั้น เช่น :

โฮสต์ preprod_jumphost
    ชื่อโฮสต์ 123.123.123.123
    พอร์ต 22
โฮสต์ target_host1
    ชื่อโฮสต์ 201.201.201.201
    ProxyJump preprod_jumphost
โฮสต์ target_host2
    ชื่อโฮสต์ 201.201.201.202
    ProxyJump preprod_jumphost

ด้วยการเปลี่ยน ip ของ 123.123.123.123 เป็นค่าใหม่ โฮสต์อื่นทั้งหมดของฉันจะได้รับการอัปเดตอย่างถูกต้อง

อย่างไรก็ตาม ฉันมีบริการบางอย่างที่ต้องเชื่อมต่อโดยใช้ local forward (db เป็นหลัก) ที่ฉันไม่สามารถ SSH เข้าสู่เซิร์ฟเวอร์ได้

ฉันลองใช้นามแฝงโฮสต์ในชื่อโฮสต์เช่น:

โฮสต์ db_preprod
        ชื่อโฮสต์ preprod_jumphost
        LocalForward 5432 201.201.201.111:5432

อย่างไรก็ตามเมื่อฉันวิ่ง ssh db_preprod ฉันเข้าใจ:

ssh: ไม่สามารถแก้ไขชื่อโฮสต์ preprod_jumphost: ชื่อหรือบริการไม่ได้ เป็นที่รู้จัก

ถ้าฉันแทนที่ชื่อโฮสต์ด้วยไดนามิกไอพีใน:

โฮสต์ db_preprod
        ชื่อโฮสต์ 123.123.123.123
        LocalForward 5432 201.201.201.111:5432

มันได้ผล. ฉันสามารถ ssh db_preprod และ psql -UYYY -d XXX -p 54332 -h localhost ทำงาน

เนื่องจากฉันมีฐานข้อมูลและบริการอื่น ๆ มากมายที่ฉันต้องการเข้าถึงจึงมีวิธีการอ้างอิง preprod_jumphost กำหนดในโฮสต์อื่นสำหรับต่างๆของฉัน LocalForward คำนิยาม. ด้วยวิธีนี้ฉันจึงไม่มีการกำหนดค่าโฮสต์มากมายให้อัปเดตเมื่อ ip ของโฮสต์ป้อมปราการเปลี่ยนไป?

ในขณะที่ฉันรู้ว่าฉันสามารถกำหนด LocalForward หลายรายการโดยตรงในโฮสต์ preprod_jump โฮสต์ของฉันเป็น

โฮสต์ preprod_jumphost
    ผู้ใช้อูบุนตู
    ชื่อโฮสต์ 123.123.123.123
    พอร์ต 22
    LocalForward 5432 201.201.201.111:5432
    LocalForward 5433 201.201.201.122:5432
    LocalForward 5434 201.201.201.133:5432
    LocalForward 5435 201.201.201.144:5432

ฉันไม่ต้องการให้พอร์ตทั้งหมดส่งต่ออย่างต่อเนื่องในขณะที่ฉัน ssh ที่ไหนสักแห่ง (โดยเฉพาะสำหรับ prod env ของฉัน) ฉันต้องการเริ่มเซสชัน ssh อย่างชัดเจนเมื่อฉันต้องการ

Score:0
ธง in

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

ดังนั้นการใช้ด้านล่างเพียงทำการเชื่อมต่อ ssh กับ db_preprod ซึ่งจะทำ ProxyJump และทำการส่งต่อ

โฮสต์ preprod_jumphost
    ชื่อโฮสต์ 123.123.123.123
    พอร์ต 22
โฮสต์ db_preprod
    ProxyJump preprod_jumphost
    ชื่อโฮสต์ 201.201.201.111
    LocalForward 5432 201.201.201.111:5432

เนื่องจากฉันมีฐานข้อมูลและบริการอื่น ๆ มากมายที่ฉันต้องการเข้าถึง

คุณสามารถทำ SOCKS ไปข้างหน้าและทำทุกอย่างผ่าน SOCKS ลักษณะไดนามิกของพร็อกซีถุงเท้าโดยทั่วไปหมายความว่าคุณสามารถอุโมงค์โปรโตคอล tcp ใดๆ ผ่านการเชื่อมต่อ ssh โดยไม่ต้องส่งต่อการกำหนดค่าจำนวนมาก สมมติว่าคุณมีซอฟต์แวร์ไคลเอ็นต์ที่สามารถใช้ SOCKS ได้

โฮสต์ preprod_jumphost
    ชื่อโฮสต์ 123.123.123.123
    พอร์ต 22
    ไดนามิกฟอร์เวิร์ด 8888

โพสต์คำตอบ

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