Я добавил FTP-сайт в IIS 8.5 на моей виртуальной машине Windows Server 2012 R2 Datacenter в Azure и добавил пользователя Windows «ftpuser», которого я хочу использовать для доступа по ftp. Все работает нормально, если я удаленный рабочий стол на сервер и запускаю ftp localhost
в командной строке, но если я попытаюсь получить доступ к FTP-серверу удаленно (или даже локально, но с использованием внешнего IP-адреса), я могу подключиться нормально, но процесс входа в систему всегда завершается ошибкой 530 Authentication failed.
.
У меня включено ведение журнала для FTP-сервера, но для этих неудачных попыток ничего не регистрируется.
Я проверил, есть ли у пользователя разрешения «Разрешить локальный вход» и «Доступ к этому компьютеру из сети» (группа «Пользователи» есть для обоих).
Брандмауэр Windows и конечные точки виртуальных машин Azure настроены для передачи TCP-порта 21 и настроенного диапазона пассивных TCP-портов (60100-60104). Внешний IP-адрес виртуальной машины устанавливается как «Внешний IP-адрес брандмауэра» в разделе «Поддержка брандмауэра FTP» в диспетчере IIS.
Вот как выглядит ведение журнала в Filezilla:
Status: Connecting to x.x.x.x:21...
Status: Connection established, waiting for welcome message...
Status: Insecure server, it does not support FTP over TLS.
Command: USER ftpuser
Response: 331 User name okay, need password for ftpuser.
Command: PASS *********
Response: 530 Authentication failed.
Error: Critical error: Could not connect to server
Я захватил FTP-пакеты как на клиенте, так и на сервере с помощью Wireshark, и они показывают, что имя пользователя и пароль принимаются сервером, но что он отклоняет запрос с 530, когда он получен от клиента, который не присоединиться localhost
.
Есть идеи, что вызывает сбой этих удаленных входов?