SCP (Secure Copy) dan SFTP (Secure File Transfer Program) merupakan alternatif dari FTP (File Transfer Protocol) yang berguna untuk transfer file. Ketiganya dapat membantu memindahkan file dari satu lokasi ke lokasi lain melalui media jaringan. Namun FTP mengirimkan data dalam teks biasa, sedangkan dua lainnya menggunakan SSH File Transfer Protocol (SFTP) untuk komunikasi.
Apa itu SCP?
SCP adalah program transfer file non-interaktif yang pertama kali muncul di 4.2 BSD. Secara historis, ia menggunakan rlogin dan SSH untuk mengirimkan file antara dua komputer. Hal ini membuatnya rentan terhadap eksploitasi jarak jauh karena ia menjalankan perintah pada host jarak jauh untuk memulai transfer data.
Transfer file dan direktori di SCP dapat dilakukan antara mesin lokal dan host jarak jauh atau dua host jarak jauh. Hal ini memungkinkannya menjadi lebih fleksibel ketika bekerja dengan distribusi mirip UNIX yang berbeda.
SCP juga dapat digunakan dengan karakter wildcard untuk membantu mentransfer banyak file berdasarkan kriteria string parsial. Mirip dengan transfer langsung, wildcard ini juga dapat digunakan untuk mengirim dan menerima file dan direktori.
Apa itu SFTP?
Tidak seperti SCP, SFTP adalah program transfer file yang bekerja mirip dengan prompt FTP dan shell jarak jauh. Ini memberikan prompt interaktif yang memungkinkan menavigasi sistem file mesin jarak jauh dan memanipulasi isinya.
SFTP juga menggunakan beberapa fitur SSH, seperti kompresi atau otentikasi kunci publik untuk terhubung ke host dan masuk ke mode interaktif. Hal ini menjadikannya browser sistem file jarak jauh yang tangguh untuk mesin UNIX tanpa kepala.
SFTP juga dapat digunakan untuk mengambil file secara otomatis jika menggunakan metode otentikasi non-interaktif, jika tidak, ia akan mengambilnya setelah otentikasi interaktif berhasil.
Catatan: SFTP bukanlah FTP melalui SSH tetapi merupakan protokol yang sama sekali baru.
Mana yang Lebih Baik Antara SCP vs SFTP
Ada beberapa kesamaan antara kedua program transfer file. Keduanya menggunakan TCP port 22 dan berjalan di SSH sehingga setara dalam hal keamanan. Selain itu, kedua program juga mendukung transfer file besar karena tidak memiliki batasan ukuran file. Oleh karena itu, perbedaan utama antara SCP dan SFTP dapat dilihat pada spesifikasi dan fungsinya.
Kegunaan
Pada intinya, tujuan dasar SCP adalah menyalin data secara aman antara dua mesin. Hal ini terlihat pada sintaks dasar program yang mengharuskan kita menyediakan sumber dan tujuan untuk setiap transfer file. Hal ini membuatnya lebih mudah digunakan untuk transfer file satu kali yang sederhana.
Sementara itu, SFTP adalah klien transfer file yang lebih lengkap yang menyediakan browser file beserta unduhan multi-file. Fitur-fitur ini menjadikan SFTP ideal bagi pengguna yang perlu terus-menerus mentransfer file ke dan dari host jarak jauh.
Pemenang : SFTP
Perlu diketahui: SCP dan SFTP bukan satu-satunya yang dapat berbagi file melalui internet. Pelajari cara membuat drive cloud sendiri menggunakan ownCloud.
Kecepatan
Karena SCP dan SFTP menggunakan protokol SFTP untuk mengenkripsi dan mengangkut file, kedua program berbagi kecepatan transfer yang sama saat mengirim atau menerima data. Namun memulai transfer itu adalah cerita yang berbeda.
SCP seringkali lebih cepat dalam mencapai kecepatan transfer maksimum suatu koneksi sementara SFTP tertinggal saat mencoba meningkatkan kecepatannya. Selanjutnya, memulai transfer SFTP juga mengharuskan masuk ke prompt dan menggunakan perintah FTP untuk mengunggah dan mengunduh file.
Pemenang : SCP
Keamanan
Baik SCP maupun SFTP mengandalkan protokol SSH untuk lapisan transport dasarnya. Hal ini memungkinkan mereka mentransfer data dengan aman melalui jaringan menggunakan enkripsi tingkat militer.
Meskipun demikian, SFTP menyingkirkan SCP dengan menyediakan flag -f yang memungkinkan kita untuk segera menulis data apa pun yang ditransfer ke disk. Tidak hanya itu, antarmuka baris perintahnya juga menyediakan sejumlah utilitas yang memungkinkan memperbarui bit izin file.
Pemenang : SFTP
Ukuran file
Kebanyakan versi modern SCP dan SFTP di Linux adalah biner 64-bit. Ini berarti bahwa kedua utilitas secara hipotetis dapat mendukung hingga 16 Exabytes data arbitrer selama sistem file yang mendasarinya juga mendukungnya.
Meskipun demikian, SCP masih dapat menimbulkan beberapa masalah dengan file besar terutama ketika bekerja dengan mesin mirip UNIX yang lebih lama. Hal ini sebagian besar disebabkan oleh sistem yang menjalankan SCP versi 32-bit yang hanya dapat menangani file senilai hingga 4 Gigabytes dalam satu waktu.
Pemenang : SFTP
Baris Perintah
SCP bersifat non-interaktif dan tidak dapat membaca skrip perintah, jadi semuanya harus ditulis pada baris perintah. Namun ini juga memungkinkannya dijalankan sebagai bagian dari skrip shell yang lebih besar yang dapat membantu ketika mengotomatiskan tugas-tugas administrasi sistem.
SFTP sebaliknya bersifat interaktif sehingga dapat membaca perintah dari file. Meskipun ini juga berguna untuk otomatisasi, ini bisa menjadi lebih aneh karena memerlukan serangkaian perintah yang berbeda dari skrip shell biasa.
Pemenang : SCP
Mana yang Harus Digunakan untuk Transfer File
Meskipun keduanya memiliki persamaan dan perbedaan, mengatakan bahwa yang satu lebih baik dari yang lain tidaklah adil. Keduanya mentransfer file dan memiliki fitur keamanan serupa saat dijalankan di SSH. Pada akhirnya, utilitas yang dipilih akan didasarkan pada apa yang terbaik untuk kebutuhan lingkungan.
Gunakan SCP Untuk
- Saat ingin mentransfer satu file atau direktori antara dua host jarak jauh.
- Saat ingin mengotomatiskan transfer data melalui jaringan.
- Saat bekerja dengan sistem mirip UNIX lama tanpa dukungan SFTP.
Gunakan SFTP Untuk
- Saat mentransfer banyak file ke beberapa direktori dari satu host jarak jauh.
- Saat ingin berinteraksi dengan sistem file host jarak jauh tanpa membuka sesi SSH baru.
- Bila menginginkan program transfer file yang andal yang dapat bekerja bahkan dalam kondisi jaringan yang terputus-putus.
Oleh karena itu, pengiriman data antara dua sistem hanyalah langkah pertama dalam memahami bagaimana komputer berkomunikasi melalui jaringan.