Я не могу заставить vsfptd
работать над Ubuntu 12.04.
мой vsftpd.conf
файл выглядит следующим образом, и я пытаюсь соединиться с локальным пользователем:
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
Сообщение об ошибке в 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-сервер (если вы используете нано-хит CTRL < / kbd> + O kbd> & amp; ввод, чтобы сохранить, затем CTRL kbd> + X kbd> для выхода)
sudo service vsftpd restart
Источник: Проблемы конфигурации VSFTPD с 12.04
По умолчанию vsFTPd использует файл /etc/pam.d/vsftpd
. Этот файл по умолчанию требует, чтобы у пользователей FTP была указана оболочка в /etc/shells
, а в /etc/ftpusers
они должны указывать , а не . Если вы проверите эти две вещи, вы, вероятно, найдете, в чем проблема.
Мне не нужно было менять vsftpd.conf. Нужно только убедиться, что в моем файле / etc / passwd установлена оболочка, которая также была указана в /etc/shells.
Так что в основном после useradd без оболочки мне нужно было убедиться, что домашний каталог был создан и что у пользователя была / bin / bash в качестве оболочки.
Я столкнулся с этой проблемой, когда попытался войти в систему с root , и я просто решил ее.
my vsftpd: версия 3.0.2
Решение:
проверьте следующий файл (он содержит список пользователей, которым запрещен доступ по FTP):
/etc/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
что-то не так.
я использовал человечность 18.04 и сертификаты LetsEncrypt для шифрования TLS. То, что работало, меняло имя pam_service_name=ftp ошибка, я входил в Filezilla, был
"GnuTLS error -15": An unexpected TLS packet was received.