ความเข้าใจเบื้องต้นของฉันคือว่า ป้อมปราการ Azure ทำหน้าที่เหมือนเกตเวย์ SSH (และ RDP) ที่มีน้ำหนักเบาไปยังทรัพยากร โดยเฉพาะ VM บนเครือข่ายเสมือนเดียวกัน แทนที่จะจัดเตรียม VM แบบเต็มเป็น Jumpboxนั่นคือฉันคาดว่าจะสามารถทำเช่นนี้ได้จากทุกที่บนอินเทอร์เน็ตสาธารณะไปยัง SSH ใน VM บนเครือข่ายเดียวกัน:
ssh -i /path/to/private.key -J BASTION_IP user@VM_IP
ที่ไหน BASTION_IP
เป็น IP สาธารณะที่เกี่ยวข้องกับทรัพยากร Bastion และ VM_IP
เป็นที่อยู่ IP ภายในของ VM ในซับเน็ตพี่น้องกับซับเน็ต Bastion
ฉันได้ตั้งค่านี้ใน Terraform โดยใช้ Bastion SKU "พื้นฐาน" แต่เมื่อฉันพยายามเชื่อมต่อ หมดเวลา ใน Azure Poral มีตัวเลือกชื่อ "Native Client Support" (ซึ่งต้องการ SKU "มาตรฐาน") ซึ่งแสดงเป็น Tunneling_enabled
อาร์กิวเมนต์ในทรัพยากร Terraform ที่เกี่ยวข้อง ด้วยการเปลี่ยนแปลงเหล่านั้น การเชื่อมต่อของฉันยังคงหมดเวลา
กำลังติดตาม รูกระต่ายของเอกสาร แนะนำว่า คุณ มี เพื่อใช้ Azure CLI อันที่จริงฉันสามารถขุดอุโมงค์เพื่อทำงานโดยใช้ Azure CLI - ส่วนขยาย SSH เป็น Windows เท่านั้น - แต่มันเป็นเรื่องเล็กน้อย:
az เข้าสู่ระบบ # ฉันถือว่ามีวิธีเข้าสู่ระบบแบบอัตโนมัติ
ชุดบัญชี az -- การสมัครสมาชิก SUBSCRIPTION_ID
อุโมงค์ป้อมปราการเครือข่าย az --name BASTION_NAME --resource-group RG_NAME --target-resource-id REALLY_LONG_VM_RESOURCE_ID --resource-port 22 --port 2222 &
ssh -i /path/to/private.key -p 2222 user@localhost
มีวิธีที่ไม่ใช่กรรมสิทธิ์ของ SSH ใน Azure VM ผ่าน Azure Bastion หรือไม่ หรือข้อสันนิษฐานของฉันเกี่ยวกับกรณีการใช้งานปิดอยู่