December 3, 2020
5min Read
Nadia A.
Memindahkan file secara aman sangatlah penting ketika menggunakan VPS. Untungnya proses transfer file ini bisa dilakukan secara mudah dengan menggunakan perintah SCP atau SCP command. Pada artikel ini, kami akan membahas kegunaan perintah SCP Linux.
Sebetulnya, apa saja perintah SCP? Berdasarkan Berkeley Software Distribution (BSD) Remote Copy Protocol (RCP), SCP (secure Copy) adalah sebuah file network transfer protocol yang mempermudah serta mengamankan proses transfer file antara remote dan local host.
Full-stack developer sering menggunakan perintah SCP untuk mengaktifkan fitur autentikasi dan enkripsi tanpa memerlukan layanan hosting pihak ketiga, seperti Github. Cara ini merupakan yang termudah untuk mengamankan data Anda dari tindakan packet sniffing, serta menjaga kerahasiaannya.
Pada dasarnya, SCP merupakan gabungan dari RCP dan SSH (secure Shell). SCP mengandalkan RCP untuk melakukan penyalinan file, dan SSH untuk mengenkripsi informasi dan mengautentikasi sistem remote.
Tidak seperti Rsync, untuk menggunakan perintah SCP, Anda hanya perlu membuat username dan password atau passphrase bagi sistem yang berperan dalam proses pemindahan file. Cara ini mempermudah proses pemindahan karena Anda tidak perlu login untuk melakukannya.
Di Hostinger, kami menyediakan VPS hosting terbaik dengan harga terjangkau dan fitur lengkap! Nikmati manajemen yang mudah dan bantuan yang tersedia setiap saat!
Daftar Isi
Berikut contoh perintah SCP dasar:
scp [other options] [source username@IP]:/[directory and file name] [destination username@IP]:/[destination directory]
Perintah ini mungkin terlihat membingungkan, tapi dengan senang hati kami akan menjelaskannya untuk Anda!
Pada contoh di bawah ini, kami melakukan pemindahan file antara dua server VPS.
Dalam skenario yang sebenarnya, tampilannya akan terlihat seperti berikut:
scp -p root@162.168.1.1:/media/scp.png edward@162.168.1.2:/desktop/destination
Cukup sederhana, kan? Jika menyalin ke, atau dari perangkat lokal, Anda tidak perlu menambahkan alamat IP dan destinasi atau source path seperti /desktop/folder_name.
Selanjutnya, kami akan membahas tentang opsi lain yang dapat Anda gunakan untuk memodifikasi perintah SCP. Ada 20 alternatif yang dapat Anda gunakan baik pada single character form (-o), maupun descriptive equivalent (-option). Opsi-opsi tersebut adalah:
Karena SCP menggunakan enkripsi SSH, Anda akan memerlukan kata sandi SSH agar dapat memindahkan file. Terlebih lagi, Anda harus meminta izin (permission) untuk mengakses perangkat yang ingin disalin filenya dan membuat perintah akses pada perangkat yang dituju agar Anda dapat memindahkan filenya.
Untuk autentikasi dan konfigurasi koneksi, Anda harus membuat SSH key pada terminal dengan menggunakan command berikut:
ssh-keygen -t rsa
Anda dapat menyalin key ini ke sistem remote menggunakan command:
ssh-copy-id user@remote_machine
Setelah Anda mendapat autentikasi pada perangkat remote, public key akan tersalin dan proses transfer file siap dimulai.
Jika Anda tidak ingat root password salah satu sistem, Anda dapat memanfaatkan SSH client untuk memilih file di mana private identity key untuk konfirmasi RSA terbaca secara otomatis.
Untuk protokol versi 2, identity path default dari host key adalah ~/.ssh /id_dsa, sedangkan untuk protokol versi 1 adalah ~/.ssh /id_rsa. Setelah itu, cari di mana backup private key dan public key disimpan sehingga Anda dapat mengaplikasikan command SSH untuk menggunakan kedua key tersebut secara otomatis.
Untuk path /back-up/home/jack/.ssh, commandnya adalah:
ssh -i /back-up/home/user/.ssh/id_dsa user@yourserver.servername.domain
Pro tip: opsi ini memiliki value default –overwrite [yes], kecuali jika Anda memilih opsi –overwrite no atau –overwrite ask dalam perintah SCP, operasi ini akan menimpa file-file yang memiliki nama dan lokasi yang sama tanpa peringatan.
Jika Anda mentransfer file besar, kami sarankan untuk menggunakan sesi tmux atau menjalankan command pada layar yang berbeda. Selain itu, Anda juga harus menggunakan opsi –v untuk transfer file besar. Perintah tersebut akan memaksa SCP untuk menampilkan koneksi debug, otentikasi, atau masalah konfigurasi.
Bagian terbaik dari SCP adalah kemampuannya dalam memberikan fleksibilitas untuk memindahkan file antara dua host, atau antara host dengan perangkat lokal. Di bawah ini merupakan ulasan bagaimana command-command digunakan untuk tiap proses pemindahan file.
Kami akan menyalin file lokal scp.zip ke perangkat remote user bernama root. Username pada command diikuti oleh alamat IP server.
Contoh:
scp /users/Edward/desktop/scp.zip root@191.162.0.2:/writing/article
Jika Anda tidak mengaktifkan konfirmasi otomatis untuk SSH client, maka Anda harus memasukkan kata sandi dari user perangkat remote dan progress meter pun akan muncul. Progress meter akan terlihat seperti ini:
root@191.162.0.2’s password: novel3.zip 100% 0 0.0KB/s 00:00
Tetapi katakanlah perangkat remote diatur untuk mematuhi koneksi SSH pada port selain dari port default 22. Dalam hal ini, Anda harus spesifikasikan port tersebut menggunakan opsi sebagai berikut:
scp -P 2322 /users/Edward/desktop/scp.zip root@191.162.0.2:/writing/article
Jika Anda juga ingin mengubah nama file saat prosesi transfer berlangsung, maka perintahnya akan terlihat seperti ini (jika port Anda bukan yang default, cukup tambahkan –P dan nomor port):
scp /users/Edward/desktop/scp.zip root@191.162.0.2:/writing/article/howtoscp.zip
Jika Anda ingin menyalin direktori yang memiliki lebih banyak file dan/atau subdirektori, gunakan baris perintah –r yang kami jelaskan sebelumnya.
scp -r /users/Edward/desktop root@191.162.0.2:/writing/article
Pada proses ini, source dan target dari command scp di-reserve, dan harus direfleksikan pada syntax Anda . Kali ini, kami akan coba untuk menyalin scp.zip dari remote host yang sama ke perangkat lokal:
scp root@191.162.0.2:/writing/articles/SCP.zip Users/Edward/Desktop
Lagi, masukkan informasi SSH login yang sama kecuali fitur autentikasi dinonaktifkan oleh perintah sudo, atau Anda memaksakan SSH client untuk menggunakan private key di perangkat.
Untuk menyalin file dari satu remote host ke remote host yang lain, Anda harus memasukkan password untuk kedua akun host setelah command dijalankan di terminal.
Contoh:
scp root@191.162.0.2:/writing/article/scp.zip edward@11.10.0.1:/publishing
Command di atas menyalin source file /writing/article/scp.zip dari host pertama ke host kedua. Untuk menyalin folder, cukup tambahkan opsi -r dan spesifikasikan path folder, seperti yang telah dilakukan sebelumnya.
Dalam keadaan normal, file berpindah langsung dari remote host pertama ke remote host kedua. Namun, jika Anda ingin mengatur ulang rute operasi melalui perangkat, tambahkan opsi -3:
scp -3 root@191.162.0.2:/writing/article/scp.zip edward@11.10.0.1:/publishing
Selesai!
Pada artikel ini, Anda telah mempelajari cara mudah mentransfer file antara remote host dan local host dengan menggunakan SCP command. Pemindahan file dengan SCP command sangat berguna ketika Anda mengelola banyak server. Protokol penyalinan yang aman mempermudah Anda dalam menyalin informasi dari satu remote host ke remote host yang lain tanpa perlu login.
Terlebih lagi, cara transfer file remote ini mengenkripsi data dengan secure shell, yang akan memastikan kerahasiaan informasi saat proses transfer berlangsung.
Ketik balasan