Apa Itu Secure Copy Protocol (SCP)?
Secure Copy Protocol (SCP) adalah protokol jaringan yang digunakan untuk mentransfer file dan direktori secara aman antara komputer lokal dan server remote melalui koneksi Secure Shell (SSH).
SCP memanfaatkan mekanisme enkripsi SSH sehingga seluruh data yang dikirim terlindungi dari penyadapan, manipulasi, maupun akses tidak sah selama proses transfer berlangsung.
Karena kemudahan penggunaan dan tingkat keamanannya yang tinggi, SCP menjadi salah satu metode transfer file yang paling banyak digunakan oleh administrator sistem, DevOps engineer, dan pengembang aplikasi.
Mengapa Menggunakan SCP?
Sebelum SCP populer, banyak administrator menggunakan FTP untuk memindahkan file antar server. Namun FTP mengirimkan data, termasuk username dan password, dalam bentuk plaintext sehingga rentan terhadap serangan.
SCP mengatasi masalah tersebut dengan:
- Mengenkripsi seluruh koneksi menggunakan SSH
- Mendukung autentikasi berbasis password maupun SSH key
- Tidak memerlukan port tambahan selain SSH (default port 22)
- Tersedia secara bawaan di sebagian besar distribusi Linux dan Unix
Cara Kerja SCP
SCP bekerja di atas protokol SSH.
Alur sederhananya adalah:
- Client membuka koneksi SSH ke server tujuan.
- Proses autentikasi dilakukan.
- Saluran komunikasi terenkripsi dibuat.
- File atau direktori ditransfer melalui kanal SSH tersebut.
- Koneksi ditutup setelah transfer selesai.
Dengan pendekatan ini, data tetap aman bahkan ketika melewati jaringan publik seperti internet.
Perintah Dasar SCP
Format umum perintah SCP adalah:
scp [options] source destination Contoh:
scp file.txt user@192.168.1.2:/home/user/ File file.txt akan dikirim ke direktori /home/user/ pada server remote.
Mengunduh File dari Server:
scp user@192.168.1.2:/backup/backup.sql . Perintah tersebut mengunduh file dari server ke direktori lokal saat ini.
Menggunakan Port SSH Kustom:
scp -P 2222 file.txt user@192.168.1.2:/data/ Perhatikan bahwa SCP menggunakan huruf kapital -P untuk menentukan port.
Menyalin Direktori Secara Rekursif:
scp -r website/ user@192.168.1.2:/var/www/ Opsi -r digunakan untuk menyalin seluruh isi direktori.
Menggunakan SSH Private Key:
scp -i ~/.ssh/id_rsa file.txt user@192.168.1.2:/data/ Metode ini umum digunakan dalam otomatisasi dan CI/CD pipeline.
Transfer Antar Dua Server Remote:
scp user@192.168.1.2:/backup/db.sql \
user@192.168.1.3:/backup/ SCP juga dapat mentransfer file langsung antar server tanpa menyimpannya terlebih dahulu di komputer lokal.
Opsi SCP yang Sering Digunakan
| Opsi | Fungsi |
|---|---|
| -r | Menyalin direktori secara rekursif |
| -P | Menentukan port SSH |
| -i | Menggunakan private key tertentu |
| -p | Mempertahankan timestamp dan permission file |
| -C | Mengaktifkan kompresi |
| -v | Menampilkan informasi debugging |
| -q | Mode senyap (quiet) |
| -l | Membatasi bandwidth transfer |
Contoh penggunaan kompresi:
scp -C backup.tar.gz user@192.168.1.2:/backup/ Kelebihan Secure Copy Protocol
1. Aman dan Terenkripsi
Seluruh data ditransmisikan melalui SSH sehingga tidak dapat dibaca pihak ketiga.
2. Mudah Digunakan
Tidak memerlukan konfigurasi tambahan apabila SSH sudah tersedia.
3. Kompatibel dengan Berbagai Sistem
Didukung oleh Linux, Unix, macOS, dan Windows melalui OpenSSH.
4. Mendukung Otomatisasi
Sangat cocok digunakan dalam:
- Backup otomatis
- Deployment aplikasi
- Sinkronisasi konfigurasi
- CI/CD Pipeline
Kekurangan SCP
Walaupun masih banyak digunakan, SCP memiliki beberapa keterbatasan:
1. Tidak Mendukung Resume
Jika koneksi terputus, transfer harus dimulai dari awal.
2. Tidak Ada Sinkronisasi File
SCP hanya menyalin file tanpa membandingkan perubahan.
3. Kurang Efisien untuk Transfer Besar
Untuk transfer file berukuran sangat besar atau sinkronisasi rutin, tools seperti rsync sering lebih efisien.
Kesimpulan
Secure Copy Protocol (SCP) adalah solusi sederhana dan aman untuk mentransfer file melalui jaringan menggunakan enkripsi SSH. SCP sangat cocok digunakan untuk administrasi server, deployment aplikasi, transfer backup, dan kebutuhan operasional sehari-hari.
Meskipun saat ini banyak organisasi mulai beralih ke SFTP atau Rsync untuk kebutuhan yang lebih kompleks, SCP tetap menjadi pilihan populer karena kemudahan penggunaan, ketersediaan luas, dan tingkat keamanan yang tinggi.
Bagi administrator Linux dan DevOps engineer, memahami SCP merupakan keterampilan dasar yang penting untuk mengelola server secara aman dan efisien.
