Bastion ve Windows yerel istemcisini kullanarak vm'ye Bağlan

Bu makale, yerel Windows bilgisayarınızdaki yerel istemciyi (SSH veya RDP) kullanarak sanal ağdaki bir VM'ye bağlanmanıza yardımcı olur. Yerel istemci özelliği, Azure CLI kullanarak Bastion aracılığıyla hedef VM'lerinize bağlanmanıza olanak tanır ve oturum açma seçeneklerinizi yerel SSH anahtar çifti ile Microsoft Entra Id'yi içerecek şekilde genişletir. Yerel istemci bağlantıları için Bastion'ı yapılandırma hakkında daha fazla bilgi ve adım için bkz . Bastion'ı yerel istemci bağlantıları için yapılandırma. Yerel istemci aracılığıyla Bağlan için Bastion Standart SKU'su gerekir.

Diagram shows a connection via native client.

Bastion'ı yerel istemci desteği için yapılandırdıktan sonra, yerel bir Windows istemcisi kullanarak vm'ye bağlanabilirsiniz. Bağlanmak için kullandığınız yöntem hem bağlandığınız istemciye hem de bağlandığınız VM'ye bağlıdır. Aşağıdaki listede, Bir Windows yerel istemcisinden bağlanabileceğiniz bazı kullanılabilir yollar gösterilmektedir. Kullanılabilir istemci bağlantısı/özellik birleşimlerini gösteren tam liste için bkz. VM'lere Bağlan.

  • az network bastion rdp kullanarak bir Windows VM'sine Bağlan.
  • az network bastion ssh kullanarak Linux VM'sine Bağlan.
  • az network bastion tunnel kullanarak vm'ye Bağlan.
  • RDP üzerinden dosyaları karşıya yükleyin ve indirin.
  • az network bastion tunnel kullanarak dosyaları SSH üzerinden karşıya yükleyin.

Ön koşullar

Başlamadan önce aşağıdaki önkoşullara sahip olduğunuzu doğrulayın:

  • CLI komutlarının en son sürümü (sürüm 2.32 veya üzeri) yüklenir. Kullanarak Bastion az extension update --name bastioniçin CLI'nızı güncelleştirebilirsiniz. CLI komutlarını yükleme hakkında bilgi için bkz. Azure CLI’yi yükleme ve Azure CLI’yi Kullanmaya Başlama.
  • Azure Bastion sanal ağınız için zaten dağıtılmış ve yapılandırılmıştır. Adımlar için bkz . Bastion'ı yerel istemci bağlantıları için yapılandırma.
  • Sanal ağdaki bir sanal makine.
  • VM'nin Kaynak Kimliği. Kaynak Kimliği, Azure portalında kolayca bulunabilir. VM'nizin Genel Bakış sayfasına gidin ve Kaynak JSON'unu açmak için JSON Görünümü bağlantısını seçin. Daha sonra VM'nize bağlanırken kullanmak üzere sayfanın üst kısmındaki Kaynak Kimliğini panonuza kopyalayın.
  • Microsoft Entra kimlik bilgilerinizi kullanarak sanal makinenizde oturum açmayı planlıyorsanız, sanal makinenizin aşağıdaki yöntemlerden birini kullanarak ayarlandığından emin olun:

Rolleri ve bağlantı noktalarını doğrulama

VM'ye bağlanmak için aşağıdaki rollerin ve bağlantı noktalarının yapılandırıldığını doğrulayın.

Gerekli roller

  • Sanal makinedeki okuyucu rolü.

  • Sanal makinenin özel IP'sine sahip NIC'de okuyucu rolü.

  • Azure Bastion kaynağında okuyucu rolü.

  • Microsoft Entra oturum açma yöntemini kullanıyorsanız Sanal Makine Yönetici istrator Oturum Açma veya Sanal Makine Kullanıcı Oturumu Açma rolü. Bunu yapmanız için şu makalelerden birinde açıklanan işlemleri kullanarak Microsoft Entra oturum açma özelliğini etkinleştirmeniz gerekir:

Bağlantı Noktaları

Yerel istemci desteğini kullanarak bir Linux VM'ye bağlanmak için Linux VM'nizde aşağıdaki bağlantı noktalarının açık olması gerekir:

  • Gelen bağlantı noktası: SSH (22) veya
  • Gelen bağlantı noktası: Özel değer (daha sonra Azure Bastion aracılığıyla VM'ye bağlanırken bu özel bağlantı noktasını belirtmeniz gerekir)

Yerel istemci desteğini kullanarak bir Windows VM'ye bağlanmak için Windows VM'nizde aşağıdaki bağlantı noktalarının açık olması gerekir:

  • Gelen bağlantı noktası: RDP (3389) veya
  • Gelen bağlantı noktası: Özel değer (daha sonra Azure Bastion aracılığıyla VM'ye bağlanırken bu özel bağlantı noktasını belirtmeniz gerekir)

Azure Bastion ile NSG'leri en iyi şekilde yapılandırma hakkında bilgi edinmek için bkz . NSG erişimi ve Azure Bastion ile çalışma.

Sanal makineye bağlanma

Aşağıdaki bölümlerde yer alan adımlar, az network bastion komutunu kullanarak Windows yerel istemcisinden bir VM'ye bağlanmanıza yardımcı olur.

Windows VM'ye RDP

Bir kullanıcı RDP aracılığıyla bir Windows VM'sine bağlandığında, hedef VM üzerinde hakları olmalıdır. Kullanıcı yerel yönetici değilse, kullanıcıyı hedef VM'de Uzak Masaüstü Kullanıcıları grubuna ekleyin.

  1. kullanarak az loginAzure hesabınızda oturum açın. Birden fazla aboneliğiniz varsa, kullanarak bunları az account list görüntüleyebilir ve kullanarak az account set --subscription "<subscription ID>"Bastion kaynağınızı içeren aboneliği seçebilirsiniz.

  2. RDP aracılığıyla bağlanmak için aşağıdaki örneği kullanın.

    az network bastion rdp --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId>"
    
  3. Komutu çalıştırdıktan sonra kimlik bilgilerinizi girmeniz istenir. Yerel bir kullanıcı adı ve parola veya Microsoft Entra kimlik bilgilerinizi kullanabilirsiniz. Hedef VM'nizde oturum açtıktan sonra, bilgisayarınızdaki yerel istemci MSTSC aracılığıyla VM oturumunuzla açılır.

    Önemli

    Microsoft Entra ID'ye katılmış VM'lere uzaktan bağlantıya yalnızca Microsoft Entra kayıtlı (Windows 10 20H1'den başlayarak), Microsoft Entra'ya katılmış veya Microsoft Entra hibriti VM ile aynı dizine katılmış Windows 10 veya üzeri bilgisayarlardan izin verilir.

Kimlik doğrulama yöntemini belirtme

İsteğe bağlı olarak, komutun bir parçası olarak kimlik doğrulama yöntemini de belirtebilirsiniz.

Özel bağlantı noktası belirtme

RDP aracılığıyla bir Windows VM'sine bağlanırken özel bir bağlantı noktası belirtebilirsiniz.

Bunun özellikle yararlı olabileceği senaryolardan biri, 22 numaralı bağlantı noktası üzerinden bir Windows VM'sine bağlanmaktır. Bu, windows vm'sine bağlanmak için Windows yerel istemcisi tarafından kullanılamayan az network bastion ssh komutuyla ilgili sınırlama için olası bir geçici çözümdür.

Özel bir bağlantı noktası belirtmek için, aşağıdaki örnekte gösterildiği gibi oturum açma komutuna --resource-port alanını ekleyin.

az network bastion rdp --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId>" --resource-port "22"

Windows VM IP adresine RDP

Kaynak kimliği yerine vm özel IP adresine de bağlanabilirsiniz. Bu bağlantı türü kullanılırken Microsoft Entra kimlik doğrulaması ve özel bağlantı noktaları ve protokoller desteklenmez. IP tabanlı bağlantılar hakkında daha fazla bilgi için bkz. VM'ye Bağlan - IP adresi.

az network bastion komutunu kullanarak ve --target-resource-id--target-ip-address değerini ve belirtilen IP adresini kullanarak VM'nize bağlanın.

az network bastion rdp --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-ip-address "<VMIPAddress>"

Linux VM'ye SSH

  1. kullanarak az loginAzure hesabınızda oturum açın. Birden fazla aboneliğiniz varsa, kullanarak bunları az account list görüntüleyebilir ve kullanarak az account set --subscription "<subscription ID>"Bastion kaynağınızı içeren aboneliği seçebilirsiniz.

  2. Aşağıdaki örnek seçeneklerden birini kullanarak hedef Linux VM'nizde oturum açın. Özel bir bağlantı noktası değeri belirtmek istiyorsanız oturum açma komutuna --resource-port alanını ekleyin.

    Microsoft Entra ID:

    Microsoft Entra oturum açma özellikli bir VM'de oturum açıyorsanız aşağıdaki komutu kullanın. Daha fazla bilgi için bkz . Azure Linux VM'leri ve Microsoft Entra Id.

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

    SSH anahtar çifti:

    Uzantı, az extension add --name sshçalıştırılarak yüklenebilir. SSH anahtar çifti kullanarak oturum açmak için aşağıdaki örneği kullanın.

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

    Kullanıcı adı/parola:

    Yerel bir kullanıcı adı ve parola kullanarak oturum açıyorsanız aşağıdaki komutu kullanın. Ardından hedef VM için parola girmeniz istenir.

    az network bastion ssh --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId or VMSSInstanceResourceId>" --auth-type "password" --username "<Username>"
    
  3. Hedef VM'nizde oturum açtıktan sonra, bilgisayarınızdaki yerel istemci SSH CLI uzantısı (az ssh) kullanılarak VM oturumunuzla açılır.

Linux VM IP adresine SSH

Kaynak kimliği yerine vm özel IP adresine de bağlanabilirsiniz. Bu bağlantı türü kullanılırken Microsoft Entra kimlik doğrulaması ve özel bağlantı noktaları ve protokoller desteklenmez. IP tabanlı bağlantılar hakkında daha fazla bilgi için bkz. VM'ye Bağlan - IP adresi.

az network bastion komutunu kullanarak ve --target-resource-id--target-ip-address değerini ve belirtilen IP adresini kullanarak VM'nize bağlanın.

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

VM'ye Bağlan - tunnel komutu

az network bastion tunnel komutu, VM'lerinize bağlanabilmenizin başka bir yoludur. Bu komutu kullandığınızda aşağıdakileri yapabilirsiniz:

  • Windows dışındaki yerel bilgisayarlardaki yerel istemcilerden Bağlan. (Örneğin, bir Linux bilgisayar.)
  • SSH veya RDP kullanarak vm'ye Bağlan. (Savunma tüneli web sunucularını veya konakları geçirmez.)
  • Seçtiğiniz yerel istemciyi kullanın.
  • Dosyaları yerel bilgisayarınızdan hedef VM'nize yükleyin. Hedef VM'den yerel istemciye dosya indirme şu anda bu komut için desteklenmiyor.

Sınırlamalar:

  • Azure Key Vault'ta depolanan bir SSH özel anahtarı kullanarak oturum açmak bu özellikte desteklenmez. Linux VM'nizde SSH anahtar çifti kullanarak oturum açmadan önce özel anahtarınızı yerel makinenizdeki bir dosyaya indirin.
  • Bu özellik Cloud Shell'de desteklenmez.

Adımlar:

  1. kullanarak az loginAzure hesabınızda oturum açın. Birden fazla aboneliğiniz varsa, kullanarak bunları az account list görüntüleyebilir ve kullanarak az account set --subscription "<subscription ID>"Bastion kaynağınızı içeren aboneliği seçebilirsiniz.

  2. Hedef VM'nizin tünelini açın.

    az network bastion tunnel --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId or VMSSInstanceResourceId>" --resource-port "<TargetVMPort>" --port "<LocalMachinePort>"
    
  3. SSH veya RDP, seçtiğiniz yerel istemci ve önceki adımda belirttiğiniz yerel makine bağlantı noktasını kullanarak hedef VM'nize Bağlan.

    Örneğin, yerel bilgisayarınızda OpenSSH istemcisi yüklüyse aşağıdaki komutu kullanabilirsiniz:

    ssh <username>@127.0.0.1 -p <LocalMachinePort>
    

VM IP adresine tünel oluşturma

Kaynak kimliği yerine vm özel IP adresine de bağlanabilirsiniz. Bu bağlantı türü kullanılırken Microsoft Entra kimlik doğrulaması ve özel bağlantı noktaları ve protokoller desteklenmez. IP tabanlı bağlantılar hakkında daha fazla bilgi için bkz. VM'ye Bağlan - IP adresi.

az network bastion tunnel komutunu kullanarak ve --target-resource-id--target-ip-address değerini ve belirtilen IP adresini kullanarak VM'nize bağlanın.

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

Çoklu bağlantı tüneli

  1. aşağıdakileri $HOME.ssh\config dosyanıza ekleyin.

    Host tunneltunnel
      HostName 127.0.0.1
      Port 2222
      User mylogin
      StrictHostKeyChecking=No
      UserKnownHostsFile=\\.\NUL
    
  2. Tünel bağlantısını, yerleşik tünel bağlantınıza ekleyin.

    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. Savunma tünelinde bir ssh tüneli oluşturun.

    ssh -L 2222:127.0.0.1:22 mylogin@127.0.0.1
    
  4. Tünel bağlantınıza bağlanmak için VS Code kullanın.

Sonraki adımlar

Dosyaları karşıya yükleme veya indirme