Install Vsftpd di Ubuntu Server 18.04
File Transfer Protocol (FTP) adalah suatu protokol yang berfungsi untuk tukar-menukar file dalam suatu network yang menggunakan TCP koneksi bukan UDP.
VSFTPD (VSFTPD adalah singkatan dari "Very Secure FTP Daemon software package"). adalah program utilitas yang relatif mudah digunakan untuk membuat server FTP.
1. Install Vsftpd
Untuk installasi Vsftpd silahkan jalankan perintah berikut :
mariobrossblack2@serv1:~$ sudo apt install vsftpd
mariobrossblack2@serv1:~$ sudo service vsftpd status
2. Konfigurasi Firewall
Untuk konfigurasi firewall silahkan jalankan perintah berikut :
mariobrossblack2@serv1:~$ sudo ufw allow OpenSSH
mariobrossblack2@serv1:~$ sudo ufw allow 20/tcp
mariobrossblack2@serv1:~$ sudo ufw allow 21/tcp
mariobrossblack2@serv1:~$ sudo ufw allow 40000:50000/tcp
mariobrossblack2@serv1:~$ sudo ufw allow 990/tcp
mariobrossblack2@serv1:~$ sudo ufw enable
mariobrossblack2@serv1:~$ sudo ufw status
3. Membuat FTP User
Untuk membuat ftpuser silahkan jalankan perintah berikut :
mariobrossblack2@serv1:~$ sudo adduser ftpuser
Buat kata sandi yang kuat dan simpan dengan aman.
Anda mungkin juga diminta untuk memasukkan beberapa informasi kontak. Anda hanya dapat menekan ENTER untuk masing-masing.
mariobrossblack2@serv1:~$ sudo nano /etc/ssh/sshd_config
# daemon started from an initscript.
listen=NO
# files.
listen_ipv6=YES
# Allow anonymous FTP? (Disabled by default).
anonymous_enable=NO
# Uncomment this to allow local users to log in.
local_enable=YES
# Uncomment this to enable any form of FTP write command.
write_enable=YES
# Default umask for local users is 077. You may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
local_umask=022
# go into a certain directory.
dirmessage_enable=YES
# option.
use_localtime=YES
# Activate logging of uploads/downloads.
xferlog_enable=YES
# Make sure PORT transfer connections originate from port 20 (ftp-data).
connect_from_port_20=YES
# chroot_list_enable below.
chroot_local_user=YES
# access.
secure_chroot_dir=/var/run/vsftpd/empty
# This string is the name of the PAM service vsftpd will use.
pam_service_name=vsftpd
# This option specifies the location of the RSA certificate to use for SSL
# encrypted connections.
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
# Tambahkan script ini di bawah
pasv_enable=YES
pasv_min_port=10000
pasv_max_port=10100
allow_writeable_chroot=YES
- DenyUsers ftpuser
mariobrossblack2@serv1:~$ useradd -m ftpuser
mariobrossblack2@serv1:~$ useradd -m ftpuser
new password: masukan password
retype new password : masukan password
passwd : password update succesfully
Simpan perubahan lalu restart service vsftpd
mariobrossblack2@serv1:~$ sudo service sshd restart
4. Permessions Directory
Untuk penempatan directory silahkan jalankan perintah berikut :
Upload to a Web Server
mariobrossblack2@serv1:~$ sudo usermod -d /var/www ftpuser
mariobrossblack2@serv1:~$ sudo chown ftpuser:ftpuser /var/www/html
Upload to a Home Folder
mariobrossblack2@serv1:~$ sudo mkdir /home/ftpuser/ftp
mariobrossblack2@serv1:~$ sudo chown nobody:nogroup /home/ftpuser/ftp
mariobrossblack2@serv1:~$ sudo chmod a-w /home/ftpuser/ftp
mariobrossblack2@serv1:~$ sudo mkdir /home/ftpuser/ftp/files
mariobrossblack2@serv1:~$ sudo chown ftpuser:ftpuser /home/ftpuser/ftp/files
5. Konfigurasi Vsftpd
Untuk pengaturan Vsftpd silahkan jalankan perintah berikut :
mariobrossblack2@serv1:~$ sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak
mariobrossblack2@serv1:~$ sudo nano /etc/vsftpd.conf
write_enable=YES - chroot_local_user=YES
local_umask=022
To force vsftpd to show file names that begin with a dot, paste the following to the bottom of the file. (To paste in nano, press the right mouse button) - force_dot_files=YES
- pasv_min_port=40000
- pasv_max_port=50000
mariobrossblack2@serv1:~$ sudo systemctl restart vsftpd
6. Tes FTP
mariobrossblack2@serv1:~$ sudo tail /var/log/vsftpd.log -n 200
Untuk pengetesan silahkan menggunakan Filezilla dari sisi Client, Masukan IP Server lalu masukan user dan password ftpuser lalu klik Quickconnect. Jika berhasil Login akan masuk ke home direktori ftpuser