Konfigurasi FTP-Server

  

Konfigurasi FTP-Server



Halo guys!!! pada kesempatan kali ini, kita akan belajar mengenai FTP-Server

"Apa si min FTP-Server itu?
  Oke, mimin kasih tau ya....

FTP-Server itu adalah komputer atau sistem yang menjalankan layanan File Transfer Protocol (FTP), yaitu protokol standar di internet untuk mengirim dan menerima file antara dua perangkat. Simpelnya, FTP-Server itu seperti lemari penyimpanan online yang bisa kamu akses lewat jaringan. Kamu bisa upload (kirim) atau download (ambil) file dari sana gaisss.....

🔁 Fungsi Utama FTP Server:

1. Menyimpan file untuk diakses oleh user lain.

2. Transfer file antar komputer di jaringan (lokal/internet).

3. Digunakan dalam web hosting, backup, update software, dll.


📦 Contoh :

Misalnya kamu punya:

  • Server Debian → dijadikan FTP Server

  • Komputer client Windows → pakai FileZilla untuk akses server itu

Kamu bisa:

  • Upload file dari Windows ke server

  • Ambil file dari server ke laptopmu


📡 Komunikasi dalam FTP:

  • Client: Komputer yang minta file atau kirim file ke server
  • Server: Komputer yang menyimpan dan mengelola file

  • Komunikasi ini pakai port 21 (default FTP).


Di Linux, terdapat beberapa macam FTP (File Transfer Protocol) server yang bisa digunakan untuk transfer file antar komputer dalam jaringan. Setidaknya ada 5 jenis FTP server populer di Linux, yaitu:

1. vsftpd (Very Secure FTP Daemon)

  • Salah satu FTP server paling populer dan dianggap sangat aman.

  • Cocok untuk produksi karena ringan dan cepat.

  • Digunakan di banyak distribusi Linux seperti Ubuntu, CentOS, Fedora.

2. ProFTPD

  • Fleksibel dan bisa dikonfigurasi mirip Apache (menggunakan format konfigurasi seperti HTTP).

  • Mendukung banyak fitur: anonymous login, virtual hosting, chroot jail, dll.

3. Pure-FTPd

  • Fokus pada keamanan dan performa.

  • Konfigurasi mudah dan mendukung banyak fitur seperti quota, enkripsi, dan virtual user.

4. Wu-FTPD (Washington University FTP Daemon)

  • Dulu populer, tapi sekarang sudah jarang digunakan karena alasan keamanan dan update yang tidak aktif.

5. tftp-hpa (Trivial FTP)

  • Digunakan untuk kebutuhan ringan seperti booting via PXE atau transfer file kecil.

  • Tidak aman untuk transfer file publik, karena tidak ada sistem login.

Bonus: Alternatif FTP Modern

Selain FTP klasik, sekarang banyak juga yang pakai:

  • SFTP (SSH File Transfer Protocol): Lebih aman karena menggunakan protokol SSH.

  • FTPS (FTP Secure): FTP yang menggunakan SSL/TLS untuk enkripsi.


🔐 Tapi... FTP Biasa Kurang Aman!

  • Data dikirim tanpa enkripsi

  • Username & password bisa dicuri kalau jaringan tidak aman

🔒 Makanya sekarang banyak yang pakai SFTP (pakai SSH) atau FTPS (pakai SSL/TLS) yang lebih aman.


Jadi, kita disini akan mengkonfigurasi SFTP ya teman-teman!!! 

🔧 Langkah-Langkah


1. Install SSH Server
  
    apt install openssh-server


  • openssh-server adalah paket yang memungkinkan Debian menerima koneksi SSH dan SFTP dari komputer lain.

  • SFTP adalah bagian dari SSH, jadi kamu nggak perlu install server FTP tambahan.


2. Buat user untuk SFTP

    adduser sftpuser
  • Membuat user khusus hanya untuk akses SFTP, bukan untuk login shell.

  • Ini praktik terbaik untuk keamanan: pisahkan user SFTP dari user admin/root.


3. Buat Folder untuk Upload File
    mkdir /home/sftpuser/uploads
  chown root:root /home/sftpuser
  chmod 755 /home/sftpuser
  chown sftpuser:sftpuser /home/sftpuser/uploads

  • ChrootDirectory (nanti kita atur di config SSH) mengharuskan direktori root (/home/sftpuser) dimiliki oleh root.

  • Makanya:

    • Folder home-nya (/home/sftpuser) → milik root dengan akses baca-eksekusi (755).

    • Folder uploads → baru milik sftpuser, agar user bisa upload file ke situ.


4. Edit Konfigurasi SSH untuk SFTP
     nano /etc/ssh/sshd_config


Match User sftpuser                         Aturan ini hanya berlaku untuk user sftpuser.
ChrootDirectory /home/sftpuser    → Mengunci user di folder ini, dia gabisa akses folder lain.
ForceCommand internal-sftp        → Memaksa user hanya bisa pakai SFTP, bukan shell biasa.
AllowTcpForwarding no                → Mencegah user melakukan port forwarding untuk keamanan.
X11Forwarding no                        → Mencegah akses GUI via SSH
 

5. Restart SSH
 
    systemctl restart ssh

  • Mengaktifkan perubahan di sshd_config.

  • Harus dilakukan setiap kali kamu ubah konfigurasi SSH.


6. Ujicoba




Sekian dari mimin, kurang lebihnya mohon maap. Mimin pun hanya manusia biasa saja, wajar saja kalo dari Mimin ada kesalahan kata atau kata-kata tidak berkenan, wajarlah manusia bukan nabi boy!!! Maka dari itu komen saja kalo ada yang kurang di mengerti atau ada kata-kata mimin yang belum benar.

See you next time!!!


    Congratulations!!!😽😽






Komentar

Postingan populer dari blog ini

Cara Konfigurasi DHCP Server Di Debian 11

Konfigurasi NAT Gateway di Debian 11

Konfigurasi DNS-Server Menggunakan Bind9