Menyiapkan izin VSFTPD dengan server Apache

8

Saya memiliki VM yang menjalankan Ubuntu 10.10. Saya menggunakan Netbeans dan mengunggah file ke ftp di mesin virtual. Saya menggunakan vsftpd.

Masalah yang saya alami adalah, pemilik folder /var/wwwadalah pengguna apacheagar server apache dapat membaca file. Sejauh ini bagus.

Tetapi ketika saya mencoba mengunggah file dari pengguna ftp user1saya tidak bisa. Saya tahu apa masalahnya. Pertanyaan saya adalah, bagaimana cara mengatur izin dengan benar untuk pengguna apachedan user1untuk dapat menulis / membaca semua file di direktori / var / www?

Tek
sumber

Jawaban:

17

Buat grup www-usersdan buat itu pemilik grup /var/www. Kemudian tetapkan pengguna apachedan user1ke grup dan atur permison pada /var/wwwdirektori ke 775. Ini akan memungkinkan user1dan setiap pengguna lain dalam www-usersgrup untuk membaca dan menulis /var/www; itu juga akan memudahkan otorisasi pengguna lain untuk menulis /var/www- cukup berikan pengguna ke www-usersgrup.

Sunting: Izin yang benar pada /var/wwwadalah 2775, yang termasuk setgid sehingga file dan direktori di dalamnya /var/wwwmewarisi kepemilikan grup /var/www.

bwDraco
sumber
Jawaban yang bagus Kecuali apache tidak mampu membaca file setelah saya meng-upload sesuatu dengan user1Aku berlari perintah berikut: chown -R apache:www-users /var/www, usermod -g www-users apache, usermod -g www-users user1, chmod 775 /var/www. Apakah saya melewatkan sesuatu?
Tek
Umask dapat diatur untuk menolak izin baca dari orang lain; lihat apakah mengubah umask membantu.
bwDraco
Ya. Itu bagian dari itu.
Tek
10
Berikut adalah langkah-langkah seandainya ada googler yang membutuhkan petunjuk. 1) set up vsftpd for umask 0027 (/etc/vsftpd.conf) [local_umask=0027] 2) create www-users group (groupadd www-users) 3) add user to group (usermod -a -G group user) 4) Set apache to run as www-users group (httpd.conf) 5) chgrp www-users /var/www 6) chmod 2775 /var/www
Tek
2
Juga, cobalah menambahkan izin setgid ke direktori: chmod g+s /var/www. Ini akan memastikan bahwa file dan direktori yang dibuat di dalam direktori dimiliki oleh grup yang memiliki direktori.
bwDraco