Bagikan melalui


Koneksi ke VM menggunakan Bastion dan klien asli Linux

Artikel ini membantu Anda terhubung melalui Azure Bastion ke VM di VNet menggunakan klien asli di komputer Linux lokal Anda. Fitur klien asli memungkinkan Anda terhubung ke VM target melalui Bastion menggunakan Azure CLI, dan memperluas opsi masuk Anda untuk menyertakan pasangan kunci SSH lokal dan ID Microsoft Entra. Untuk informasi dan langkah-langkah selengkapnya untuk mengonfigurasi Bastion untuk koneksi klien asli, lihat Mengonfigurasi Bastion untuk koneksi klien asli. Koneksi melalui klien asli memerlukan SKU Standar Bastion atau yang lebih tinggi.

Diagram memperlihatkan koneksi melalui klien asli.

Setelah mengonfigurasi Bastion untuk dukungan klien asli, Anda dapat terhubung ke VM menggunakan klien Linux asli. Metode yang Anda gunakan untuk menyambungkan tergantung pada klien yang Anda sambungkan, dan VM yang Anda sambungkan. Daftar berikut menunjukkan beberapa cara yang tersedia untuk terhubung dari klien asli Linux. Lihat Koneksi ke VM untuk daftar lengkap yang memperlihatkan kombinasi koneksi/fitur klien yang tersedia.

  • Koneksi ke VM Linux menggunakan az network bastion ssh.
  • Koneksi ke VM Windows menggunakan terowongan bastion jaringan az.
  • Koneksi ke VM apa pun menggunakan terowongan bastion jaringan az.
  • Unggah file ke VM target Anda melalui SSH menggunakan terowongan bastion jaringan az. Pengunduhan file dari mesin virtual target ke klien lokal saat ini tidak didukung untuk perintah ini.

Prasyarat

Sebelum memulai, verifikasi bahwa Anda telah memiliki prasyarat berikut:

  • Versi terbaru perintah CLI (versi 2.32 atau lebih baru) telah terinstal. Anda dapat memperbarui CLI untuk Bastion menggunakan az extension update --name bastion. Untuk informasi tentang menginstal perintah CLI, lihat Menginstal Azure CLI dan Mulai menggunakan Azure CLI.
  • Azure Bastion sudah disebarkan dan dikonfigurasi untuk jaringan virtual Anda. Untuk langkah-langkahnya, lihat Mengonfigurasi Bastion untuk koneksi klien asli.
  • M virtual dalam jaringan virtual.
  • ID Sumber Daya mesin virtual. ID Sumber Daya dapat ditemukan dengan mudah di portal Azure. Buka halaman Gambaran Umum untuk mesin virtual Anda dan pilih tautan Tampilan JSON untuk membuka JSON Sumber Daya. Salin ID Sumber Daya di bagian atas halaman ke clipboard Anda untuk digunakan nanti ketika menyambungkan ke mesin virtual Anda.
  • Jika Anda berencana untuk masuk ke komputer virtual menggunakan kredensial Microsoft Entra, pastikan komputer virtual Anda disiapkan menggunakan salah satu metode berikut:

Memverifikasi peran dan port

Verifikasi bahwa peran dan port berikut sudah dikonfigurasi untuk tersambung ke mesin virtual.

Peran yang Diperlukan

  • Peran pembaca pada komputer virtual.

  • Peran pembaca pada NIC dengan IP privat komputer virtual.

  • Peran pembaca pada sumber daya Azure Bastion.

  • Peran Masuk Administrator Komputer Virtual atau Login Pengguna Komputer Virtual, jika Anda menggunakan metode masuk Microsoft Entra. Anda hanya perlu melakukan ini jika Anda mengaktifkan login Microsoft Entra menggunakan proses yang diuraikan dalam salah satu artikel ini:

Port

Untuk tersambungg ke VM Linux menggunakan dukungan klien asli, Anda harus membuka port berikut di VM Linux Anda:

  • Port masuk: SSH (22) atau
  • Port masuk: Nilai kustom (Anda kemudian perlu menentukan port kustom ini ketika tersambung ke VM melalui Azure Bastion)

Untuk tersambung ke VM Windows menggunakan dukungan klien asli, Anda harus membuka port berikut di VM Windows Anda:

  • Port masuk: RDP (3389) or
  • Port masuk: Nilai kustom (Anda kemudian perlu menentukan port kustom ini ketika tersambung ke VM melalui Azure Bastion)

Untuk mempelajari cara terbaik mengonfigurasi NSG dengan Azure Bastion, lihat Menangani akses NSG dan Azure Bastion.

Menghubungkan ke VM Linux

Langkah-langkah di bagian berikut membantu Anda terhubung ke VM Linux dari klien asli Linux menggunakan perintah bastion jaringan az. Ekstensi ini dapat diinstal dengan menjalankan, az extension add --name bastion.

Saat Anda tersambung menggunakan perintah ini, transfer file tidak didukung. Jika Anda ingin mengunggah file, sambungkan menggunakan perintah terowongan bastion jaringan az sebagai gantinya.

Perintah ini memungkinkan Anda melakukan hal berikut:

  • Koneksi ke VM Linux menggunakan SSH.
  • Mengautentikasi melalui ID Microsoft Entra
  • Koneksi ke sesi VM bersamaan dalam jaringan virtual.

Untuk masuk, gunakan salah satu contoh berikut. Setelah Anda masuk ke VM target, klien asli di komputer Anda terbuka dengan sesi VM Anda.

Pasangan kunci SSH

Untuk masuk ke VM Anda menggunakan pasangan kunci SSH, gunakan contoh berikut.

az network bastion ssh --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId>" --auth-type "ssh-key" --username "<Username>" --ssh-key "<Filepath>"

Autentikasi Microsoft Entra

Jika Anda masuk ke VM yang mendukung login Microsoft Entra, gunakan contoh berikut. Untuk informasi selengkapnya, lihat VM Linux Azure dan ID Microsoft Entra.

az network bastion ssh --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId or VMSSInstanceResourceId>" --auth-type "AAD"

Nama pengguna/kata sandi

Jika Anda masuk ke VM menggunakan nama pengguna dan kata sandi lokal, gunakan contoh berikut. Anda akan kemudian dimintai kata sandi untuk mesin virtual target.

az network bastion ssh --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId or VMSSInstanceResourceId>" --auth-type "password" --username "<Username>"

SSH ke alamat IP VM Linux

Anda dapat menyambungkan ke alamat IP privat VM alih-alih ID sumber daya. Ketahuilah bahwa autentikasi Microsoft Entra, dan port dan protokol kustom tidak didukung saat menggunakan jenis koneksi ini. Untuk informasi selengkapnya tentang koneksi berbasis IP, lihat Koneksi ke VM - alamat IP.

az network bastion Menggunakan perintah , ganti --target-resource-id dengan --target-ip-address dan alamat IP yang ditentukan untuk menyambungkan ke VM Anda. Contoh berikut menggunakan --ssh-key untuk metode autentikasi.

az network bastion ssh --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-ip-addres "<VMIPAddress>" --auth-type "ssh-key" --username "<Username>" --ssh-key "<Filepath>"

Koneksi ke VM - perintah terowongan

Perintah terowongan bastion jaringan az adalah cara lain agar Anda dapat terhubung ke VM Anda. Saat menggunakan perintah ini, Anda bisa melakukan hal berikut:

  • Koneksi dari klien asli di komputer lokal non-Windows. (Misalnya, komputer Linux.)
  • Koneksi ke VM menggunakan SSH atau RDP. (Terowongan bastion tidak menyampaikan server web atau host.)
  • Gunakan klien asli pilihan Anda.
  • Unggah file ke mesin virtual target Anda dari komputer lokal. Pengunduhan file dari mesin virtual target ke klien lokal saat ini tidak didukung untuk perintah ini.

Batasan:

  • Masuk menggunakan kunci privat SSH yang disimpan di Azure Key Vault tidak didukung dengan fitur ini. Sebelum masuk ke mesin virtual Linux Anda menggunakan pasangan kunci SSH, unduh kunci privat ke file pada mesin lokal Anda.
  • Fitur ini tidak didukung di Cloud Shell.

Langkah-langkah:

  1. Masuk ke akun Azure Anda menggunakan az login. Jika Anda memiliki lebih dari satu langganan, Anda dapat melihatnya menggunakan az account list dan memilih langganan yang berisi sumber daya Bastion Anda menggunakan az account set --subscription "<subscription ID>".

  2. Buka terowongan ke VM target Anda.

    az network bastion tunnel --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId or VMSSInstanceResourceId>" --resource-port "<TargetVMPort>" --port "<LocalMachinePort>"
    
  3. Koneksi ke VM target Anda menggunakan SSH atau RDP, klien asli pilihan Anda, dan port komputer lokal yang Anda tentukan di langkah sebelumnya.

    Misalnya, Anda dapat menggunakan perintah berikut jika klien OpenSSH terinstal di komputer lokal Anda:

    ssh <username>@127.0.0.1 -p <LocalMachinePort>
    

Terowongan ke alamat IP VM

Anda juga dapat terhubung ke alamat IP privat VM, bukan ID sumber daya. Autentikasi Microsoft Entra, dan port dan protokol kustom tidak didukung saat menggunakan jenis koneksi ini. Untuk informasi selengkapnya tentang koneksi berbasis IP, lihat Koneksi ke VM - alamat IP.

az network bastion tunnel Menggunakan perintah , ganti --target-resource-id dengan --target-ip-address dan alamat IP yang ditentukan untuk menyambungkan ke VM Anda.

az network bastion tunnel --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-ip-address "<VMIPAddress>" --resource-port "<TargetVMPort>" --port "<LocalMachinePort>"

Terowongan multi-koneksi

  1. Tambahkan berikut ini ke $HOME.ssh\config Anda.

    Host tunneltunnel
      HostName 127.0.0.1
      Port 2222
      User mylogin
      StrictHostKeyChecking=No
      UserKnownHostsFile=\\.\NUL
    
  2. Tambahkan koneksi terowongan ke koneksi terowongan yang dibuat.

    az network bastion tunnel --name mybastion --resource-group myrg --target-resource-id /subscriptions/<mysubscription>/resourceGroups/myrg/providers/Microsoft.Compute/virtualMachines/myvm --resource-port 22 --port 22
    
  3. Buat terowongan ssh di terowongan bastion.

    ssh -L 2222:127.0.0.1:22 mylogin@127.0.0.1
    
  4. Gunakan Visual Studio Code untuk menyambungkan ke koneksi terowongan Anda.

Langkah berikutnya

Unggah atau unduh file