vsftpd: 530 Login falsch


58

Ich kann nicht vsfptdmit Ubuntu 12.04 arbeiten.

Meine vsftpd.confDatei sieht folgendermaßen aus und ich versuche, eine Verbindung mit einem lokalen Benutzer herzustellen:

listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem

Fehlermeldung in FileZilla:

Response:   331 Please specify the password.
Command:    PASS ****
Response:   530 Login incorrect.

1
versuche den vsftpd neu zu starten. > sudo /etc/init.d/vsftpd restart Ich hatte das gleiche Problem, aber das hat bei mir funktioniert.
v1h5

1
Eine andere Sache zu überprüfen: Was ist die Login-Shell für den Benutzer.

Wie kann ich die / etc / shells ändern?

Für mich gab es nur ein falsches Format für den Benutzer in / etc / passwd - ich musste das richtige Ausgangsverzeichnis, die richtige Shell und den richtigen ,,,Teil festlegen .
Heanz

Antworten:


113

Sichern Sie die Konfigurationsdatei, bevor Sie eine Änderung vornehmen.

sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.back

und dann editiere vsftpd.conf (mit vi oder nano)

nano /etc/vsftpd.conf

Nehmen Sie dann die folgende Änderung vor

pam_service_name = ftp

Speichern Sie Ihre Änderung und starten Sie den FTP-Server neu (wenn Sie Nano verwenden, drücken Sie CTRL+ O& Enter zum Speichern und CTRL+ Xzum Beenden)

sudo service vsftpd restart

Quelle: VSFTPD-Konfigurationsprobleme mit 12.04


3
Dieses Problem kann auch in debian7 durch diese Antwort gelöst werden.
ShgnInc

1
Was ist das Grundprinzip dahinter?
Joost

13
Sie deaktivieren die Standardzugriffskontrolle über PAM, da "ftp" standardmäßig keine Regeln enthält. Der Standard pam_service_name=vsftpverwendet die Datei /etc/pam.d/vsftpd. Für diese Datei ist es standardmäßig erforderlich, dass FTP-Benutzer eine Shell in der Liste haben /etc/shellsund dass sie nicht in der Liste aufgeführt sind /etc/ftpusers.
Jeroen Vermeulen - MageHost

Löste mir das selbe Problem unter Ubuntu 14.04. Vielen Dank!
Rotem

3
@JeroenVermeulenBVBA +1 Sie haben Recht. Ich fürchte, einige Leute wissen einfach nicht, was tatsächlich darunter passiert und warum es "funktioniert".
Stphane

11

Standardmäßig verwendet vsFTPd die Datei /etc/pam.d/vsftpd. Für diese Datei ist es standardmäßig erforderlich, dass FTP-Benutzer eine Shell in der Liste haben /etc/shellsund dass sie nicht in der Liste aufgeführt sind /etc/ftpusers. Wenn Sie diese beiden Dinge überprüfen, werden Sie wahrscheinlich das Problem finden.


1
Ich denke, dies sollte die akzeptierte Antwort sein, da es zeigt, wo das Problem liegt.
PhoneixS

5

Ich musste die vsftpd.conf nicht ändern. Ich musste nur sicherstellen, dass eine Shell in meiner / etc / passwd-Datei festgelegt war, die auch in / etc / shells enthalten war.

Also musste ich nach useradd ohne Shell sicherstellen, dass das Home-Verzeichnis erstellt wurde und der Benutzer / bin / bash als Shell hatte.


Danke, das ist mir passiert. Die anderen Lösungen arbeiteten, indem alle Sicherheitsmechanismen entfernt wurden, wobei dieser tatsächlich das Problem löste.
VinGarcia

5

Ich bin auf dieses Problem gestoßen, als ich versucht habe, mich mit root anzumelden, und habe es gerade gelöst.
mein vsftpd: version 3.0.2

Lösung:

Überprüfen Sie die folgende Datei (sie enthält eine Liste der Benutzer, denen der FTP-Zugriff untersagt ist):

/etc/ftpusers 

Beispiel

In meinem Fall habe ich root aus der Datei auskommentiert, dann hat es funktioniert.


Ich habe das gleiche getan, um mich als root anmelden zu können, aber es hat nicht funktioniert
VISHAL DAGA

4

Bitte nehmen Sie einige Änderungen in /etc/vsftpd.conf vor

pam_service_name = ftp

Wenn Sie den Standardzugriff auf das Verzeichnis / var / www für lokale Benutzer festlegen möchten, können Sie dies mit der nachstehenden Zeile tun.

local_root = / var / www

jetzt speichern und beenden ......

Starten Sie den vsftpd-Server mit dem sudo-Dienst vsftpd restart neu


2

Die vorgeschlagene Lösung hat bei mir nicht funktioniert. Ich habe den ftpBenutzer aufgegeben und meine Aufmerksamkeit auf den ubuntuBenutzer gelenkt . Ich habe sichergestellt, dass dem ubuntuBenutzer ein Kennwort zugeordnet ist .

Ich habe dafür gesorgt, dass der passive Modus aktiviert und local_enable=YESin der vsftpd.confDatei festgelegt wurde.

Ich konnte mich mit dem ubuntuKonto einwandfrei authentifizieren . Und ich habe erfolgreich eine große Datei auf meinen Amazon Ubuntu FTP-Server hochgeladen. Offensichtlich stimmte etwas mit dem ftpBenutzer nicht.


0

Ich habe Ubuntu 18.04 und LetsEncrypt-Zertifikate für die TLS-Verschlüsselung verwendet. Was funktionierte, war das Ändern des Namens von pam_service_name = ftp. Der Fehler, den ich in Filezilla bekam, war

"GnuTLS error -15": An unexpected TLS packet was received.

Hinweis: FTPS in Ubuntu 18.04 eingerichtet

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.