ทำให้ชื่อโฮสต์ ssh ง่ายขึ้นด้วย wildcard


0

ฉันมีเซิร์ฟเวอร์จำนวนมากที่มีชื่อลงท้ายด้วย 001, 002, 003 และฉันต้องการเปลี่ยนชื่อเป็นสิ่งที่เรียบง่ายกว่า บางสิ่งเช่นนี้

Host server*
User user
HostName server-xxx-yyy-zzz-*

Host client*
User user
HostName client-xxx-yyy-zzz-*

จากนั้นssh server001จะถูกประหารชีวิตเช่นเดียวกับssh server-xxx-yyy-zzz-001

มีวิธีใดที่จะทำเช่นนี้กับ ssh-config เท่านั้น? ฉันจะทำการซ้อมรบใน / etc / hosts ได้อย่างไร หรือฉันต้องสร้างสคริปต์เพื่อสร้างการกำหนดค่าสำหรับแต่ละโฮสต์?

คำตอบ:


1

ฉันมีปัญหาเดียวกันและฉันใส่ชื่อใหม่/etc/hostsเพราะฉันต้องการพวกเขาด้วย:

  • เป็นpingเป้าหมาย
  • ใน URL เบราว์เซอร์ (คอนโซลผู้ดูแลระบบหรือเซิร์ฟเวอร์ทดสอบ)
  • ในการเชื่อมต่อฐานข้อมูล
  • ใน URL Git

เมื่อคุณทำเสร็จแล้วคุณจะต้องมีเพียงหนึ่งรายการทั่วไปใน~/.ssh/config:

Host client* server*
    User username
    IdentityFile ~/.ssh/id_rsa # if the same everywhere

แน่นอน SSH จะรบกวนคุณหนึ่งครั้งสำหรับชื่อใหม่แต่ละชื่อเพื่อเพิ่มโฮสต์คีย์ใน known_hosts


ฉันถามว่าสิ่งนี้สามารถทำได้โดยใช้สัญลักษณ์แทนหรือสิ่งที่สั้นและสมาร์ท ถ้าฉันลบชื่อโฮสต์ 1k ใน/etc/hostsเหมือนว่าฉันกำลังย้ายปัญหาจาก~/.ssh/configไปยัง/etc/hosts
ΘεόφιλοςΜουρατίδης

คุณไม่ได้กำหนด "หลายคน" :) 1 < several < many < billionsทั้งหมดที่ฉันสามารถคาดเดาเป็น ดังนั้นสิ่งที่คุณต้องการทำคือเรียกใช้ DNS ของคุณด้วยรหัสบางส่วนเพื่อแทนที่ชื่อได้ทันทีและส่งต่อคำขอไปยัง DNS อย่างเป็นทางการ แต่ฉันไม่รู้ว่า DNS นั้นมีอยู่จริง
xenoid
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.