Vsftpd: 530 Неправильный вход в систему

Я не могу получить vsfptd работает на Ubuntu 12.04.

мой vsftpd.conf файл выглядит следующим образом, и я пытаюсь подключиться к локальному пользователю:

listen=YESanonymous_enable=NOlocal_enable=YESwrite_enable=YESdirmessage_enable=YESuse_localtime=YESxferlog_enable=YESconnect_from_port_20=YESsecure_chroot_dir=/var/run/vsftpd/emptypam_service_name=vsftpdrsa_cert_file=/etc/ssl/private/vsftpd.pem

Сообщение об ошибке в FileZilla:

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

Создайте резервную копию конфигурационного файла перед внесением изменений;

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

а затем отредактируйте vsftpd.conf (с vi или nano)

nano /etc/vsftpd.conf

Затем внесите следующее изменение

pam_service_name=ftp

Сохраните внесенные изменения и перезапустите ftp-сервер (если вы используете nano hit CTRL+O & введите, чтобы сохранить, затем CTRL+X для выхода)

sudo service vsftpd restart

Источник: Проблемы с конфигурацией VSFTPD с 12.04

По умолчанию vsFTPd использует файл /etc/pam.d/vsftpd. Этот файл по умолчанию требует, чтобы у пользователей FTP была оболочка, указанная в /etc/shells и требует их нет быть перечисленным в /etc/ftpusers. Если вы проверите эти 2 вещи, вы, вероятно, обнаружите, в чем проблема.

Мне не нужно было менять vsftpd.conf. Нужно было только убедиться, что оболочка установлена в моем /etc/passwd файл, который также был зарегистрирован в /etc/shells.

Так что в основном после useradd без оболочки мне нужно было убедиться, что домашний каталог был создан и что пользователь имел /bin/bash поскольку это оболочка.

Я столкнулся с этой проблемой, когда попытался войти в систему с помощью root и я только что решил эту проблему.

vsftpd: version 3.0.2

Решение:

Проверьте следующий файл (он содержит список пользователей, которым запрещен доступ по FTP):

/etc/ftpusers 

ftpusers

В моем случае я прокомментировал root из файла, тогда это сработало.

Пожалуйста, внесите некоторые изменения в /etc/vsftpd.conf:

pam_service_name=ftp

Если вы хотите установить доступ по умолчанию /var/www каталог для локального пользователя вы можете сделать это с помощью приведенной ниже строки:

local_root=/var/www

Теперь сохраните и выйдите.

Перезапуск vsftpd сервер, использующий:

sudo service vsftpd restart

Предложенное решение не сработало для меня. Я отказался от этого ftp пользователя, и переключил мое внимание на ubuntu пользователь. Я убедился, что существует пароль, связанный с ubuntu пользователь.

Я убедился, что включил пассивный режим, и установил local_enable=YES в vsftpd.conf файл.

Я смог пройти проверку подлинности просто отлично, используя ubuntu счет. И я успешно загрузил большой файл на свой FTP-сервер Amazon Ubuntu. Очевидно, что-то было не так с ftp пользователь.

Я использовал сертификаты Ubuntu 18.04 и LetsEncrypt для шифрования TLS. Что сработало, так это изменение названия pam_service_name=ftpошибка, которую я получал в Filezilla, была:

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

Ссылка: FTPS, настроенный в ubuntu 18.04

попробуйте перезапустить vsftpd. > перезапуск sudo / etc / init.d / vsftpd У меня была та же проблема, но это сработало для меня.

Еще одна вещь, которую нужно проверить :
что такое оболочка входа в систему для пользователя.
присутствует ли эта оболочка в /etc/shells

Для меня в /etc/passwd был просто неправильный формат для пользователя - мне нужно было установить правильный домашний каталог, оболочку и часть ,,,.

Пожалуйста, как я могу изменить /etc/shells ?