diskon 50% semua paket, waktu terbatas. Mulai dari $2.48/mo
12 menit tersisa
Servidor & Sistem Operasi

SCP dari Remote ke Lokal – Perintah SCP Linux

Ada Lovegood By Ada Lovegood 12 menit baca
scp dari remote ke lokal

Pernahkah kamu ingin mentransfer file antar komputer dalam satu jaringan, lalu menghadapi masalah keamanan? Kamu tidak bisa begitu saja melempar file ke jaringan dan berharap semuanya aman, seperti Little Red Riding Hood! Kamu butuh langkah-langkah keamanan yang tepat. Gunakan protokol transfer file yang memastikan datamu terlindungi dari akses tidak sah, sniffing jaringan, kebocoran data, dan berbagai ancaman lainnya.

Secure Copy Protocol (SCP) adalah protokol jaringan transfer file yang andal untuk memindahkan file antar mesin dalam satu jaringan. Dalam artikel ini, kita akan berkenalan lebih jauh dengan protokol ini dan mengeksplorasi cara menggunakan SCP dari mesin remote ke mesin lokal.

Bagaimana SCP Bekerja? 

SCP menggunakan SSH (Secure Shell) untuk mentransfer file Anda. Tapi apa artinya ini? SSH adalah protokol jaringan untuk akses remote ke server secara aman dan terenkripsi. Protokol ini dilengkapi dengan mekanisme autentikasi, enkripsi, dan verifikasi integritas data yang dikirimkan. SCP mengandalkan fitur keamanan dan metode enkripsi dari SSH untuk mentransfer file melalui jaringan dengan aman. Dengan cara ini, Anda dapat menggunakan SCP dari remote ke server lokal untuk koneksi dan transfer file yang aman, sekaligus memastikan keaslian dan kerahasiaan data Anda.

Menggunakan SCP untuk Transfer File: Mengapa dan Bagaimana Caranya? 

Menggunakan SCP dari remote ke lokal maupun dari lokal ke remote adalah cara yang efisien dan fleksibel untuk mentransfer file. SCP menawarkan beberapa keunggulan penting dibanding metode transfer file lainnya. Misalnya, SCP memiliki langkah-langkah keamanan yang lebih ketat dibandingkan protokol seperti FTP. Selain keamanan, SCP juga unggul dalam hal kecepatan. SCP biasanya jauh lebih cepat dari protokol lain seperti SFTP, dan merupakan alat yang andal untuk transfer file antar mesin Linux.

Anda dapat memindahkan file dengan SCP:

  • Dari mesin lokal ke mesin remote
  • Dari mesin remote ke mesin lokal
  • Dari mesin remote ke mesin remote lainnya.

Sekarang, mari kita langsung ke penggunaan sintaks SCP Linux untuk transfer file. Langkah pertama adalah menginstal SSH di kedua komputer Anda. Perlu diketahui bahwa SSH biasanya sudah terinstal di semua mesin Linux. Jika itu sudah terpasang di sistem Anda, Anda bisa melewati langkah-langkah ini.

1. Menyiapkan SSH

Jalankan perintah berikut untuk menginstal SSH:

sudo apt install openssh-client

2. Membuat key SSH

Perangkat klien kemudian harus membuat koneksi SSH. Untuk membangun koneksi aman antara mesin klien dan server, dibutuhkan private key dan public key. Perintah ini akan membuat pasangan kunci SSH untuk Anda:

ssh-keygen

Saat menjalankan perintah ini, Anda kemungkinan akan diminta memberikan nama untuk pasangan kunci dan sebuah passphrase (ini opsional). Setelah pasangan kunci dibuat, Anda harus menyalin public key ke mesin server.

Sekarang, mari kita lihat bentuk umum dari perintah SCP:

scp [options] [source username@IP]:/[directory/file name] [destination username@IP]:/[directory]
  • [options] > Tanda kurung pertama ini dapat diganti dengan berbagai opsi perintah SCP yang akan kita bahas nanti.
  • [source username@IP] > Ganti bagian ini dengan username dan alamat IP mesin lokal Anda. Contoh: [email protected]
  • [directory/file name] > Ganti bagian ini dengan lokasi file yang ingin Anda kirim.
  • [destination username@IP] > Ganti bagian ini dengan username dan alamat IP mesin tujuan.
  • [directory] > Ganti bagian ini dengan lokasi tujuan file Anda di mesin remote.

Sekarang Anda sudah tahu struktur umum perintahnya. Mari kita bahas semua opsi yang tersedia pada perintah SCP:

Opsi Kasus penggunaan
-C
Opsi ini membuat SCP mengompresi file selama proses transfer.
-c <cipher>
Gunakan opsi ini untuk menentukan cipher tertentu. Contoh: scp -c <aes128-ctr>.
-v
Opsi ini menampilkan proses transfer secara langkah demi langkah.
-l <limit in kilobytes>
Opsi ini memungkinkan Anda membatasi penggunaan bandwidth maksimum. Contoh berikut membatasi bandwidth pada 100 kb per detik: scp -l 100
-P
Gunakan opsi ini untuk mengubah port SSH pada server remote yang ingin Anda hubungi. Secara default, SCP menggunakan port 22.
-S <nama program>
Gunakan opsi ini untuk memilih program koneksi yang diinginkan.
-r
Menyalin seluruh file atau direktori secara rekursif.

Mentransfer File dengan SCP 

Ingat, ada tiga jenis transfer dengan SCP. Sekarang kita akan membahas masing-masing secara terpisah. Tapi sebelum mulai, mari tentukan skenarionya. Saya memiliki foto kucing di desktop komputer Linux saya. Pertama, saya akan mentransfernya ke server remote Linux. Lalu saya akan memindahkannya kembali ke komputer lokal. Dan terakhir, sang kucing beruntung ini akan berpindah di antara dua mesin remote.

mentransfer gambar menggunakan scp

SCP dari Lokal ke Remote 

Gunakan perintah ini untuk mentransfer file dari komputer lokal ke server remote:

scp [path/to/the/file] [Username]@[IP address]:[path/to/the/location]

Saat menggunakan perintah scp dengan password, masukkan password server remote Anda. Setelah itu, transfer selesai.

Menggunakan SCP untuk mentransfer file dari lokal ke remote

SCP dari Remote ke Lokal

Untuk membalik prosesnya, Anda tidak perlu mengakses terminal server remote. Cukup ketik perintah ini di terminal komputer lokal Anda:

scp [username]@[IP address of the remote machine]:[path/to/the/file] [path/to/the/location]

Seperti yang terlihat, kita hanya menukar posisi dua bagian pada perintah tersebut.

Menggunakan SCP untuk mentransfer file dari remote ke lokal

SCP antara Dua Mesin Remote

Sekarang, mari pindahkan kucing tersebut di antara dua mesin remote. Langkah ini membutuhkan password dari kedua mesin remote, jadi pastikan Anda sudah menyiapkannya. Gunakan perintah ini untuk mentransfer file antara dua komputer remote:

scp [username of the 1st remote machine]@[IP address of the 1st remote machine]:[path/to/the/file] [username of the 2nd remote machine]@[IP address of the 2nd remote machine]:/[path/to/location]

menggunakan scp untuk mentransfer file antara dua sistem remote

Perintah SCP Umum Lainnya

Perintah SCP yang paling umum digunakan adalah scp dari remote ke lokal, scp dari lokal ke remote, dan SCP antara dua host remote. Tapi jangan berhenti di situ, mari kita jelajahi beberapa contoh scp Linux lainnya yang berguna.

1. Menyalin Seluruh Direktori Secara Rekursif

Bayangkan Anda ingin mentransfer seluruh direktori beserta semua file di dalamnya. Memindahkan file satu per satu tentu akan memakan banyak waktu. Sebagai gantinya, gunakan perintah scp untuk menyalin direktori secara rekursif:

scp -r [Path/to/directory] [username of the remote server]@[Ip address]:/[path/to/the/location]

Ini bisa berguna untuk berbagai skenario:

  • Penyebaran Kode: Saat men-deploy kode atau aplikasi web, kamu mungkin perlu mentransfer seluruh direktori beserta semua komponennya seperti file dan skrip.
  • Backup dan Sinkronisasi: Jika kamu ingin membuat backup dari seluruh direktori, atau ingin menyinkronkan dua direktori antara mesin lokal dan server remote, kamu perlu menyalin semuanya secara rekursif.
  • Migrasi Sistem: Menyalin dan memindahkan setiap data penting adalah langkah krusial dalam migrasi sistem. Menggunakan perintah SCP dengan opsi -r memastikan tidak ada yang terlewat dalam proses pemindahan.

2. Membatasi Penggunaan Bandwidth

Jika kamu ingin mengontrol kecepatan transfer data, gunakan perintah berikut:

scp -l <limit> [path/to/the/file] [Username]@[IP address]:[path/to/the/location]

Tapi kenapa perlu melakukan itu?
Dalam dua skenario ini, kamu bisa menggunakan sintaks scp Linux untuk membatasi bandwidth:

  • Kemacetan Jaringan: Jika jaringanmu sangat padat, membatasi bandwidth dengan scp dapat membantu distribusi sumber daya jaringan. Pembatasan bandwidth dengan SCP memastikan tugas-tugas lain yang bergantung pada jaringan tetap berjalan lancar. Hal ini juga penting saat mentransfer file melalui jaringan bersama, agar prosesmu tidak mengganggu aktivitas jaringan pengguna lain.
  • Transfer Latar Belakang: Saat SCP berjalan di latar belakang, seperti pada proses backup otomatis atau sinkronisasi, ada kemungkinan proses tersebut akan menghabiskan sumber daya jaringanmu. Dalam kasus ini, kamu bisa membatasi bandwidth pada proses transfer tersebut agar pengelolaan sumber daya lebih efisien.

3. Melihat Log Lengkap

Menggunakan opsi -v dengan SCP akan memberikan log terperinci tentang proses transfer. Gunakan perintah di bawah ini untuk mendapatkan informasi dan umpan balik yang lengkap:

scp -v [path/to/the/file] [Username]@[IP address]:[path/to/the/location]

Ini alasan kenapa kamu perlu mengingat dan menggunakan perintah ini:

  • Pemecahan Masalah: Opsi ini menampilkan progres transfer secara real-time. Kamu bisa melihat informasi seperti ukuran file dan persentase penyelesaian. Opsi ini juga menampilkan pesan error dan peringatan. Kombinasi data ini memungkinkan kamu memantau dan memecahkan masalah pada proses transfer saat diperlukan.

4. Menentukan Port SSH

Menggunakan sintaks scp Linux dengan opsi -P memungkinkan kamu untuk mengubah port SSH. Berikut perintah yang digunakan:

scp -P [port number] [path/to/the/file] [Username]@[IP address]:[path/to/the/location]

Ini berguna untuk:

  • Konfigurasi Firewall: Jika port SSH default diblokir, atau jika kamu ingin menyembunyikan layanan SSH dari ancaman yang ada, kamu bisa mengganti port SSH.

Apakah Ada Alternatif untuk SCP?

SCP cepat dan aman. Dengan menguasai sintaks scp Linux yang tepat dan sedikit pengetahuan troubleshooting, SCP bisa menjadi satu-satunya alat yang kamu butuhkan. Namun, tidak ada salahnya mengenal alternatifnya.

1. rsync

rsync adalah alat transfer file serbaguna dengan kemampuan sinkronisasi canggih, transfer inkremental, serta penyalinan lokal dan remote. rsync juga dapat mengurangi penggunaan bandwidth dengan hanya mentransfer bagian yang berubah antara file sumber dan tujuan. Keunggulan lain dari rsync adalah kemampuannya untuk melanjutkan transfer file yang terputus dari titik terakhir.

Keuntungan rsync

  • Sinkronisasi file dan direktori yang efisien.
  • Mendukung algoritma delta-transfer, sehingga mengurangi jumlah data yang ditransfer.
  • Dapat melanjutkan transfer yang terputus.

rsync Kontra

  • Memerlukan rsync yang terpasang di sistem sumber maupun tujuan.
  • Memerlukan lebih banyak konfigurasi dan opsi perintah dibandingkan scp.

2. SFTP (Protokol Transfer File SSH)

SFTP menyediakan cara yang aman untuk mentransfer file melalui SSH. Fungsinya mirip dengan FTP, tetapi beroperasi melalui koneksi SSH yang terenkripsi, sama seperti SCP. Namun di beberapa aspek, keunggulan SFTP melampaui SCP. SCP tidak dapat menampilkan daftar direktori, membuat atau menghapus direktori, dan sebagainya. SFTP sebaliknya, mampu menjalankan semua tugas tersebut.

Kelebihan SFTP

  • Transfer file aman dengan enkripsi.
  • Kemampuan manajemen file jarak jauh.
  • Tersedia luas di sebagian besar sistem Linux dan Unix.

Kekurangan SFTP

  • Sintaks perintah dan cara penggunaannya berbeda dari FTP tradisional.
  • Dukungan mungkin terbatas pada sistem tertanam atau perangkat tertentu.

3. FTP (Protokol Transfer File)

FTP adalah protokol standar yang banyak digunakan untuk transfer file. Protokol ini bekerja dengan model klien-server dan menyediakan fungsi transfer file dasar.

Keuntungan FTP

  • Didukung luas di berbagai platform.
  • Klien berbasis baris perintah maupun antarmuka grafis tersedia dan sudah familiar.

Kelemahan FTP

  • Tidak memiliki enkripsi - kurang aman dibandingkan scp dan sftp.
  • Mungkin memerlukan konfigurasi firewall tambahan untuk membangun koneksi.
  • Autentikasi teks biasa.

Secara keseluruhan, meskipun scp adalah pilihan yang sederhana dan andal untuk transfer file aman melalui SSH, alternatif seperti rsync, sftp, dan FTP dapat menawarkan fitur dan fleksibilitas tambahan tergantung pada kebutuhan spesifik Anda.
Lalu bagaimana cara memilih yang tepat? Pertimbangkan faktor-faktor seperti keamanan, kebutuhan sinkronisasi, kemudahan penggunaan, dan kompatibilitas dengan sistem serta protokol Anda. Misalnya, jika keamanan dan kerahasiaan data adalah faktor terpenting dalam transfer file Anda, maka FTP bukan pilihan yang tepat.

Kesimpulan 

SCP adalah alat yang cepat dan aman untuk transfer file antar komputer. Anda dapat menggunakan scp dari remote ke lokal, dari lokal ke remote, bahkan antara dua sistem remote sekaligus. Meskipun ada alternatif SCP yang cukup memadai, seperti rsync, SCP tetap unggul dalam banyak hal - terutama dari sisi keamanan dan kecepatan. Dalam artikel ini, kami membahas SCP, kasus penggunaannya, dan berbagai alternatifnya, serta menyediakan cheat sheet untuk akses cepat ke sintaks yang sering digunakan.

Pertanyaan yang Sering Diajukan 

Apakah ada masalah keamanan yang perlu saya perhatikan saat menggunakan SCP dari remote ke lokal?  

SCP adalah alat yang cukup aman, dan Anda tidak perlu khawatir tentang ancaman keamanan saat menggunakannya. Namun, selalu disarankan untuk menerapkan langkah-langkah keamanan tambahan sebisa mungkin.

Apa saja error umum yang muncul saat menggunakan SCP remote ke lokal? 

Saat menggunakan SCP untuk mentransfer file dari server remote ke mesin lokal, pengguna mungkin menemui beberapa error umum. Berikut dua error paling umum saat menggunakan SCP remote ke lokal:

  1. No such file or directory: error ini terjadi ketika Anda tidak menentukan nomor port yang benar, pengaturan izin file tidak tepat, atau informasi login salah.
  2. Host Key Verification Failed: pesan error ini muncul ketika host key berubah akibat pembaruan server. Host key menunjukkan bahwa Anda pernah terhubung ke server tersebut sebelumnya, dan ketika verifikasi host key gagal, itu berarti identitas server telah berubah. Error ini hadir untuk melindungi Anda dari terhubung ke server palsu.

Bagaimana cara menggunakan SCP untuk mentransfer file antar sistem remote?

Agar transfer file antar sistem menggunakan SCP berhasil, kedua komputer harus dapat diakses melalui SSH. Anda juga memerlukan alamat IP dan kata sandi dari mesin remote. Selanjutnya, cukup gunakan perintah SCP yang tepat:

scp [username of the 1st remote machine]@[IP address of the 1st remote machine]:[path/to/the/file] [username of the 2nd remote machine]@[IP address of the 2nd remote machine]:/[path/to/location]

Setelah mengetik perintah ini, Anda akan diminta memasukkan kata sandi server. Setelah itu, file Anda akan ditransfer.

Bagikan

Artikel lainnya dari blog

Terus baca.

Gambar sampul Best Self-Hosted Apps You Can Run with Cosmos Cloud dengan panel aplikasi di sekitar dashboard Cosmos.
Servidor & Sistem Operasi

Aplikasi Self-Hosted Terbaik yang Bisa Anda Jalankan dengan Cosmos Cloud: File, Media, Password, Otomasi, dan Lainnya!

Maybe Anda sudah menyiapkan Cosmos Cloud dan ingin tahu aplikasi apa yang cocok digunakan bersamanya, atau mungkin Anda belum memutuskan untuk pakai Cosmos dan hanya ingin melihat seberapa baik ia cocok dengan alur kerja Anda

Nick SilverNick Silver bacaan 16 menit
Portainer vs Cosmos Cloud untuk Mengelola Aplikasi Docker, dengan diagram setup hybrid dan blok ops vs akses berneon.
Servidor & Sistem Operasi

Portainer vs Cosmos Cloud: Pilihan Terbaik untuk Manajemen Aplikasi Docker

Jika Anda sudah mengenal Docker dan ingin cara yang lebih rapi untuk menjalankan tumpukan aplikasi yang terus berkembang, ini jawaban singkat soal Portainer vs Cosmos Cloud. Portainer adalah pilihan yang lebih kuat untuk peng

Nick SilverNick Silver 14 menit baca
Grafik fitur Cosmos Cloud vs CasaOS vs Umbrel yang menampilkan tiga jalur self-hosted dalam satu jaringan cloud abstrak.
Servidor & Sistem Operasi

Cosmos Cloud vs CasaOS vs Umbrel: Platform Self-Hosted Mana yang Cocok untuk Setup Anda?

Singkatnya, CasaOS masih menjadi tempat termudah untuk memulai, Umbrel menawarkan tampilan yang paling rapi dan terkurasi, sedangkan Cosmos Cloud lebih masuk akal ketika Anda menginginkan kendali lebih ketat atas doma

Nick SilverNick Silver 11 menit baca

Siap untuk di-deploy? Mulai dari $2.48/bulan.

Cloud independen, sejak 2008. AMD EPYC, NVMe, 40 Gbps. Garansi uang kembali 14 hari.