Membuat ftp server sederhana

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