Menggunakan SCP untuk memindahkan file ke dan dari VM
Berlaku untuk: ✔️ mesin virtual Linux ✔️ mesin virtual Windows ✔️ Set skala fleksibel
Artikel ini menunjukkan cara memindahkan file dari workstation Anda ke VM Azure, atau dari VM Azure ke stasiun kerja Anda, menggunakan Salinan Aman (SCP). Memindahkan file antara stasiun kerja Anda dan VM, dengan cepat dan aman, sangat penting untuk mengelola infrastruktur Azure Anda.
Untuk artikel ini, Anda memerlukan VM yang disebarkan di Azure dengan SSH diaktifkan. Anda juga memerlukan klien SCP untuk komputer lokal Anda. Ini dibangun di atas SSH dan disertakan dalam shell default sebagian besar penginstalan Linux dan Windows (10 dan yang lebih baru).
Perintah cepat
Mengunggah file ke VM
scp file azureuser@azurehost:directory/targetfile
Mengunduh file dari VM
scp azureuser@azurehost:directory/file targetfile
Penelusuran terperinci
Sebagai contoh, kami memindahkan file konfigurasi Azure ke VM dan menarik direktori file log ke bawah, keduanya menggunakan SCP.
Autentikasi pasangan kunci SSH
SCP menggunakan SSH untuk lapisan transport. SSH menangani autentikasi pada host tujuan, dan memindahkan file dalam terowongan terenkripsi yang disediakan secara default dengan SSH. Untuk autentikasi SSH, nama pengguna dan kata sandi dapat digunakan. Namun, autentikasi kunci publik dan pribadi SSH direkomendasikan sebagai praktik terbaik keamanan. Setelah SSH mengautentikasi koneksi, SCP kemudian mulai menyalin file. Saat Anda menggunakan kunci publik dan privat SSH yang dikonfigurasi ~/.ssh/config
dengan benar, koneksi SCP dapat dibuat hanya dengan menggunakan nama server (atau alamat IP). Jika Anda hanya memiliki satu kunci SSH, SCP mencarinya di~/.ssh/
direktori, dan menggunakannya secara default untuk masuk ke VM.
Untuk informasi selengkapnya tentang mengonfigurasi ~/.ssh/config
kunci publik dan privat SSH Anda, lihat Membuat kunci SSH.
Mengunggah file ke VM
Untuk contoh pertama, kami menyalin file konfigurasi Azure hingga VM yang digunakan untuk menerapkan otomatisasi. Karena file ini berisi kredensial Azure API, yang mencakup rahasia, keamanan penting. Terowongan terenkripsi yang disediakan oleh SSH melindungi isi file.
Perintah berikut menyalin file .azure/config lokal ke Azure VM dengan FQDN myserver.eastus.cloudapp.azure.com. Jika Anda tidak memiliki set FQDN,Anda juga dapat menggunakan alamat IP VM. Nama pengguna admin di Azure VM adalah azureuser. File ditargetkan ke direktori /home/azureuser/. Ganti nilai Anda sendiri dalam perintah ini.
scp ~/.azure/config azureuser@myserver.eastus.cloudapp.com:/home/azureuser/config
Mengunduh direktori dari VM
Untuk contoh ini, kami menyalin direktori file log dari VM ke stasiun kerja Anda. File log mungkin atau mungkin tidak berisi data sensitif atau rahasia. Namun, menggunakan SCP memastikan konten file log dienkripsi. Direktori log mungkin berisi terlalu banyak file yang relevan untuk disalin satu per satu, jadi mengunduh seluruh direktori lebih disukai dalam situasi ini. Menggunakan SCP untuk mentransfer file adalah cara termudah untuk mendapatkan direktori log dan file ke stasiun kerja Anda sambil tetap aman.
Perintah berikut menyalin file di direktori /home/azureuser/logs/ pada Azure VM ke direktori lokal /tmp:
scp -r azureuser@myserver.eastus.cloudapp.com:/home/azureuser/logs/. /tmp/
Bendera -r
menginstruksikan SCP untuk menyalin file dan direktori secara rekursif dari titik direktori yang tercantum dalam perintah. Perhatikan juga bahwa sintaks baris perintah mirip dengan perintah salin cp
.