Мы пытаемся дублировать наш сервер в облаке Azure. Оба сервера — Windows 2012 R2. FTP работает на исходном сервере, но не на дубликате. Кроме того, дубликат сервера поддерживает локальный FTP-доступ, но не удаленный доступ. Интересно, что он распознает неверные учетные данные с кодом 530, но верные учетные данные приводят к странице «сброса подключения». Мы используем IIS для управления веб-сайтом сервера.
Я знаю, о чем вы думаете. Это попахивает какой-то проблемой правил брандмауэра. И я провел довольно много исследований, но безрезультатно. В частности, этовопросServerFault, казалось, напрямую решил проблему, но исправление не сработало.
Единственная другая подсказка, которую я могу собрать, это то, что при попытке подключения через FileZilla соединение всегда прерывается сразу после команды PASV. Это как-то связано с пассивным FTP, я полагаю, но для этого, похоже, есть соответствующие правила брандмауэра.
Мы не используем SSL. Я что-то упускаю в IIS? Что мне сделать, чтобы FTP работал удаленно? Заранее спасибо.
решение1
Пассивный FTP требует, чтобы FTP-сервер имел открытые порты для него из внешней сети. Azure VM используют NAT и, таким образом, нуждаются в дополнительной настройке для поддержки пассивного FTP.
(Примерный) контрольный список:
- Установите внешний VIP в FTP-менеджере IIS
- Установите диапазон портов для использования (здесь вы можете проявить умеренность — настройка тысяч портов не нужна, если только это не очень-очень загруженный FTP-сервер с большим количеством одновременных сеансов)
- Настройка брандмауэра виртуальной машины для разрешения FTP-трафика (помните диапазон пользовательских портов, который вы определили на предыдущем шаге)
- Добавьте удаленные конечные точки (тот же диапазон портов, что и в предыдущих шагах) в Azure к виртуальной машине, чтобы порты были перенаправлены.
Здесь— это запись в блоге Microsoft, которая поможет вам в этом.