FTP merupakan kepedekan dari File Transfer Protocol, merupakan sebuah protokol yang digunakan untuk mentransfer file antar komputer di jaringan.
Apabila kita menyewa hosting yang menggunakan panel seperti CPanel, DirectAdmin, atau panel yang lainnya, kita bisa menemukan FTP, yang mana FTP tersebut bisa kita gunakan untuk meng-upload file dari komputer kita ke hosting ataupun sebaliknya. Nah beda halnya ketika menyewa Virtual Private Server (VPS) atau VIrtual Mechine (VM) yang tanpa menggunakan control panel.
Sebagai contoh kita menyewa VPS dengan sistem operasi Ubuntu Server, didalamnya diinstalkan web server Apache dan database MySQL secara manual. Setelah itu kita menggunakan VPS tersebut untuk meng-online-kan beberapa website yang berbeda, dan dalam suatau waktu kita diminta oleh pihak lain untuk mengakses direktori website tertentu. Otomatis kita perlu memberikan akses kepada pihak tersebut supaya bisa mengakses direktori websitenya tanpa bisa mengakses direktori lain, yang paling tepat adalah dengan memberikan akses FTP, karena kalau akses SSH masih bisa digunakan untuk melihat-lihat direktori lainnya.
Baca juga : Cara Install aaPanel sebagai Control Panel Server Linux
Di artikel ini saya akan menuliskan panduan tentang cara menginstall FTP server di Ubuntu, dan dalam kasus ini yang saya contohkan adalah Ubuntu Server 20.04
Yang Dibutuhkan:
- Akses ke server sebagai sudo
Langkah-Langkah
Update packages sistem dengan menggunakan perintah berikut:
sudo apt-get update
Baca juga : Cara Transfer / Copy File ke Server atau Sebaliknya Menggunakan SSH
Install vsftpd (FTP Server)
vstfpd adalah open source yang paling banyak digunkan untuk FTP server, karena kemudahan, keamanan dan kecepatannya. Untuk menginstall vstpd silahkan gunakan perintah berikut:
sudo apt install vsftpd
Cek status vsftpd menggunakan perintah berikut:
sudo service vsftpd status
Baca juga : Mengenal aaPanel
Apabila belum aktif, silahkan aktifkan dengan menggunakan perintah berikut:
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
Mengkonfigurasi FTP Server
Semua konfigurasi VSFTPD berada pada file /etc/vsftpd.conf, sebelum melakukan perubahan, sebaiknya kita melakukan proses backup terlebih dahulu, sehingga ketika terjadi kesalahan, kita bisa mengembalikannya dengan mudah.
Gunakan perintah berikut untuk membuat cadangan:
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak
Apabila sudah di-backup, selanjutnya kita bisa mulai menyesuaikan konfigurasi FTP server, silahkan buka file /etc/vsftpd.conf menggunakan text edirot seperti nano atau vim. Apabila sudah dibuka, silahkan sesuaikan beberapa baris menjadi seperti beikut:
Type listen =YES
listen_ipv6=NO
anonymous_enable=NO
write_enable=YES
pam_service_name=ftp
Supaya pengguna hanya bisa mengakses direktory yang ditentukan, silahkan tambahkan baris berikut dibagian paling bawah:
allow_writeable_chroot=YES
Simpan hasil perubahan lalu restart vsftpd dengan menggunakan perintah berikut:
sudo systemctl restart vsftpd.service
Membuat User Baru
Untuk membuat user baru, silahkan gunakan perintah dibawah ini. Sebagai contoh, saya akan membuat user baru dengan nama userftp, silahkan teman-teman sesuaikan sendiri penamaannya.
Baca juga : Cara Install Let\'s Encrypt pada Ubuntu 20.04 untuk Web Server Apache
sudo useradd –m userftp
sudo passwd userftp
Setelah itu teman-teman akan diminta untuk memasukan password sebanyak dua kali, yaitu password untuk user tersebut.
Supaya user tersebut hanya bisa mengkakses folder tertentu, sebagai contoh, user dengan username userftp tersebut hanya diberikan akses untuk mengakses folder website yang terdapat pada direktori /var/www/html/website1, silahkan ganti home direcory nya menggunakan perintah berikut:
sudo usermod -d /var/www/html/website1 userftp
Dengan begitu ketika user tersebut masuk menggunakan ftp client semisal FileZilla, dia akan langsung diarahkan ke folder var/www/html/website1.
Konfigurasikan Firewall untuk Mengizinkan Trafic FTP
Jika Teman-teman menggunakan UFW dengan standar Ubuntu, secara default akan memblokir trafic FTP. Masukkan perintah berikut untuk membuka Port 20 dan 21 yang digunakan untuk trafic FTP:
sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
Selesai deh, sekarang sudah bisa mengakses servernya menggunakan FTP client seperti FileZillah dan sejenisnya.
Sebenarnya apabila trafiknya ingin lebih aman, kita bisa menggunakan File Transfer Protocol over SSL (Secure Socket Layer), tapi bagian tersebut akan saya posting dalam artikel lainnya supaya artikel ini tidak kepanjangan.
Jadi jangan bosan berkunjung ke situs ini ya.