ความเข้าใจของฉันเกี่ยวกับวิธีการทำงานของ ~ / .ssh / config คือแต่ละบรรทัด 'โฮสต์' จะมีผลสำหรับการจับคู่โฮสต์ใด ๆ หลังจากจุดนั้นในไฟล์กำหนดค่า
ฉันมีเซิร์ฟเวอร์ส่วนบุคคลและเซิร์ฟเวอร์ที่ทำงานที่ฉันต้องการเชื่อมต่อ ฉันกำลังพยายามทำสิ่งต่อไปนี้:
# การตั้งค่าทั่วไป อัตโนมัติ ControlMaster ControlPath ~/.ssh/controlmaster/%r@%h:% p ForwardAgent ใช่ ForwardX11 ใช่ GSSAPIA การตรวจสอบหมายเลขที่ PubkeyAuthentication ใช่ # เซิร์ฟเวอร์ส่วนบุคคล โฮสต์ * ผู้ใช้ harleypig IdentityFile ~ / .ssh / personal_id_rsa โฮสต์ 1 ชื่อโฮสต์ host1.com โฮสต์ที่ 2 ชื่อโฮสต์ host2.com # เซิร์ฟเวอร์การทำงาน โฮสต์ * ผู้ใช้ alan.young IdentityFile ~ / .ssh / work_id_rsa โฮสต์ work1 ชื่อโฮสต์ work1.companyserver.com โฮสต์ work2 ชื่อโฮสต์ work2.companyserver.com โฮสต์ * ผู้ใช้ devuser โฮสต์ dev1 ชื่อโฮสต์ dev1.companyserver.com โฮสต์ dev2 ชื่อโฮสต์ dev2.companyserver.com
เอกสารดูเหมือนจะบ่งชี้ว่า host1 และ host2 ควรใช้ 'personal_id_rsa' และผู้ใช้ harleypig work1, work2, dev1 และ dev2 ควรใช้ 'work_id_rsa' และสองรายการแรกควรเป็นผู้ใช้ 'alan.young' และ dev1 และ dev1 ควรเป็นผู้ใช้ 'devuser'
อย่างไรก็ตามสิ่งนี้ไม่ได้เกิดขึ้น อะไรก็ตามที่ 'โฮสต์ *' ที่ฉันใส่ไว้ก่อนคือสิ่งที่โฮสต์ต่อไปนี้พยายามเชื่อมต่อด้วย ฉันเข้าใจผิดหรือขาดอะไรไปหรือเปล่า