File Transfer Protocol atau FTP adalah protokol jaringan yang sangat tua dan salah satu yang paling terkenal. Ini tidak aman dibandingkan dengan SFTP atau SCP hari ini tetapi masih menjadi pilihan pertama banyak pengguna untuk mentransfer file antara server dan klien. FTP dikenal sebagai tidak aman karena mentransfer data bersama dengan kredensial pengguna tanpa jenis enkripsi apa pun.
Kami memiliki berbagai macam server FTP open-source yang tersedia saat ini seperti FTPD, VSFTPD, PROFTPD, dan pureftpd. Di antara semuanya, VSFTPD adalah protokol yang sangat aman, cepat, dan paling banyak digunakan untuk mentransfer file antara dua sistem.
VSFTPD juga dikenal sebagai "Daemon Protokol Transfer File Sangat Aman" dengan dukungan SSL , IPv6, FTPS eksplisit dan implisit.
Dalam panduan ini, Kami akan menunjukkan Cara Menginstal Server FTP vsftpd di Debian 11.
Prasyarat
Server yang menjalankan Debian 11.
Pengguna non-root dengan hak istimewa sudo.
1. Instal Vsftpd
Sebelum Anda memulai instalasi, perbarui server Debian 11 Anda dengan menjalankan perintah berikut di terminal:
sudo apt update -y
sudo apt upgrade -y
Debian memiliki repositori yang sangat besar dan Paket vsftpd tersedia di repositori resmi, Jadi Anda dapat menginstal vsftpd dengan mudah dengan menjalankan perintah berikut:
sudo apt install vsftpd -y
Setelah instalasi paket, mulai layanan Vsftpd, periksa status layanan dan aktifkan layanan saat startup.
sudo systemctl start vsftpd
sudo systemctl status vsftpd
systemctl aktifkan vsftpd.service
2. Buat pengguna FTP dan konfigurasikan untuk login FTP
Sekarang, buat akun pengguna baru untuk FTP, dengan menggunakan pengguna ini kita akan masuk ke server FTP nanti.
sudo adduser sohan
Pengguna yang ditambahkan dalam file vsftpd.userlist memiliki izin untuk mengakses server FTP.
Selanjutnya, kita perlu menambahkan pengguna sohan dalam daftar pengguna vsftpd. Buka file dan tambahkan pengguna dengan menjalankan perintah berikut:
gema "sohan" | sudo tee -a /etc/vsftpd.userlist
3. Buat direktori pengguna FTP
Selanjutnya, kita perlu membuat direktori FTP untuk pengguna FTP kita dan mengatur kepemilikan dengan perintah berikut:
sudo mkdir -p /home/sohan/ftp_directory
sudo chown none:nogroup /home/sohan/ftp_directory
sudo chmod a-w /home/sohan/ftp_directorySekarang, buat direktori tempat file dapat diunggah dan berikan kepemilikan kepada pengguna sohan dengan menjalankan perintah:
sudo mkdir -p /home/sohan/ftp_directory/ftp_datasudo chown sohan:sohan /home/sohan/ftp_directory/ftp_datacd /home/sohan/ftp_directory/chmod -R 777 ftp_data
4. Konfigurasi Vsftpd
Selanjutnya, Anda perlu mengubah beberapa parameter default untuk menyiapkan server FTP.
Pertama, buat salinan cadangan dari file konfigurasi vsftpd asli.sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bakDi server FTP, pengguna anonim diberikan akses secara default. Untuk membuat server FTP lebih aman, kami akan menonaktifkan login pengguna anonim dan hanya memberikan akses ke pengguna tertentu.
Selanjutnya buka file vsftpd.conf dan lakukan perubahan seperti di bawah ini:
vim /etc/vsftpd.confanonymous_enable=TIDAK
local_enable=YAAda beberapa perubahan lain yang perlu kita lakukan dalam konfigurasi, Pertama Buka vsftpd.conf
sudo vim /etc/vsftpd.confSelanjutnya, pastikan vsftpd.conf harus berisi baris berikut:
listen=TIDAK
listen_ipv6=YA
anonymous_enable=TIDAK
write_enable=YA
local_umask=022
dirmessage_enable=YA
use_localtime=YA
xferlog_enable=YA
connect_from_port_20=YA
chroot_local_user=YA
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
user_sub_token=$USER
local_root=/home/$USER/ftp_directory
userlist_enable=YA
userlist_file=/etc/vsftpd.userlist
userlist_deny=TIDAKSimpan dan tutup file. Anda dapat mengubah konfigurasi di atas sesuai dengan kebutuhan Anda.
Sekarang restart layanan vsftpd dan periksa status layanan dengan menjalankan perintah berikut:sudo systemctl restart vsftpd
Selanjutnya, pastikan layanan vsftpd dalam status berjalan dengan menjalankan perintah berikut di Terminal:sudo systemctl status vsftpd5. izinkan vsftpd di firewall dan akses server vsftpd
Selanjutnya, jika Anda menggunakan firewall, izinkan port 21 dan port 22 dengan menjalankan perintah berikut:
sudo ufw izinkan 21/tcp
sudo ufw izinkan 22/tcpKemudian muat ulang firewall untuk menerapkan perubahan:
sudo ufw reloadSelanjutnya, Buka klien FTP seperti FileZilla dan masukkan detail server Anda, Like Protocol, Host , User:
Sekarang, klik sambungkan, lalu masukkan kata sandi Anda:
Kemudian akan muncul detail seperti di bawah ini, klik OK.
Pada titik ini, Anda terhubung ke server FTP, dan Anda dapat mengunggah dan mengunduh file/folder.
6. Amankan Vsftpd menggunakan SSL/TLS
Katakanlah Anda ingin mentransfer data terenkripsi melalui FTP, untuk melakukannya Anda perlu membuat sertifikat SSL dan perlu mengaktifkan koneksi SSL/TLS.
Anda dapat membuat sertifikat menggunakan OpenSSL menggunakan perintah berikut:sudo mkdir /etc/cert
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/cert/vsftpd.pem -out /etc/cert/vsftpd.pemSekarang, Anda perlu mengedit file vsftpd.conf dan membuat beberapa perubahan:
sudo vim /etc/vsftpd.confTambahkan baris berikut pada akhirnya:
rsa_cert_file=/etc/cert/vsftpd.pem
rsa_private_key_file=/etc/cert/vsftpd.pem
ssl_enable=YA
allow_anon_ssl=TIDAK
force_local_data_ssl=YA />force_local_logins_ssl=YA
ssl_tlsv1=YA
ssl_sslv2=TIDAK
ssl_sslv3=TIDAK
memerlukan_ssl_reuse=TIDAK
ssl_ciphers=TINGGISimpan dan keluar dari file, lalu mulai ulang Vsftpd menggunakan perintah berikut:
sudo systemctl restart vsftpd7. Akses FTP melalui SSL/TLS
Buka klien FTP FileZilla dan buka File> Sites Manager. Di sini, klik tambahkan Situs baru dan masukkan nama host/situs, tambahkan alamat IP, tentukan protokol yang akan digunakan, Enkripsi:Perlu menjelaskan FTP melalui TLS dan jenis logon. Kemudian klik tombol Hubungkan. Anda akan melihat gambar berikut:
Selanjutnya, masukkan kata sandi Anda:
Selanjutnya, Anda akan melihat sertifikat SSL, verifikasi detail sertifikat dan klik OK.
Akhirnya, Anda akan melihat konten server FTP Anda dan dapat mentransfer data Anda dengan aman dari satu sistem ke yang lain.
Kesimpulan
Dalam panduan di atas, kami telah menginstal server VSFTPD di Debian 11. Kami juga mempelajari cara terhubung melalui koneksi non-enkripsi dan melalui koneksi terenkripsi menggunakan sertifikat SSL.
Cara Memasang Bugzilla Bug Tracker di Debian 11 Cara Instal InvoicePlane dengan Apache dan Lets Encrypt SSL Certificate Gratis di Debian 11Debian