Ich habe einen Server mit Ubuntu 12.10 x64 und die letzte Version von vsFTPd.
Mein Benutzer example.com hat seinen Home-Ordner eingestellt auf /var/www/example.com
,
Ich habe darin einen public_html-Ordner erstellt und ihm 777
Berechtigungen gegeben und die Schreibberechtigungen des privaten Benutzerordners entfernt. Alles funktioniert gut, aber:
Jede Datei, die ich per FTP (mit SmartFTP) hochlade, erhält eine chmod von 0.
Meine vsftpd.conf
hatte nur eine Zeile im Zusammenhang:
local_umask=022.
Ich habe versucht zu wechseln:
file_open_mode=777
local_umask=002
So würden meine Dateien 775
sofort nach dem Hochladen erhalten.
Aber nur meine hochgeladenen Ordner erhalten 775
Berechtigungen.
Meine hochgeladenen Dateien erhalten 1411 permissions
Kann mir jemand helfen, das zu lösen?
Antworten:
Am Ende habe ich verwendet
auf der vsftpd.conf. Das Problem war, dass sowohl der FTP-Benutzer als auch der WWW-Daten-Benutzer Berechtigungen zum Schreiben benötigten, so dass ich WWW-Daten und FTP-Benutzer zur WWW-Daten-Benutzergruppe hinzufügen musste und CHMOD -R 775 alle Dateien auf / var / www - auf diese Weise, Mit 775 CHMOD hätte die Gruppe die Berechtigung zum Lesen, Schreiben und Ausführen. Jetzt funktioniert es perfekt.
quelle
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 festlegen: die Gruppe WWW-Daten.
Benutzerdefinierten Benutzer erstellen:
useradd –d /var/www/asasd.com -g www-data -m yourusername
Auf diese Weise ist das Ausgangsverzeichnis /var/www/asasd.com und Ihr Benutzer befindet sich in der WWW-Datengruppe .Ändern Sie anschließend den Benutzerpass, indem Sie Folgendes eingeben
passwd
.Dann müssen Sie einen public_html- Ordner in Ihrem Benutzernamen erstellen - , da der FTP-Server nicht in den Stamm schreiben kann. Sie müssen einen Unterordner erstellen.
Entfernen Sie die Schreibrechte Ihres Benutzernamens Ordner
chmod a-w /var/www/asasd.com
Wenden
chmod -R 775 /var/www/asasd.com/public_html
Sie dann neue Berechtigungen für den Unterordner an: (Beachten Sie, dass Sie 775 chmod verwenden müssen, da Sie Gruppenschreibberechtigungen und keine Benutzerschreibberechtigungen benötigen, damit die gesamte Gruppe (FTP- und WWW-Daten) schreiben kann.) Ordner für die WWW-Datenchown -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 zu betreiben.
Viel Glück!
Witzig, diese Informationen sind so schwer zu finden. Teilen die Leute kein Wissen mehr?
quelle
Ich hatte auch ein Problem, da die Dateiberechtigung geändert wird, wenn ich eine Datei über mein FTP hochlade. Dies ist mit einem Zeilenwechsel in my behoben
vsftpd.conf
local_umask=val(like 022,007,etc.,)
quelle
local_umask
hat einziger Wert sein, und es muss0
als Präfix für Oktalwert.Sie müssen den Besitz dieser Datei ändern:
quelle