it-swarm.com.de

vsFTPd Standard-Upload-Dateiberechtigungen unter Ubuntu funktionieren nicht

Ich habe einen Server mit buntu 12.10 x64 und die letzte Version von vsFTPd.

Mein Benutzer example.com hat seinen Home-Ordner auf /var/www/example.com Gesetzt.

Ich habe darin einen public_html-Ordner erstellt, ihm 777 Berechtigungen erteilt und die Schreibberechtigungen des Home-User-Ordners entfernt. Alles funktioniert gut, aber:

Jede Datei, die ich per FTP (mit SmartFTP) hochlade, erhält einen chmod von 0.

Mein vsftpd.conf Hatte nur eine Zeile im Zusammenhang:

local_umask=022.

Ich habe versucht zu ändern zu:

file_open_mode=777
local_umask=002

Meine Dateien würden also beim Hochladen 775 Erhalten.

Aber nur meine hochgeladenen Ordner erhalten 775 Berechtigungen.

Meine hochgeladenen Dateien erhalten 1411 permissions

Kann mir jemand helfen, das zu lösen?

14
lucasmx

Habe meine Antwort bekommen:

Da die www-Daten der Benutzer sind, der für den Webserver verantwortlich ist, und Ihr normaler Benutzer für den FTP-Server verantwortlich ist, müssen Sie zuerst beide Mitglieder derselben Gruppe bilden: die Gruppe www-Daten.

Benutzerdefinierten Benutzer erstellen :

useradd –d /var/www/asasd.com -g www-data -m yourusername Auf diese Weise lautet das Ausgangsverzeichnis /var/www/asasd.com und Ihr Benutzer befindet sich in den www-Daten) Gruppe.

ändern Sie danach den Benutzerpass, indem Sie passwd eingeben.

Dann müssen Sie einen public_html Ordner in Ihrem Ihr Benutzername Home-Ordner erstellen, da der FTP-Server nicht in den Ordner schreiben kann Im Stammverzeichnis Ihres Home-Ordners müssen Sie einen Unterordner erstellen.

Entfernen Sie die Schreibberechtigungen Ihres Ordners Ihr Benutzernamechmod a-w /var/www/asasd.com

Wenden Sie dann neue Berechtigungen für den Unterordner an: chmod -R 775 /var/www/asasd.com/public_html (Beachten Sie, dass Sie 775 chmod verwenden müssen, da Sie Gruppenschreibberechtigungen und keine Benutzerschreibberechtigungen benötigen, da die gesamte Gruppe (FTP- und WWW-Daten) schreiben kann.) Besitzen Sie dann den Ordner für www-datachown -R www-data:www-data /var/www/asasd.com/public_html

Auf diese Weise müssen Sie in der Lage sein, FTP zu verwenden und einen Webserver zum Laufen zu bringen.

Viel Glück!

Komisch, dass diese Informationen so schwer zu finden sind. Teilen die Leute kein Wissen mehr?

7
lucasmx

Am Ende habe ich verwendet

file_open_mode=0777
local_umask=022

auf der vsftpd.conf. Das Problem war, dass sowohl der FTP-Benutzer als auch der WWW-Datenbenutzer Berechtigungen zum Schreiben benötigten, sodass ich WWW-Daten und FTPuser mit der WWW-Daten-Benutzergruppe und CHMOD -R 775 mit allen Dateien auf/var/www verbinden musste. Mit 775 CHMOD hätte die Gruppe die Berechtigung zum Lesen, Schreiben und Ausführen. Jetzt funktioniert es perfekt.

11
lucasmx

Ich hatte auch ein Problem, da die Dateiberechtigung geändert wird, wenn ich eine Datei über mein FTP hochlade. Dies wird mit einer Zeilenänderung in meinem vsftpd.conf

local_umask=val(like 022,007,etc.,)

0
vijay