Рубрики
Windows Веб-мастеринг Софт

Настройка ftp-сервера IIS на Windows 7

Иногда проще и быстрее передать файл через собственный ftp-сервер, чем закачивать на файлообменник. Ниже рассмотрена процедура установки и настройки ftp-сервера IIS, входящего в состав Windows 7.  

Содержание:

Установка FTP-сервера.

FTP-сервер входит в состав служб IIS. Для его установки открываем Панель управления -> Программы -> Включение или отключение компонентов Windows. Раскрываем раздел Службы IIS и ставим галочки напротив следующих компонентов: Служба FTP и Консоль управления IIS.

Установка службы FTP
Установка службы FTP

Настройка FTP-сервера.

Открываем Панель управления -> Система и безопасность -> Администрирование -> Управление компьютером (можно быстрее: меню Пуск -> правый клик на Компьютер -> в меню выбрать пункт Управление). В открывшемся окне раскрываем группу Службы и приложения и открываем Диспетчер служб IIS. В окне Подключения выбираем папку Сайты, затем в правом окне Действия нажимаем на ссылку Добавить FTP-сайт.

Создание FTP-сайта
Создание FTP-сайта

В мастере создания ftp-сайта указываем его название и расположение (по умолчанию c:\inetpub\ftproot).

Название и расположение сайта
Название и расположение сайта

Далее указываем параметры привязки и SSL. Раздел привязка оставляю без изменений. Опцию «Запускать ftp-сайт автоматически» отключаю (ftp мне нужен только время от времени). В разделе SSL выставляю опцию «Без SSL».

Параметры привязки и SSL
Параметры привязки и SSL

В следующем окне оставляем все без изменений и нажимаем Готово.

Сведения о проверке подлинности и авторизация
Сведения о проверке подлинности и авторизация

Сайт создан. Теперь можно перейти к дополнительным параметрам для тонкой настройки (например ограничить максимальное количество одновременных подключений). Выделите только что созданный сайт, справа в панели Действия нажмите на Дополнительные параметры.

Дополнительные параметры
Дополнительные параметры

Следующий этап — настройка брандмауэра Windows. Откройте Панель управления -> Система и безопасность -> Брандмауэр Windows -> Дополнительные параметры. В разделе «Правила для входящих подключений» находим и активируем «FTP-сервер (входящий трафик)» и «FTP Server Passive (FTP Passive Traffic-In)». Последнее правило позволяет подключаться ftp-клиенту в пассивном режиме.

Открываем порт 21 (входящий)
Открываем порт 21 (входящий)
Открываем порты 1023-65535 (пассивный режим)
Открываем порты 1023-65535 (пассивный режим)

В разделе «Правила для исходящего подключения» находим и активируем «FTP Server (FTP Traffic-Out)».

Открываем порт 20 (исходящий)
Открываем порт 20 (исходящий)

Если в системе установлен дополнительный брандмауэр (Comodo, Outpost и т.п.), то в нем также необходимо открыть порт 21 (TCP) для входящих подключений и порт 20 (TCP) для исходящих.

Если подключение к Интернет осуществляется с помощью маршрутизатора, и вы хотите сделать свой сервер доступным интернет-пользователям, тогда необходимо настроить проброс портов на маршрутизаторе. На моем Dlink DI-804HV это выполняется в разделе Virtual Server.

Настройка маршрутизатора
Настройка маршрутизатора

192.168.10.4 — ip-адрес ftp-сервера в локальной сети.

Настройка прав пользователей.

Если оставить все как есть, то подключиться к ftp-серверу сможет любой пользователь (включен анонимный доступ) с правами только на чтение (можно скачивать, но записывать и изменять файлы нельзя). Предположим, что нам нужно сделать доступ для доверенных пользователей, которые имели бы права записи и изменения файлов.

Открываем Панель управления -> Система и безопасность -> Администрирование -> Управление компьютером (Пуск -> правый клик на Компьютер -> в меню выбрать пункт Управление). Далее раскрываем группу Локальные пользователи и группы (данная настройка доступна только в редакциях Бизнес и Максимальная). Правый клик на папке Группы, в меню выбираем Создать группу.

Создание группы пользователей ftp (1)
Создание группы пользователей ftp (1)

Вводим название группы — Пользователи FTP, описание (можно не вводить) и нажимаем кнопку Создать.

Создание группы пользователей ftp (2)
Создание группы пользователей ftp (2)

Теперь необходимо создать пользователя. Делаем правый клик на папке Пользователи и в меню выбираем Новый пользователь.

Создание пользователя ftp (1)
Создание пользователя ftp (1)

Вводим имя пользователя (например ftp_user_1), пароль (не менее 6 символов), выставляем галочки напротив опций «Запретить смену пароля пользователем» и «Срок действия пароля не ограничен».

Создание пользователя ftp (2)
Создание пользователя ftp (2)

Пользователь создан. Теперь необходимо присвоить ему ранее созданную группу Пользователи ftp. Для этого открываем свойства пользователя и переходим на закладку «Членство в группах». По умолчанию новому пользователю присваивается группа Пользователи, удаляем ее. Нажимаем кнопку Добавить -> Дополнительно -> Поиск. Откроется список групп пользователей. Выбираем группу Пользователи FTP и нажимаем Ok. В итоге получаем:

Создание пользователя ftp (3)
Создание пользователя ftp (3)

Нажимаем Ok и переходим к следующему этапу.

На этапе создания ftp-сайта нам было необходимо выбрать рабочий каталог (c:\inetpub\ftproot). Теперь для группы «Пользователи FTP» необходимо настроить права доступа к этому каталогу. Открываем c:\inetpub в проводнике, открываем свойства папки ftproot, переходим на закладку Безопасность и нажимаем кнопку Изменить. В открывшемся окне нажимаем кнопку Добавить и выбираем группу «Пользователи FTP» (как при создании пользователя). Устанавливаем уровень прав — «Полный доступ» и нажимаем Ок.

Установка прав доступа к папке ftproot
Установка прав доступа к папке ftproot

Последний этап. Вновь открываем Диспетчер служб IIS и выделяем наш ftp-сервер (Test FTP). В панели управления ftp-сайтом выбираем «Правила авторизации FTP». Добавляем разрешающее правило. В открывшемся окне выбираем опцию «Указанные роли или группы пользователей». Внизу в текстовом поле руками прописываем название нашей группы (Пользователи FTP), далее ставим галочки в разделе Разрешения напротив Чтение и Запись и нажимаем Ок.

Добавляем правило авторизации FTP
Добавляем правило авторизации FTP

На этом настройка завершена.

В начале мы не выбрали опцию автоматического запуска сервера, поэтому не забываем запустить его вручную (правый клик на названии сайта -> Управление FTP-сайтом -> Пуск).

Как подключиться?

Вариант с использованием проводника Windows.
Открываем Компьютер (Vista, Win 7) или Мой Компьютер (XP).
Для анонимного доступа просто вводим в адресную строку адрес сервера (ftp://192.168.10.4).
Чтобы войти с именем пользователя и паролем вводим адрес вида: ftp://[имя пользователя]:[пароль]@[адрес ftp-сервера]. Например ftp://ftp_user_1:qwerty@192.168.10.4 — для подключения из локальной сети. Для подключения из Интернет локальный адрес заменяем на внешний или на доменное имя.

Как настроить анонимный доступ?

Как сделать свой ftp-сервер доступным из Интернет?

Если компьютер подключен к Интернет на прямую, то никаких дополнительных действий предпринимать не нужно.

Если компьютер подключен к Интернет через роутер, тогда в панели управления роутера необходимо настроить форвардинг порта TCP 21 (часто это еще называют виртуальным сервером). Настройка форвардинга порта на примере D-link DI-804.

Ссылки по теме:

508 ответов к “Настройка ftp-сервера IIS на Windows 7”

Доброе время суток! Облазил весь интернет, а тут всё понятно и то что нужно. Настроил, работает. Теперь задача у меня есть. Подскажите алгоритм её решения? Что нужно делать и возможно ли вообще это сделать в ISS

Нужно что бы у каждого сотрудника был свой вход и своя папка на FTP сервере. По одному аккаунту, я так понял «пользователь», он входит с правами на чтение и запись. И у него есть логин/пароль (ещё один «пользователь») который может дать кому то из сотрудников для того что бы тот забрал у него файлы, доступ только для чтения. И так надо ,ну скажем человек 10. Причём каждый сотрудник не должен иметь доступ к папкам других пользователей. Лучше что бы даже не видел их. Максимум что я смог сделать, это создать двух пользователей с разными правами. Когда создаю ещё пользователей, папки другого сотрудника становятся видны. Если изолирую пользователей только своими папками, то входа нет на сервер. Если папки вне рабочей директории, виртуальные каталоги, то тоже нет доступа. Подскажите что я не так делаю? Какой алгоритм решения моей задачи? Премного благодарен.

Как правильно изолировать пользователей.
В корне создаем папку LocalUser. Внутри нее создаем папки с именами пользователей. Включаем изоляцию пользователей (Каталог имени пользователя (отключить глобальные виртуальные каталоги)).
Пользователи для которых не создана папка на сервер зайти не смогут.

Но с изоляцией не получится забрать файлы. Пользователю надо будет предоставлять свой логин и пароль с правами на запись…

Когда создаю ещё пользователей, папки другого сотрудника становятся видны.

Думаю, единственный вариант решить вашу задачу — создать папки на каждого пользователя, для каждой папки настроить разрешения.
Но при этом скрыть список папок будет не просто.
Можно попробовать отключить разрешение «Список содержимого папки» для папки содержащей папки пользователей… Но при этом входить на сервер придется сразу в нужную папку. В ftp-клиенте надо будет указывать в настройках подключения удаленный каталог в который нужно перейти…

Спасибо, завтра попробую так сделать. А вот в корне создаём папку LocalUser. Это в корне диска, или в корне папки где установлен FTP сайт? И удалённый каталог можно указать просто в адресе? Типа ftp:// ip/удалённый каталог?

LocalUser в корне ftp-сайта…

И удалённый каталог можно указать просто в адресе? Типа ftp:// ip/удалённый каталог?

Попробуйте так. Если не получится тогда только через полноценный ftp-клиент.

Добрый день! К сожалению та же самая история. Как только включаю изоляцию пользователей, сразу пропадает доступ на сервер. И где кстати, надо включать изоляцию, в настройках сервера, или в настройках сайта?

Странно… обычно доступ пропадает, если отсутсвует папка соответствующая имени пользователя.

Изоляцию можно включить и на уровне сервера, и на уровне сайта. Первый вариант будет влиять на все созданные сайты. Я предпочитаю второй вариант.

Если не включаю изоляцию, но указываю каталог начала сеанса, попадает именно в этот каталог. Но переходя на уровень выше, попадаю ко всем папкам :) Что то с изоляцией я не то видимо что то делаю

Возможно-ли настроить несколько ftp сайтов на одном компьютере? один сайт, дефлтный, на диске С, я настроил по Вашей рекомендации, для пользователей нашей группы. Работает, заходим с рабочих компов на общий для группы комп. Но нужен еще по возможности ftp доступ к двум дискам на этом же компе. Сайты создаются, я их привязываю прямо к требуемым дискам. Но затем новые сайты не запускаются — порты одинаковые (21), а адрес тоже один на этом компе. Нужно сменить порты для новых сайтов? Какие можно использовать?

Да, в привязках сайта надо указать другой порт. В принципе можно брать любой из диапазона 1024-65000, к примеру 2121 и 2122.
При подключении указываете адрес и порт, например 192.168.1.10:2121

Добрый день…
Помогите мне пожалуйста.
зделал все по вышеизложенной инструкции но.. не работает что-то.. с другого компа ввожу ip и пишет что нет доступа..
что не так? как сделать?..
задача в том чтобы был доступ к папке из интернета..
и еще я не знаю ройткр у меня или нет..
и вообще, я дизайнер а не сисадмин.. но меня почему-то наградили этим заданием.. :( помогите мне.. оооочень Вас прошу!…

А подробнее: где настраиваете (дома или в офисе)?
Какой ip-адрес компа на котором настраиваете сервер и какой Ip-адрес компа с которого пытаетесь подключиться?
Получается ли подключиться с того же компа на котором установлен сервер?
Установлен ли на этом компе дополнительный антивирус/фаервол?

в офисе…
ip адрес компа на котором настраиваю 192.168.1.40, адрес с которого проверяю не знаю.. проверяю на разных компах.
с того же компа (на котором установлен сервер) зайти получается, но не удается саздать папку или добавить файл, хотя доступ я сделал полный.. антивирус установлен Касперский.. демоверсия.

> не удается саздать папку или добавить файл, хотя доступ я сделал полный
А настраиваете анонимный доступ или по имени пользователя?

> антивирус установлен Касперский
Какая версия? Отключите его полностью, если удастся зайти с другого компа, то значит проблема в нем.

Может стоит обнулить все настройки и попробывать заново.. т.к. до того как нашел ваш сайт пробовал настроить чер программы.. но ничего не получилось.. искал дальше и нашел вас…
только вот я не знаю как сбросить теперь все настройки чтобы все сделать заново…

Я сделал по инструкции все еще раз…
Захожу по ftp://…….. открывается окно логин и пароль… ввожу логин и пароль и он его не принимает….

PS у меня сейчас голова лопнет!…

Не… надо расслабиться )

Кстати, то что вы используете браузер для подключения — это плохо. Поставьте хотя бы Тотал Коммандер, тогда хоть сообщения об ошибках видны будут. А так только нервы тратить…

Народ, спасите! у меня в разделе «Включение и отключение компонентов Windows» ВООБЩЕ НЕТ раздела «Службы IIS», соотв-но галку ставить негде;) Windows 7 x64 Ultimate, свежеустановленная.

От чего такая ерунда могла произойти?

На Win7Pro + Dir300 настроил по Вашей инструкции (спасибо) FTP сайт вхожу с адресами внутреннего и внешнего IP (без указания пользователя и пароля в адресе) имею следующую картину:
— Проводник: по обоим адресам запрашивает пользователя и пароль — при вводе разрешает доступ
— IE: без запроса пароля и пользователя разрешает доступ по обоим адресам
— FireFox: по внутреннему запрашивает и при вводе пускает, по внешнему запрашивает и при вводе дает ошибку 530
Я хотел бы отключить анонимный доступ оставить только для авторизованных пользователей.Буду признателен за совет. Спб.

Отключить анонимный доступ легко — в Правилах авторизации FTP снимаем разрешение на чтение и запись для анонимных пользователей.

Используете активный или пассивный режим для подключения?

Только флажки в соответствующих полях или отключаем правило — правило отключал результат не менялся.

В IE не отключал, проверил стоит по умолчанию пассивный, в FireFox не нашел.

М.б. важно: описанный в первом запросе результат был получен с родного компьютера по сети еще не пробовал.

всё сделал как написано за исключением шага с настройками прав…..но не работает =(……в браузере выдает » Невозможно подключиться. Возможно, FTP-сервер перегружен.
Проверьте, верно ли написан адрес, или попробуйте найти сайт»

комп перезагружали после настройки…не подскажите в чем может быть дело?
спасибо.

Я рекомендую для тестирования настройки ftp-сервера, браузер не использовать. Нужен нормальный ftp-клиент (хотя бы Тотал Командер) — он выдаст гораздо больше информации по ошибкам.

Если же все-таки в качестве клиента браузер, то для начала, в его настройках отключить использование пассивного режима. Как отключить для Эксплорера см в этом комменте.

Потом проверить открыт ли порт TCP 21 — https://www.q2w3.ru/2010/03/28/1443/#p2.
Если закрыт, проверить проброс порта на роутере, настройку брандмауэра Windows.
Если порт открыт, но все равно не подключается, то проверить настройку анонимного доступа (см. здесь)

Здравствуйте. Подскажите пожалуйста. дело в том, что мне необходимо по работе скачать ролик с ftp. Сайт одной из фирм города, логин, порт и пароль мне сказали. А как дельше быть, не знаю, и спросить стыдно. Скачала программу FileZilla, но попытки правильно настроить исчерпали себя. Выдает ошибку.Какой хост писать в этом случае(62.33……..241)?порт? Спасибо!

Попробуйте подключиться через веб-браузер (Эксплорер например).
В адресной строке введите ваши данные для подключения в виде:
ftp://[имя пользователя]:[пароль]@[адрес ftp-сервера]
т.е. допустим, что адрес сервера — http://ftp.superftp.ru, пользователь — ftpuser, пароль — 123, тогда строка будет выглядеть так:
ftp://ftpuser:123@ftp.superftp.ru

Если подключиться не получается (при этом ошибки в имени пользователя, пароле и адресе сайта нет), тогда отключите использование пассивного режима. В Эксплорере для этого откройте Свойства обозревателя -> закладка Дополнительно -> в списке найдите и отключите опцию «Использовать пассивный ftp-протокол».

FTP работал, пытался добавить пользователя, забарахлил.
Удалил, создал вновь и теперь не могу зайти.
Дает ошибку:
Статус: Определение IP-адреса для ftp.gazremont.com
Статус: Соединяюсь с xxx.xxx.xxx.xxx:21...
Статус: Соединение установлено, ожидание приглашения...
Ответ: 220 Microsoft FTP Service
Команда: USER ftpuser
Ответ: 530 Valid hostname is expected.
Ошибка: Невозможно подключиться к серверу

Юзер в группе доступа, групе даны полные права на папку.
В чем может быть проблема?
P.S. Сервер 2008R2 Std

В привязках сайта указано имя виртуального узла (ftp.gazremont.com)?
Если да, и если сайт один, то лучше убрать.

Еще вариант — имя пользователя вводить в виде http://ftp.gazremont.com|ftpuser

По теме:
http://24x7servermanagement.com/blog/?p=830
http://blogs.iis.net/jaroslad/archive/2009/04/16/addressing-the-separator-problem-for-virtual-ftp-sites-ftp-7-5.aspx

Добавить комментарий