FTP , kependekan dari File Transfer Protocol , adalah protokol yang menyediakan akses ke file yang berada di server. Ini adalah salah satu protokol paling awal yang memungkinkan pengguna mengunduh file melalui internet. Dengan protokol FTP, pengguna dapat mengunduh dan mengunggah file di server dengan mudah.
Vsftpd , kependekan dari Daemon FTP Sangat Aman , adalah daemon FTP aman yang merupakan peningkatan dari protokol FTP. Ini memberlakukan koneksi aman ke server FTP dengan mengenkripsi lalu lintas yang dikirim ke dan dari server, dan dengan demikian, transfer file tetap aman dan terlindungi dari peretas.
Dalam topik ini, kami menyoroti instalasi vsftpd di CentOS 8 / RHEL 8.
Langkah 1) Instal vsftpd menggunakan perintah dnf
Langsung saja, kita akan menginstal vsftpd. Untuk mencapai ini, kita akan menjalankan perintah di bawah ini:
$ sudo dnf install vsftpd
Tekan ‘y ' dan tekan ENTER untuk memulai instalasi. Instalasi membutuhkan waktu beberapa detik dan akan selesai dalam waktu singkat. Output di bawah ini mengkonfirmasi bahwa vsftpd telah berhasil diinstal.
Output menunjukkan bahwa kita telah menginstal vsftpd versi 3.0.3-31.el8.x86_64. Untuk mengonfirmasi ini, jalankan perintah berikut:
[[email protected] ~]$ rpm -q vsftpd vsftpd-3.0.3-31.el8.x86_64 [[email protected] ~]$
Output harus sesuai dengan versi yang dicetak pada terminal setelah instalasi berhasil. Untuk mengambil informasi lebih rinci tentang Vsftpd, tambahkan tanda -i di akhir seperti yang ditunjukkan:
$ rpm -qi vsftpd
Ini akan mencetak informasi tambahan di layar seperti Arsitektur, tanggal pemasangan, lisensi dan tanda tangan untuk menyebutkan beberapa.
Dengan vsftpd terinstal, kita perlu menjalankannya untuk memfasilitasi akses ke berbagi file.
Untuk memulai layanan vsftpd, jalankan perintah:
$ sudo systemctl start vsftpd
Anda mungkin juga ingin mengaktifkannya untuk memulai secara otomatis setelah reboot. Untuk mencapai ini, jalankan perintah
$ sudo systemctl enable vsftpd --now
Untuk memverifikasi status vsftpd di sistem Anda, jalankan:
$ sudo systemctl status vsftpd
Jika Anda melihat "aktif:(berjalan) ” berwarna hijau seperti yang ditunjukkan pada terminal, maka layanan vsftpd aktif dan berjalan.
Langkah 2) Buat pengguna ftp dan direktorinya
Selanjutnya kita akan membuat user yang akan kita gunakan untuk mengakses FTP server. Dalam hal ini, pengguna akan menjadi ftpuser tetapi jangan ragu untuk memberikan nama pilihan Anda kepada pengguna Anda.
$ sudo adduser ftpuser $ sudo passwd ftpuser
Dengan pengguna FTP di tempat, kami akan melanjutkan dan membuat direktori FTP dan menetapkan izin dan kepemilikan direktori berikut.
$ sudo mkdir -p /home/ftpuser/ftp_dir $ sudo chmod -R 750 /home/ftpuser/ftp_dir $ sudo chown -R ftpuser: /home/ftpuser/ftp_dir
Kami juga perlu menambahkan pengguna FTP ke /etc/vsftpd/user_list file untuk memungkinkan akses pengguna ke server vsftp.
$ sudo bash -c 'echo ftpuser >> /etc/vsftpd/user_list'
Langkah 3) Konfigurasi vsftpd melalui file konfigurasinya
Sejauh ini, kami telah berhasil menginstal dan mengonfirmasi bahwa vsftpd aktif dan berjalan. Penyesuaian lebih lanjut diperlukan untuk Vsftpd agar pengguna dapat mengakses server.
File konfigurasi default untuk vsftpd adalah file /etc/vsftpd/vsftpd.conf. File ini penuh dengan arahan yang membantu memperkuat keamanan server FTP Anda.
Di bagian ini, kami akan membuat beberapa penyesuaian pada file konfigurasi dan mengizinkan pengguna untuk mengakses server.
Untuk mengizinkan pengguna lokal mengakses server FTP dari jarak jauh, dan memblokir pengguna anonim, pastikan Anda memiliki arahan seperti yang ditunjukkan:
anonymous_enable=NO local_enable=YES
Untuk memberikan hak kepada pengguna untuk menjalankan perintah FTP apa pun &membuat perubahan seperti mengunggah, mengunduh, dan menghapus file, siapkan baris berikut.
write_enable=YES
Untuk tujuan keamanan, Anda dapat memilih untuk membatasi pengguna mengakses file &direktori apa pun di luar direktori asal mereka. Oleh karena itu, terapkan arahan berikut.
chroot_local_user=YES
Untuk memberi pengguna akses tulis ke direktori home masing-masing, pastikan Anda memiliki arahan ini.
allow_writeable_chroot=YES
Selanjutnya, kita akan menentukan port khusus untuk mengaktifkan koneksi FTP Pasif. Dalam hal ini, kita akan menentukan port 30000 dan 31000. Nanti kita akan membukanya di firewall.
pasv_min_port=30000 pasv_max_port=31000
Selanjutnya, kita hanya akan mengizinkan pengguna yang ditentukan dalam /etc/vsftpd/user_list akses ke server dan memblokir sisanya. Untuk mencapai ini, buat baris di bawah ini.
userlist_file=/etc/vsftpd/user_list userlist_deny=NO
Terakhir, simpan dan tutup file. Agar perubahan tetap ada, mulai ulang layanan Vsftpd.
$ sudo systemctl restart vsftpd
Pada titik ini, Anda dapat menguji konektivitas FTP dengan menjalankan
$ ftp ip-address
Tentukan nama pengguna pengguna ftp dan kemudian berikan kata sandinya. Anda akan mendapatkan output seperti yang ditunjukkan.
Meskipun kami telah menetapkan konektivitas ke server vsftpd. Sambungan tidak aman, dan informasi yang dikirim berupa teks biasa dan tidak dienkripsi. Oleh karena itu, kami perlu mengambil langkah ekstra untuk mengenkripsi komunikasi yang dikirim ke server.
Langkah 4) Konfigurasi SSL / TLS untuk vsftpd
Untuk mengenkripsi komunikasi antara server dan sistem klien, kita perlu membuat sertifikat TLS dan kemudian mengonfigurasi server untuk menggunakannya.
Untuk membuat sertifikat, jalankan perintah di bawah ini:
$ sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/vsftpd.pem -out /etc/vsftpd/vsftpd.pem
Ini akan diikuti oleh serangkaian petunjuk di mana Anda akan diminta untuk memberikan beberapa detail seperti nama negara, negara bagian atau provinsi, dan nama organisasi untuk menyebutkan beberapa. Isi semua detail sesuai dengan yang ditunjukkan.
Kami juga perlu memberi tahu server tempat file sertifikat disimpan. Jadi, kembali ke file konfigurasi /etc/vsftpd/vsftpd.conf dan tentukan path ke file sertifikat.
rsa_cert_file=/etc/vsftpd/vsftpd.pem rsa_private_key_file=/etc/vsftpd.pem
Kemudian, instruksikan server untuk mengaktifkan SSL.
ssl_enable=YES
Simpan dan keluar dari file konfigurasi. Untuk menerapkan perubahan di atas, mulai ulang layanan vsftpd,
$ sudo systemctl restart vsftpd
Langkah 5) Izinkan port server ftp (vsftpd) di firewall
Jika Anda menjalankan firewall, Anda harus mengizinkan port yang menonjol ini”
- 20 – untuk mengizinkan lalu lintas FTP
- 21 – Port data FTP
- 30000-31000 – Untuk mengizinkan komunikasi pasif dengan server FTP.
Oleh karena itu, jalankan perintah di bawah ini:
$ sudo firewall-cmd --permanent --add-port=20-21/tcp $ sudo firewall-cmd --permanent --add-port=30000-31000/tcp
Kemudian muat ulang firewall agar perubahan diterapkan.
$ sudo firewall-cmd --reload
Langkah 6) Uji vsftpd atau server FTP Anda
Setelah semua pengaturan selesai, saatnya untuk menguji konektivitas kami. Dalam contoh ini, kami menggunakan klien FTP yang dikenal sebagai FileZilla yang merupakan klien FTP gratis untuk sistem klien dan server. Ini mendukung FTP biasa dan FTP melalui TLS yang akan kami uji.
Saat diluncurkan, antarmuka terlihat seperti yang ditunjukkan. Berikan alamat IP host (vsftpd), nama pengguna dan kata sandi pengguna ftp lalu klik tombol ‘Quickconnect '.
Tak lama setelah itu, akan muncul pop-up yang menampilkan sertifikat &detail sesi server FTP. Untuk melanjutkan koneksi, klik “Selalu percayai sertifikat ini di sesi mendatang” lalu tekan enter.
Jika semua konfigurasi Anda benar, Anda akan mendapatkan entri tanpa masalah seperti yang ditunjukkan. Di panel kanan bawah, direktori home server jauh seperti yang ditunjukkan. Sekarang Anda dapat mengunggah, mengunduh, dan mengedit file sesuai keinginan Anda.
Ini mengakhiri topik kami tentang instalasi vsftpd pada CentOS 8. Kami berharap Anda sekarang dapat dengan nyaman mengatur server vsftpd (ftp aman) Anda sendiri. Silakan bagikan di antara teman-teman teknis Anda dan juga bagikan umpan balik dan komentar Anda yang berharga.
Baca Juga :Cara Memutar dan Mengompresi File Log di Linux dengan Logrotate
Baca Juga :Cara Memasang Memcached (Server Caching) di CentOS 8