Setup server LAMP baru dengan Ubuntu 12.04 dan VSFTPD.
Saya mencoba mengakses /var/www
folder (root web) dengan pengguna FTP.
Saya membuat pengguna baru ftpuser
dan menambahkannya ke www-data
grup pengguna yang dibuat secara otomatis oleh Apache.
Direktori rumah pengguna tersebut diatur ke /var/www
. Saya juga mengubah kepemilikan grup /var/www
ke www-data
dan mengubah izin menjadi 02775
.
Namun, saya masih tidak dapat mengunggah file. Kesalahan adalah: "553 Tidak dapat membuat file".
- Bisakah seseorang tolong jelaskan saya cara mengatur izin ini dengan benar?
- Apa pengaturan yang benar? Haruskah saya mengatur direktori home
ftpuser
ke/var/www
atau entah bagaimana berbeda?
Saya menemukan banyak topik di web tetapi tidak satupun dari mereka menawarkan solusi universal.
Terima kasih!
MEMPERBARUI:
Berikut adalah output ls -l
dari /var/www
:
drwxr-sr-x 3 root ftpuser 4096
Isi vsftpd.conf
file:
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chown_uploads=YES
chown_username=ftpuser
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
Jawaban:
Masalahnya adalah karena folder Anda dimiliki oleh
root
, alih-alihftpuser
.Untuk memperbaikinya, jalankan:
sumber
Saya menemukan saya telah menetapkan kepemilikan yang benar, tetapi bukan izin yang benar.
Jika folder Anda dimiliki oleh pengguna 'ftpuser' dan grup 'www-data' misalnya, seperti ...
drwxr-sr-x 3 ftpuser www-data 4096
Maka Anda mungkin belum menjalankan ...
sudo chmod -R g+w /var/www/ftpuserfolder
Yang memberikan izin tertulis kepada grup yang memiliki file / folder tersebut.
sumber