Aracılığıyla paylaş


Azure'da Windows ile SSH anahtarlarını kullanma

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

Bu makale, Azure'da Linux sanal makinelerine (VM) bağlanmak için güvenli kabuk (SSH) anahtarları oluşturmak ve kullanmak isteyen Windows kullanıcılarına yöneliktir. Ayrıca , portalda VM oluştururken kullanmak üzere Azure portalında SSH anahtarları oluşturabilir ve depolayabilirsiniz.

Linux veya macOS istemcisinden SSH anahtarlarını kullanmak için hızlı adımlara bakın. SSH'ye daha ayrıntılı bir genel bakış için bkz . Ayrıntılı adımlar: Azure'da Linux VM'sinde kimlik doğrulaması için SSH anahtarları oluşturma ve yönetme.

Not

Linux VM'leri için ED25519 SSH anahtar desteği artık bağımsız bulutlar da dahil olmak üzere tüm bölgelerde önizleme aşamasındadır.

SSH ve anahtarlara genel bakış

SSH , güvenli olmayan bağlantılar üzerinden güvenli oturum açma işlemlerine izin veren şifreli bir bağlantı protokolüdür. SSH, Azure'da barındırılan Linux VM'leri için varsayılan bağlantı protokolüdür. SSH'nin kendisi şifreli bir bağlantı sağlasa da, SSH ile 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-özel anahtar çifti, ön kapınızdaki kilit gibidir. Kilit herkese açık, doğru anahtara sahip herkes kapıyı açabilir. Anahtar özeldir ve yalnızca güvendiğiniz kişilere verilir çünkü kapının kilidini açmak için kullanılabilir.

  • Vm'yi oluşturduğunuzda ortak anahtar Linux VM'nize yerleştirilir.

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

Linux VM'nize bağlandığınızda, VM doğru özel anahtara sahip olduğundan emin olmak için SSH istemcisini test eder. İ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 anahtar çiftini yeniden kullanabilirsiniz. Her VM için ayrı bir anahtar çifti gerekmez.

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.

Not

Önizleme sırasında ED25519 anahtarları yalnızca Linux VM'lerle kullanılabilir.

SSH istemcileri

Windows 10'un son sürümleri, SSH anahtarları oluşturmak ve kullanmak ve PowerShell'den veya komut isteminden SSH bağlantıları oluşturmak için OpenSSH istemci komutlarını içerir.

Vm'nize bağlanmak için Azure Cloud Shell'de Bash'i de kullanabilirsiniz. Cloud Shell'i web tarayıcısında, Azure portalından veya Azure Hesabı uzantısını kullanarak Visual Studio Code'da terminal olarak kullanabilirsiniz.

Ayrıca SSH üzerinden VM'nize bağlanmak için Linux için Windows Alt Sistemi yükleyebilir ve bash kabuğundaki diğer yerel Linux araçlarını kullanabilirsiniz.

SSH anahtar çifti oluşturma

SSH anahtarlarınızı oluşturmanın ve yönetmenin en kolay yolu, yeniden kullanmak üzere oluşturmak ve depolamak için portalı kullanmaktır.

SSH anahtarları oluşturma ve depolama bölümünde açıklandığı gibi az sshkey create komutuyla Azure CLI ile anahtar çiftleri de oluşturabilirsiniz.

PowerShell'den veya komut isteminden komutunu kullanarak ssh-keygen yerel bilgisayarınızda SSH anahtar çifti oluşturmak için aşağıdaki komutu kullanın:

ssh-keygen -m PEM -t rsa -b 2048

Bir dosya adı girin veya parantez içinde gösterilen varsayılanı kullanın (örneğin C:\Users\username/.ssh/id_rsa). Dosya için bir parola girin veya parola kullanmak istemiyorsanız parolayı boş bırakın.

Anahtarınızı kullanarak VM oluşturma

Kimlik doğrulaması için SSH anahtarlarını kullanan bir Linux VM oluşturmak için VM'yi oluştururken SSH ortak anahtarınızı sağlayın.

Azure CLI kullanarak ve parametresini kullanarak az vm create ortak anahtarın yolunu ve --ssh-key-value dosya adını belirtirsiniz.

az vm create \
   --resource-group myResourceGroup \
   --name myVM \
   --image Ubuntu2204\
   --admin-username azureuser \
   --ssh-key-value ~/.ssh/id_rsa.pub

PowerShell ile kullanarak SSH anahtarını kullanın New-AzVM ve vm yapılandırmasına ekleyin'. Örnek için bkz . Hızlı Başlangıç: PowerShell ile Azure'da Linux sanal makinesi oluşturma.

Portalı kullanarak birçok dağıtım yapıyorsanız, ortak anahtarınızı Azure'a yüklemek isteyebilirsiniz; burada portaldan vm oluşturulurken kolayca seçilebilir. Daha fazla bilgi için bkz . SSH anahtarını karşıya yükleme.

Sanal makinenize bağlanma

Azure VM'nizde dağıtılan ortak anahtar ve yerel sisteminizdeki özel anahtar ile VM'nizin IP adresini veya DNS adını kullanarak VM'nize SSH gönderin. Aşağıdaki komuttaki azureuser ve 10.111.12.123 değerlerini yönetici kullanıcı adı, IP adresi (veya tam etki alanı adı) ve özel anahtarınızın yolu ile değiştirin:

ssh -i ~/.ssh/id_rsa azureuser@10.111.12.123

Bu VM'ye daha önce hiç bağlanmadıysanız konakların parmak izini doğrulamanız istenir. Sunulan parmak izini kabul etmek caziptir, ancak bu sizi ortadaki saldırıda olası bir kişiye maruz bırakır. Konakların parmak izini her zaman doğrulamanız gerekir. Bunu yalnızca bir istemciden ilk kez bağlandığınızda yapmanız gerekir. Portal aracılığıyla konak parmak izini almak için Komutunu Çalıştır'ı aşağıdaki komutla kullanın: ssh-keygen -lf /etc/ssh/ssh_host_ecdsa_key.pub | awk '{print $2}'.

Konak parmak izini doğrulamak için Çalıştır Komutunun kullanılmasını gösteren ekran görüntüsü.

KOMUTU CLI kullanarak çalıştırmak için komutunu kullanınaz vm run-command invoke.

Anahtar çiftinizi oluştururken bir parola yapılandırdıysanız, sorulduğunda parolayı girin.

VM tam zamanında erişim ilkesini kullanıyorsa, VM'ye bağlanabilmeniz için önce erişim istemeniz gerekir. Tam zamanında ilkesi hakkında daha fazla bilgi için bkz . Tam zamanında ilkesini kullanarak sanal makine erişimini yönetme.

Sonraki adımlar

  • Azure portalında VM oluştururken kullanılacak SSH anahtarları hakkında bilgi için bkz . Azure portalında SSH anahtarları oluşturma ve depolama.

  • Azure CLI'da VM oluştururken kullanılacak SSH anahtarları hakkında bilgi için bkz . Azure CLI ile SSH anahtarları oluşturma ve depolama.

  • SSH anahtarlarıyla çalışmaya ilişkin ayrıntılı adımlar, seçenekler ve gelişmiş örnekler için bkz . SSH anahtar çiftleri oluşturmak için ayrıntılı adımlar.

  • Linux VM'lerinize bağlanmak için SSH kullanmakta zorlanıyorsanız bkz . Azure Linux VM'sine SSH bağlantılarında sorun giderme.