Kesulitan dengan server FTP dan firewall:
Jika Anda mengkonfigurasi firewall untuk host yang menjalankan server FTP, Anda biasanya harus membiarkan rentang port 1024-65365 terbuka, karena Anda tidak pernah tahu port mana yang akan digunakan server FTP untuk mengirim data ke klien FTP. Situasi ini cukup kritis jika Anda memiliki host yang memiliki port sensitif di atas 1024 yang perlu ditutup untuk Internet. Tentu saja Anda dapat memilih setiap port dan menutupnya di firewall, tetapi saya pasti lebih suka menggunakan metode firewall yang menutup semuanya dan hanya membuka port yang diperlukan akses dari Internet. Di sinilah pure-ftpd datang untuk menyelamatkan. Server FTP ini memiliki kemampuan untuk memilih kisaran port yang akan digunakan untuk mentransfer data ke klien FTP. Ini membuat konfigurasi firewall menjadi lebih mudah.
Dalam contoh berikut, pure-ftp memiliki konfigurasi berikut:
– menyediakan FTP dan FTPS dengan Pengguna yang dipenjara (Pengguna terbatas pada direktori home mereka).
– tidak ada klien anonim
– Versi IP 4 saja
– port untuk transfer data terbatas pada kisaran 20000-2009
LANGKAH: apt-get install pure-ftpd
echo '20000 20099' > /etc/pure-ftpd/conf/PassivePortRange
echo "yes" > /etc/pure-ftpd/conf/NoAnonymous
echo "yes" > /etc/pure-ftpd/conf/ChrootEveryone
echo "yes" > /etc/pure-ftpd/conf/IPV4Only
echo "1" > /etc/pure-ftpd/conf/TLS
Jika Anda ingin memaksa klien menggunakan TLS hanya untuk koneksi FTP maka gunakan perintahecho "3" > /etc/pure-ftpd/conf/TLS
Pengecualian untuk chroot
Jika Anda ingin membatasi semua pengguna ke direktori home mereka KECUALI beberapa pengguna tepercaya, Anda perlu:
– membuat grup sistem baru tempat Anda menambahkan pengguna tepercaya di dalamnya
– alih-alih menggunakan perintah di atas 'echo “yes”> /etc/pure-ftpd/conf/ChrootEveryone'
masukkan GID dari grup yang dipercaya ke dalam file /etc/pure-ftpd/conf/TrustedGID.
Contoh: Kami ingin chroot untuk semua pengguna kecuali 'martin' dan 'jannine'. Artinya martin dan jannine akan dapat bernavigasi di bagian lain dari sistem selain direktori home mereka, tetapi semua pengguna lain akan terbatas pada direktori home mereka:groupadd ftptrusted
usermod -G ftptrusted martin
usermod -G ftptrusted jannine
GID=$(grep ftptrusted /etc/group | cut -d: -f3)
echo "$GID" > /etc/pure-ftpd/conf/TrustedGID
rm /etc/pure-ftpd/conf/ChrootEveryone
CATATAN: Untuk membuat file sertifikat yang ditandatangani otoritas dengan benar untuk pure-ftpd, pastikan Anda memiliki kedua komponen berikut di file /etc/ssl/private/pure-ftpd.pem :
– Kunci pribadi (dalam format PEM)
– Sertifikat (dalam format PEM)
Jika Anda ingin menjalankannya dengan sertifikat yang ditandatangani sendiri, jalankan perintah berikut:mkdir -p /etc/ssl/private/
openssl req -x509 -nodes -days 97300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
chmod 600 /etc/ssl/private/pure-ftpd.pem
Mulai ulang pure-ftpd untuk mendaftarkan konfigurasi dan sertifikat baru.service pure-ftpd restart