Solusi 1:
Jawaban lengkap yang menyelesaikan pertanyaan saya untuk orang lain yang mengikuti panduan langkah demi langkah...
Instal vsftpd
menggunakan ini sebagai panduan.
- Buat pengguna dengan
useradd [user_name]
. - Buat kata sandi pengguna dengan
passwd [user_name]
. (Anda akan diminta untuk menentukan kata sandi). - Buat direktori FTP di
/var/ftp
lalu ikat ke direktori 'home' yang ingin Anda tentukan untuk pengguna ini denganmount --bind /var/www/vhosts/domain.com/ /var/ftp/custom_name/
. -
Ubah direktori home pengguna dengan
usermod -d /var/ftp/custom_name/ user_name
Di
/etc/vsftpd/vsftpd.conf
, pastikan semua hal berikut disetel:-- chroot_local_user=YA
- chroot_list_enable=YA
- chroot_list_file=/etc/vsftpd.chroot_list
Hanya cantumkan pengguna di vsftpd.chroot_list
file jika Anda ingin mereka memiliki akses penuh ke mana saja di server. Dengan tidak mencantumkannya dalam file ini, Anda mengatakan batasi semua vsftpd
pengguna ke direktori home yang ditentukan.
Dengan kata lain (untuk referensi):-
- berarti bahwa secara default, SEMUA pengguna mendapatkan chroot kecuali pengguna dalam file...
- chroot_local_user=YA
- chroot_list_enable=YA
- berarti bahwa secara default, HANYA pengguna dalam file yang di-chroot...
- chroot_local_user=TIDAK
- chroot_list_enable=YA
Solusi 2:
Bagi saya itu tidak berhasil bahkan setelah hal di atas. Ada local_root yang sudah disetel ke direktori, dan apa pun yang saya lakukan, direktori pengguna belum di-jailed. Akhirnya berfungsi setelah hanya diubah
chroot_local_user=YA
Dan ikuti prosedur
- vi /etc/vsftpd.conf
- Tambahkan baris 'user_config_dir=/etc/vsftpd_user_conf' (tanpa tanda kutip)
- mkdir /etc/vsftpd_user_conf;
- cd /etc/vsftpd_user_conf
- vi nama_pengguna;
- Masukkan baris 'local_root=/srv/ftp/user_name'
Hanya dua sen saya jika ada orang lain yang memiliki masalah yang sama.