Cara menggunakan kunci SSH dengan Windows di Azure

Berlaku untuk: ✔️ Mesin Virtual Linux ✔️ Set skala fleksibel

Artikel ini ditujukan untuk pengguna Windows yang ingin membuat dan menggunakan kunci secure shell (SSH) untuk menghubungkan ke komputer virtual (VM) Linux di Azure. Anda juga dapat membuat dan menyimpan kunci SSH di portal Azure untuk digunakan saat membuat VM di portal.

Untuk menggunakan kunci SSH dari klien macOS atau Linux, lihat langkah cepat. Untuk ringkasan SSH yang lebih mendetail, lihat Langkah terperinci: Membuat dan mengelola kunci SSH untuk autentikasi ke VM Linux di Azure.

Ringkasan SSH dan kunci

SSH adalah protokol koneksi terenkripsi yang memungkinkan masuk aman melalui koneksi tidak aman. SSH adalah protokol koneksi default untuk VM Linux yang dihosting di Azure. Meskipun SSH sendiri menyediakan koneksi terenkripsi, menggunakan kata sandi dengan SSH masih membuat VM rentan terhadap serangan brute force. Sebaiknya sambungkan ke VM melalui SSH menggunakan pasangan kunci privat-umum, juga dikenal sebagai kunci SSH.

Pasangan kunci privat-umum seperti kunci di pintu depan Anda. Kunci terbuka untuk umu, siapa saja yang memiliki kunci yang benar dapat membuka pintu. Kuncinya bersifat pribadi, dan hanya diberikan kepada orang yang Anda percayai karena dapat digunakan untuk membuka kunci pintu.

  • Kunci umum ditempatkan di VM Linux saat Anda membuat VM.

  • Kunci privat tetap ada di sistem lokal Anda. Lindungi kunci privat ini. Jangan bagikan.

Saat Anda terhubung ke VM Linux Anda, VM menguji klien SSH untuk memastikannya memiliki kunci privat yang benar. Jika klien memiliki kunci privat, itu diberikan akses ke VM.

Bergantung pada kebijakan keamanan organisasi Anda, Anda dapat menggunakan kembali satu pasangan kunci untuk mengakses beberapa layanan dan VM Azure. Anda tidak memerlukan sepasang kunci terpisah untuk setiap VM.

Kunci umum Anda dapat dibagikan dengan siapa saja, tetapi hanya Anda (atau infrastruktur keamanan lokal Anda) yang memiliki akses ke kunci privat Anda.

Format kunci SSH yang didukung

Azure saat ini mendukung pasangan kunci privat publik RSA protokol 2 (SSH-2) dengan panjang minimum 2048 bit. Format kunci lainnya seperti ED25519 dan ECDSA tidak didukung.

Klien SSH

Versi terbaru Windows 10 menyertakan perintah klien OpenSSH untuk membuat dan menggunakan kunci SSH dan membuat koneksi SSH dari PowerShell atau prompt perintah.

Anda juga dapat menggunakan Bash di Azure Cloud Shell untuk terhubung ke VM Anda. Anda dapat menggunakan Cloud Shell di browser web, dari portal Azure, atau sebagai terminal di Visual Studio Code menggunakan ekstensi Akun Azure.

Anda juga dapat menginstal Subsistem Windows untuk Linux untuk terhubung ke VM Anda melalui SSH dan menggunakan alat Linux asli lainnya di dalam shell Bash.

Membuat pasangan kunci SSH

Cara termudah untuk membuat dan mengelola kunci SSH Anda adalah dengan menggunakan portal untuk membuat dan menyimpannya untuk digunakan kembali.

Anda juga dapat membuat pasangan kunci dengan Azure CLI dengan perintah az sshkey create, seperti yang dijelaskan dalam Membuat dan menyimpan kunci SSH.

Untuk membuat pasangan kunci SSH di komputer lokal Anda menggunakan ssh-keygen perintah dari PowerShell atau prompt perintah, ketik perintah berikut:

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

Masukkan nama file, atau gunakan default yang ditunjukkan dalam tanda kurung (misalnya C:\Users\username/.ssh/id_rsa). Masukkan frasa sandi untuk file, atau biarkan frasa sandi kosong jika Anda tidak ingin menggunakan frasa sandi.

Buat VM menggunakan kunci Anda

Untuk membuat VM Linux yang menggunakan kunci SSH untuk autentikasi, berikan kunci umum SSH Anda saat membuat VM.

Dengan menggunakan Azure CLI, Anda menentukan jalur dan nama file untuk kunci umum menggunakan parameter az vm create dan --ssh-key-value.

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

Dengan PowerShell, gunakan New-AzVM dan tambahkan kunci SSH ke konfigurasi VM menggunakan`. Sebagai contoh, lihat Mulai Cepat: Membuat mesin virtual Linux di Azure dengan PowerShell.

Jika Anda melakukan banyak penyebaran menggunakan portal, Anda mungkin ingin mengunggah kunci publik Anda ke Azure, di mana itu dapat dengan mudah dipilih saat membuat VM dari portal. Untuk informasi selengkapnya, lihat Mengunggah kunci SSH.

Sambungkan ke komputer virtual Anda

Dengan kunci umum yang diterapkan pada Azure VM Anda, dan kunci privat pada sistem lokal Anda, SSH ke VM Anda menggunakan alamat IP atau nama DNS VM Anda. Ganti azureuser dan 10.111.12.123 pada perintah berikut dengan nama pengguna administrator, alamat IP (atau nama domain yang sepenuhnya memenuhi syarat), dan jalur ke kunci privat Anda:

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

Jika Anda belum pernah tersambung ke VM ini sebelum diminta untuk memverifikasi sidik jari host. Sangat menggoda untuk menerima sidik jari yang disajikan, namun, ini mengekspos Anda kepada orang yang mungkin di serangan tengah. Anda harus selalu memvalidasi sidik jari host. Cukup lakukan ini pada saat pertama kali Anda terhubung dari klien. Untuk mendapatkan sidik jari host melalui portal, gunakan Perintah Jalankan dengan perintah berikut: ssh-keygen -lf /etc/ssh/ssh_host_ecdsa_key.pub | awk '{print $2}'.

Cuplikan layar yang ditampilkan menggunakan Run Command untuk memvalidasi sidik jari host.

Untuk menjalankan perintah menggunakan CLI, gunakan perintah az vm run-command invoke.

Jika Anda mengonfigurasi frasa sandi saat membuat pasangan kunci, masukkan frasa sandi saat diminta.

Jika VM menggunakan kebijakan akses tepat waktu, Anda perlu meminta akses sebelum dapat tersambung ke VM. Untuk informasi selengkapnya tentang kebijakan tepat waktu, lihat Mengelola akses komputer virtual menggunakan kebijakan tepat waktu.

Langkah berikutnya