Aracılığıyla paylaş


Secure Shell (SSH) kullanarak bağlanma ve Windows çalıştıran bir Azure sanal makinesinde oturum açma

Şunlar için geçerlidir: ✔️ Windows VM'leri ✔️ Esnek ölçek kümeleri

Win32 OpenSSH projesi, Windows'ta yerel destek sağlayarak Secure Shell ile uzaktan bağlantıyı yaygın hale getirir. Bu özellik Windows Server sürüm 2019 ve sonraki sürümlerinde sağlanır ve bir sanal makine (VM) uzantısı kullanılarak Windows'un eski sürümlerine eklenebilir.

Aşağıdaki örneklerde değişkenler kullanılır. Ortamınızda değişkenleri aşağıdaki gibi ayarlayabilirsiniz.

Kabuk Örnek
Bash/ZSH myResourceGroup='resGroup10'
PowerShell $myResourceGroup='resGroup10'

SSH'yi etkinleştirme

İlk olarak, Windows makinenizde SSH'yi etkinleştirmeniz gerekir.

Windows için SSH uzantısını dağıtın. Uzantı, Windows'un daha yeni sürümlerinde özelliği etkinleştirmeye benzer şekilde Win32 OpenSSH çözümünün otomatik bir yüklemesini sağlar. Uzantıyı dağıtmak için aşağıdaki örnekleri kullanın.

az vm extension set --resource-group $myResourceGroup --vm-name $myVM --name WindowsOpenSSH --publisher Microsoft.Azure.OpenSSH --version 3.0

TCP bağlantı noktasını açma

VM bağlantısına izin vermek için uygun bağlantı noktasının (varsayılan olarak TCP 22) açık olduğundan emin olun.

az network nsg rule create -g $myResourceGroup --nsg-name $myNSG -n allow-SSH --priority 1000 --source-address-prefixes 208.130.28.4/32 --destination-port-ranges 22 --protocol TCP
  • VM'nizin genel IP adresi olmalıdır. VM'nizin genel IP adresi olup olmadığını denetlemek için sol menüden Genel Bakış'ı seçin ve Ağ bölümüne bakın. Genel IP adresi'nin yanında bir IP adresi görürseniz VM'nizin genel IP adresi vardır. Mevcut bir VM'ye genel IP adresi ekleme hakkında daha fazla bilgi edinmek için bkz . Genel IP adresini sanal makineyle ilişkilendirme

  • VM'nizin çalıştığını doğrulayın. Genel Bakış sekmesindeki temel bilgiler bölümünde VM'nin durumunun Çalışıyor olduğunu doğrulayın. VM'yi başlatmak için sayfanın üst kısmındaki Başlat'ı seçin.

Kimlik Doğrulaması

Kullanıcı adı ve parola veya SSH anahtarlarını kullanarak Windows makinelerinde kimlik doğrulaması yapabilirsiniz. Azure, Windows makinelerine ortak anahtarların otomatik olarak sağlanmasını desteklemez, ancak RunCommand uzantısını kullanarak anahtarı kopyalayabilirsiniz.

SSH ve anahtarlara genel bakış

SSH , güvenli olmayan bağlantılar üzerinden güvenli oturum açma işlemleri sağlayan şifreli bir bağlantı protokolüdür. SSH şifreli bir bağlantı sağlasa da, SSH bağlantılarıyla parola kullanmak vm'yi deneme yanılma saldırılarına karşı savunmasız bırakır. SSH anahtarları olarak da bilinen ortak-özel anahtar çifti kullanarak SSH üzerinden bir VM'ye bağlanmanızı öneririz.

  • Ortak anahtar VM'nize yerleştirilir.

  • Özel anahtar yerel sisteminizde kalır. Bu özel anahtarı koruyun. Özel anahtarı paylaşmayın.

VM'nize bağlanmak için bir SSH istemcisi kullandığınızda (ortak anahtara sahip), uzak VM istemciyi test eder ve doğru özel anahtara sahip olduğundan emin olur. İstemci özel anahtara sahipse vm'ye erişim izni verilir.

Kuruluşunuzun güvenlik ilkelerine bağlı olarak, birden çok Azure VM'sine ve hizmetlerine erişmek için tek bir ortak-özel anahtar çiftini yeniden kullanabilirsiniz. Erişmek istediğiniz her VM veya hizmet için ayrı bir anahtar çiftine ihtiyacınız yoktur.

Ortak anahtarınız herkesle paylaşılabilir, ancak özel anahtarınız yalnızca sizin (veya yerel güvenlik altyapınızın) erişimi olmalıdır.

Desteklenen SSH anahtar biçimleri

Azure şu anda en az 2048 bit uzunluğunda SSH protokolü 2 (SSH-2) RSA ortak-özel anahtar çiftlerini desteklemektedir. ED25519 Anahtarları için destek önizleme aşamasındadır, ECDH ve ECDSA gibi diğer anahtar biçimleri desteklenmez.

RunCommand uzantısını kullanarak ortak anahtarı kopyalayın.

RunCommand uzantısı, ortak anahtarı Windows makinelerine kopyalamak ve dosyanın doğru izinlere sahip olduğundan emin olmak için kolay bir çözüm sağlar.

az vm run-command invoke -g $myResourceGroup -n $myVM --command-id RunPowerShellScript --scripts "MYPUBLICKEY | Add-Content 'C:\ProgramData\ssh\administrators_authorized_keys' -Encoding UTF8;icacls.exe 'C:\ProgramData\ssh\administrators_authorized_keys' /inheritance:r /grant 'Administrators:F' /grant 'SYSTEM:F'"

Az CLI kullanarak bağlanma

Komutları kullanarak Az SSH Windows makinelerine bağlanın.

az ssh vm  -g $myResourceGroup -n $myVM --local-user $myUsername

SSH bağlantısı üzerinden belirli TCP bağlantı noktaları için bir ağ tüneli oluşturmak da mümkündür. Bunun için iyi bir kullanım örneği, varsayılan olarak 3389 numaralı bağlantı noktası olan Uzak Masaüstü'dür.

az ssh vm  -g $myResourceGroup -n $myVM --local-user $myUsername -- -L 3389:localhost:3389

Azure portalından bağlanma

  1. Vm'ye bağlanmak için Azure portalına gidin. Sanal makineleri aratın ve seçin.
  2. Listeden sanal makineyi seçin.
  3. Soldaki menüden Bağlan'ı seçin.
  4. Tercih ettiğiniz bağlantı yöntemine uyan seçeneği belirtin. Portal, bağlanma önkoşullarında size yol gösterir.

Sonraki adımlar

Dosyaları var olan bir VM'ye aktarmayı öğrenin, bkz . Dosyaları vm'ye ve vm'den taşımak için SCP kullanma.