Habe einen FTP-Server und einen Benutzer eingerichtet, aber anscheinend kann ich keine Dateien hochladen oder bearbeiten.
Obwohl der Benutzer die Berechtigung 777 eingegeben hat, kann ich nicht einmal Dateien in den Stammordner des Benutzers hochladen.
Server-Betriebssystem: Ubuntu
Client-Betriebssystem Windows
FTP-Server/Client: fileZila
Protokoll:
Status: Connection established, waiting for welcome message...
Status: Insecure server, it does not support FTP over TLS.
Status: Server does not support non-ASCII characters.
Status: Logged in
Status: Starting download of /var/www/html/wp/staged/wp-content/themes/Newspaper/Newspaper/woocommerce/single-product.php
Status: File transfer successful, transferred 1,193 bytes in 1 second
Status: Starting download of /var/www/html/wp/staged/wp-content/themes/Newspaper/Newspaper/woocommerce/single-product.php
Status: File transfer successful, transferred 1,193 bytes in 1 second
Status: Starting upload of C:\Users\User\AppData\Local\Temp\fz3temp-2\single-product.php
Command: PASV
Response: 227 Entering Passive Mode (165,227,173,119,117,244).
Command: STOR single-product.php
Response: 550 Permission denied.
Error: Critical file transfer error
Dateiberechtigung:
Gruppen und Benutzer:
vsftpd.conf:
# Standalone mode
listen=YES
max_clients=200
max_per_ip=4
# Access rights
anonymous_enable=YES
local_enable=NO
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
# Security
anon_world_readable_only=NO
connect_from_port_20=YES
hide_ids=YES
pasv_min_port=50000
pasv_max_port=60000
# Features
xferlog_enable=YES
ls_recurse_enable=NO
ascii_download_enable=NO
async_abor_enable=YES
# Performance
one_process_model=YES
idle_session_timeout=120
data_connection_timeout=300
accept_timeout=60
connect_timeout=60
anon_max_rate=50000
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
#Userlist
userlist_deny=NO
userlist_enable=YES
userlist_file=/etc/vsftpd.allowed_users
vsftpd.allowed_users:
ftpuser
Irgendeine Idee, was hier los ist?
Update: Ich habe die Berechtigung des Ordners, der die Datei enthält, auf 777 geändert, und es funktioniert immer noch nicht.
Protokoll:
Status: Logged in
Status: Starting download of /var/www/html/wp/staged/wp-content/themes/Newspaper/Newspaper/woocommerce/single-product.php
Status: File transfer successful, transferred 1,193 bytes in 1 second
Status: Starting upload of C:\Users\User\AppData\Local\Temp\fz3temp-2\single-product.php
Command: PASV
Response: 227 Entering Passive Mode (*xxxxxxxxxxxx*).
Command: STOR single-product.php
Response: 550 Permission denied.
Error: Critical file transfer error
Status: Retrieving directory listing of "/var/www/html/wp/staged/wp-content/themes/Newspaper/Newspaper"...
Status: Directory listing of "/var/www/html/wp/staged/wp-content/themes/Newspaper/Newspaper" successful
Status: Disconnected from server
Status: Connection closed by server
Antwort1
Ihr Server scheint weit offen gewesen zu sein. Sie hatten
anonymous_enable=YES
local_enable=NO
ftp
Daher kann sich jeder mit Benutzernamen oder ohne echte Kennwortprüfung mit dem FTP-Server verbinden anonymous
und auf alle Dateien oder Verzeichnisse zugreifen, die das mit konfigurierte Benutzerkonto ftp_username
(nicht angegeben, standardmäßig ftp
) verwenden kann. Solche anonymen Anmeldungen werden außerdem strenger kontrolliert als normale Anmeldungen mit Kennwortauthentifizierung.
Der Upload ist möglicherweise fehlgeschlagen, weil vsftpd
anonyme Benutzer möglicherweise nicht vorhandene Dateien überschreiben dürfen: Ich denke, Sie hätten die alte Datei explizit löschen oder umbenennen müssen, bevor Sie als anonymer Benutzer eine neue Datei hochladen konnten. Aber weil Sie
anon_other_write_enable=NO
das wäre Ihnen nicht gestattet gewesen.
Wenn Sie zur Website-Wartung einen FTP-Server verwenden, sollten Sie die Einstellungen unbedingt anonymous_enable
auf „NEIN“ und local_enable
„JA“ setzen, um nicht authentifizierten Zugriff zu unterbinden. Andernfalls könnte jeder mit einem FTP-Client Ihre Site problemlos beschädigen.
(Und Authentifizierung ohne Verschlüsselung istAlsoletztes Jahrtausend: Sie würden FTP über TLS einrichten wollen, es sei denn, Sie erlauben nur FTP-Zugriff aus sicheren privaten Netzwerken!)
Antwort2
Ich habe vsftpd mit folgendem Befehl deinstalliert:
sudo apt-get purge vsfpt
Konfigurieren Sie es anschließend mithilfe dieser einfachen Anleitung: So richten Sie vsftpd ein
Ich weiß immer noch nicht, was das Problem war, aber jetzt funktioniert es.