Install vsftpd
ubuntu
sudo apt-get install vsftpd
Konfigurasi firewall
Cek status firewall apakah aktif atau tidak
sudo ufw status
1. Jika firewall tidak aktif/tidak menggunakan firewall maka biarkan saja
2. Jika firewall aktif konfigurasi seperti tutorial berikut
Untuk kasus kali ini kita akan menggunakan port 40000 sampai port 50000 sebagai sarana komunaksi ftp, maka izinkan port tersebut dengan mengetikkan perintah:
sudo ufw allow 40000:50000/tcp
Lalu cek status firewall.
sudo ufw status
Maka akan muncul daftar port yang dibolehkan untuk mengakses ke server. Seperti dibawah ini.
Status: active
To Action From
-- ------ ----
20/tcp ALLOW Anywhere
21/tcp ALLOW Anywhere
990/tcp ALLOW Anywhere
40000:50000/tcp ALLOW Anywhere
22/tcp ALLOW Anywhere
20/tcp (v6) ALLOW Anywhere (v6)
21/tcp (v6) ALLOW Anywhere (v6)
990/tcp (v6) ALLOW Anywhere (v6)
40000:50000/tcp (v6) ALLOW Anywhere (v6)
22/tcp (v6) ALLOW Anywhere (v6)
(Jika ingin) membuat user baru khusus untuk ftp
untuk membuat user baru sekaligus direktori di folder /home/ jalankan perintah berikut
sudo adduser namauser
pada ubuntu secara otomatis dibuatkan direktori home nya juga
(Jika ingin) membuat folder khusus untuk ftp
Buat folder
mkdir /home/namauser/ftp
(bila perlu) Ubah kepemilikan direktori/folder
chown nobody:nogroup /home/namauser/ftp
hapus izin menulis
chmod a-w /home/namauser/ftp
verifikasi izin
ls -l /home/namauser/ftp
membuat direktori baru untuk tempat file yang akan anda upload.
mkdir /home/namauser/ftp/files
chown namauser:namauser /home/namauser/ftp/files
Konfigurasi FTP akses
Buka konfigurasi vsftp
sudo nano /etc/vsftpd.conf
Uncomment pada bagian write_enable. hal ini dilakukan agar user bisa mengupload file ke direktori ftp tersebut.
write_enable=YES
Uncomment chroot_local_user
chroot_local_user=YES
Lalu tambahkan beberapa konfigurasi dibawah ini lalu letakkan pada bagian paling bawah:
user_sub_token=$USER
local_root=/home/$USER/ftp
pasv_min_port=40000
pasv_max_port=50000
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO
Tambahkan userlist baru pada vsftp.
dengan cara echo
echo "pedia" | sudo tee -a /etc/vsftpd.userlist
dengan cara membuat file
sudo nano /etc/vsftpd.userlist
tambahkan user yang akan di izinkan mengakses sebagai FTP server
namauser
lalu save
Sekarang, restart daemon vsftp
systemctl restart vsftpd