Cara Install FTP Server dengan vsftpd di Debian 9 Server
File Transfer Protocol (FTP) adalah protokol jaringan standar yang digunakan untuk mentransfer file antara client dan server melalui jaringan komputer. Ada beberapa aplikasi FTP server yang tersedia untuk Linux, yaitu PureFTPd, ProFTPd, dan vsftpd.
Artikel ini membahas tentang cara install FTP server dengan vsftpd (very secure FTP daemon) di Debian 9. vsftpd dirancang untuk sistem operasi Unix-like, termasuk Linux. Beberapa website besar yang menggunakan vsftpd sebagai FTP server:
- ftp.redhat.com
- ftp.suse.com
- ftp.debian.org
- ftp.freebsd.org
- ftp.gnu.org
- ftp.gnome.org
- ftp.kernel.org
0. Install vsftpd di Debian 9
Install paket vsftpd.
1 | apt install vsftpd -y |
1. Setting vsftpd
Backup terlebih dahulu file setting vsftpd.conf, sebagai cadangan jika terjadi kesalahan. Lalu buka file settingnya.
1 2 | cp /etc/vsftpd.conf /etc/vsftpd.conf.default nano /etc/vsftpd.conf |
Cara setting write_enable, aktifkan dengan menghapus karakter # dan ubah nilainya menjadi YES. Opsi ini agar dapat melakukan penulisan file (upload/create/delete) di server.
1 | write_enable=YES |
Restart service dan cek statusnya.
1 2 | sudo systemctl restart vsftpd sudo systemctl status vsftpd |
Uji konfigurasi dengan menggunakan aplikasi FTP client seperti FileZilla di PC client. Login menggunakan username dan password yang terdapat di sistem server dan upload file.
Chroot Jail
Membatasi user agar tidak bisa mengakses direktori lain kecuali direktori home milik sendiri. Jika opsi belum ada, tambahkan di baris paling bawah.
1 2 | chroot_local_user=YES allow_writeable_chroot=YES |
Restart service dan cek statusnya.
1 2 | sudo systemctl restart vsftpd sudo systemctl status vsftpd |
Login kembali ke FTP server, jika chroot jail berhasil, user hanya bisa mengakses direktori home sendiri atau alamat remote site dari /home/user berubah menjadi /.
Local Root
Default direktori saat login FTP adalah direktori home (/home/user). Direktori root si user bisa diarahkan ke direktori lain, misalnya untuk kebutuhan document root website /var/www/user. Lakukan setting local root.
1 2 | user_sub_token=$USER local_root=/var/www/$USER |
Buat direktori sesuai nama user di /var/www dan buat file di dalamnya untuk menguji bahwa file tersebut berada di direktori /var/www/user.
1 2 3 4 5 | mkdir -p /var/www/user cd /var/www/user touch dir_var_www_user.txt chown -R user:user /var/www/user chmod -R 755 /var/www/user |
Restart service dan cek statusnya.
1 2 | sudo systemctl restart vsftpd sudo systemctl status vsftpd |
Login ke FTP server dan lihat file yang ada di direktori.
Passive Mode
vsftpd dapat menggunakan port mana saja untuk koneksi passive FTP. Tentukan minimum dan maximum dari port yang akan digunakan.
1 2 3 | pasv_enable=YES pasv_min_port=10090 pasv_max_port=10100 |
FTP over TLS
Pada log FileZilla terdapat pesan Status: Insecure server, it does not support FTP over TLS, yang artinya data belum dienkripsi.
Membuat SSL key untuk mendukung enkripsi data.
1 | openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem |
Tampil pertanyaan untuk identitas pemilik sertifikat SSL.
1 2 3 4 5 6 7 | Country Name (2 letter code) [AU]:ID State or Province Name (full name) [Some-State]:Sulawesi Selatan Locality Name (eg, city) []:Makassar Organization Name (eg, company) [Internet Widgits Pty Ltd]:MusaAmin.Web.ID Organizational Unit Name (eg, section) []:Labs MusaAmin.Web.ID Common Name (e.g. server FQDN or YOUR name) []:www.musaamin.web.id Email Address []:hai@musaamin.web.id |
Tambah atau ubah setting SSL/TLS.
1 2 3 4 5 6 7 8 9 10 | rsa_cert_file=/etc/ssl/private/vsftpd.pem rsa_private_key_file=/etc/ssl/private/vsftpd.pem ssl_enable=YES ssl_ciphers=HIGH ssl_tlsv1=YES ssl_sslv2=NO ssl_sslv3=NO force_local_data_ssl=YES force_local_logins_ssl=YES require_ssl_reuse=NO |
Restart service vsftpd dan uji apakah SSL/TLS sudah aktif.
1 2 | sudo systemctl restart vsftpd sudo systemctl status vsftpd |
Selamat mencoba 🙂
bagaimana ya cara masukin aplikasi atau share folder dari windows ke debian gui terutama debian 9.6
install CIFS (Common Internet File System),
sudo apt-get install cifs-utils
. lalu lakukan mount, buka file manager, lalu CTRL+L ketiksmb://ip-windows
.ini melakukan konfig nya di gui atau cli ya ??
installnya di CLI, akses folder share Windows bisa CLI atau GUI. Kalau di Ubuntu, bisa langsung baca dari File Manager / Nautilus.
pak mau nanya , tentang repository , sya coba make yg [trusted=yes]
namun di loadbalance/haproxy tidak bisa terinstall
alias unable packet.
saya juga sudah memakai repository lokal dari indo. itu gimana ya pak solusi nya ? saya butuh banget bntr lagi mau lomba nya . hihihi
coba ikuti tutorial Cara Setting Repository di Debian 9 Server.
saya uda buat pak, tetapi apakah itu terhubung ke internet ??
harus ke internet
Ok mantap broo
nyoba pake slax
tpi emang enak pake debian9 aj
Gk ribet
require_ssl_reuse=NO
option ini menyebabkan di debian 10 tidak mau di start vsftpd nya, fail terus
Kalau FTP over TLS ini disebut FTPS atau SFTP pak?
FTP over TLS = FTPS. kalau SFTP = SSH File Transfer Protocol.
Bang kalau vsftpd direktorinya yang ditentukan gk pake nama user bisa? Misal semua user akan di jail pada direktori /home/ftp
coba set
local_root=/home/ftp