- wiki.sys-adm.org.ua
- Инструменты пользователя
- Инструменты сайта
- Содержание
- FTP + NAT
- Введение
- Режимы работы FTP: активный и пассивный
- Первоначальная настройка брандмауера
- Тестирование
- Как настроить FTP-сервер дома без помощи бабушки
- Что будем делать?
- Способ 1 – Встроенный FTP
- Частые вопросы по способу 1
- Способ 2 – FileZilla Server
wiki.sys-adm.org.ua
Инструменты пользователя
Инструменты сайта
Содержание
FTP + NAT
Введение
Клиент посылает запросы серверу и принимает файлы. В качестве клиентов могут использоваться — internet explorer, Windows Commander, NetVampir, gftp и т.д.
Сервер обрабатывает запросы клиента на получение файла. В качестве серверов могут использоваться — vsftpd, IIS, wuftpd, proftpd и т.д.
Режимы работы FTP: активный и пассивный
В Активном режиме, когда клиент говорит «Привет!» он так же сообщает серверу номер порта (из динамического диапазона 1024-65535) для того, чтобы сервер мог подключиться к клиенту для установки соединения для передачи данных. FTP -сервер подключается к заданному номеру порта клиента используя со своей стороны номер TCP-порта 20 для передачи данных.
В Пассивном режиме, после того как клиент сказал «Привет!», сервер сообщает клиенту номер TCP-порта (из динамического диапазона 1024-65535), к которому можно подключится для установки соединения передачи данных. Главное отличие между Активным режимом FTP и Пассивным режимом FTP — это сторона, которая открывает соединение для передачи данных. В Активном режиме, клиент должен принять соединение от FTP -сервера. В Пассивном режиме, клиент всегда инициирует соединение.
Первоначальная настройка брандмауера
Создаем минимальный набор правил в нашем фаерволе. Этот пример создан лишь для того, чтобы показать принцип работы iptables. Для более углубленного понимания работы iptables рекомендую прочитать статью Оскара Андерсона в переводе Андрея Кисилева — Iptables Tutorial 1.1.19, которая считается классикой.
eth0 — смотрит в локальную сеть, eth1 — смотрит в мир. Данным скриптом (firewall.sh) удобно пользоваться на стадии отладки правил.
После того, как у вас все настроено, лучше воспользоваться штатными средствами управления iptables. Для этого воспользуемся скриптом для сохранения текущих правил в файл. В разных дистрибутивах набор правил может сохраняться по отличному от /etc/sysconfig/iptables пути. Данный путь является стандартным для Red Hat дистрибутивов и его клонов, например CentOS.
Но при таких настройках фаервола ftp через nat еще не будет работать. Для облегчения нашей задачи воспользуемся специальным модулем, который и был разработан как раз для этих целей. Загрузим модуль ip_nat_ftp, который и будет выполнять всю черную работу вместо нас.
Обратите внимание, что в цепочке eth0-eth1, через которую проходят все транзитные пакеты, мы открыли только порт 21 и разрешили прохождение пакетов с состоянием RELATED и ESTABLISHED. Для работы ftp как в активном так и в пассивном режимах больше ничего не требуется, все остальные заботы берут на себя модули ip_nat_ftp и ip_conntrack_ftp.
Тестирование
После того, как мы загрузили модуль и правил можно приступить непосредственно к тестированию. Для этого можно воспользоваться любимым ftp клиентом и попробовать соединиться с любым ftp сервером. В качестве клиента я использовал ftp клиент встроенный в far, который позволяет использовать как активный, так и пассивный режимы. Если под рукой нет никакого ftp клиента всегда можно воспользоваться встроенным в windows клиентом как показано ниже.
Для наглядности можно посмотреть с помощью tcpdump что происходит при попытке подключиться к удаленному ftp серверу.
Ну вот собственно и вся настройка. Для того, чтобы каждый раз при загрузке системы модуль ip_nat_ftp загружался автоматически необходимо внести небольшие изменения в файл /etc/sysconfig/iptables-config.
После этого при перезагрузке iptables или системы в целом данный модуль будет загружаться автоматически, а также подгружать все необходимые модули.
Как настроить FTP-сервер дома без помощи бабушки
Приветствую, уважаемый читатель! В этой статье нашего портала WiFiGid мы попробуем разобраться в настройке FTP сервера под Windows разными методами. Раз уж вы попали сюда, наверняка вам известно, что такое FTP и что с ним делать. Поэтому кратко и без воды – только инструкция.
Нашли ошибку? Есть пожелание или дополнение? Наши комментарии открыты для всех желающих. Всегда можно написать туда свое мнение или вопрос, помочь другим людям, улучшить статью.
Что будем делать?
Не знаю, кто будет читать эту статью, но он явно хочет очень быстро запустить у себя FTP сервер. Скорее всего что-то замудренное здесь не пойдет, а грамотные сисадмины для конфигурации своего сервера на Unix сформулируют запрос точнее, поэтому остановимся на бесплатном, быстром, удобном.
Ниже будет представлено несколько готовых решение. Все что нужно – просто брать и делать, и уже вскоре вы сможете спокойно подключаться к своему компьютеру по FTP, для чего бы вам это не было нужно.
Способ 1 – Встроенный FTP
За редким использованием забываешь, что в «винде» уже есть встроенный FTP, так что и ходить далеко не нужно. Но он по умолчанию выключен, так что начнем с самого начала. Все на примере Windows 7, на «десятке» пробуем аналогично или идем в следующий раздел, где будем устанавливать стороннее решение.
- Пуск – Панель управления – Программы и компоненты:
- Нажимаем «Включение или отключение компонентов Windows». В открывшемся окне переходим в Средства IIS – FTP-сервер. И отмечаем галочкой все подкпункты. В конце не забываем нажать кнопку «ОК».
- Переходим к настройке. Пуск – Панель управления – Администрирование.
- Щелкаем по элементу Сайты правой кнопкой мыши и в появившемся меню выбираем «Добавить FTP-сервер»:
- В появившемся окне задаем имя FTP-сайта. Можно на самом деле любое. Мы уж обзовемся как есть – WiFiGid.ru. И физичекий путь до папки, с которой будет происходить обмен – у нас на это выделен полностью диск D:
- На следующей странице задаем IP, порт, шифрование. Лучше оставить вот так:
- Определяем параметры доступа. Галочка Анонимный – разрешение доступа без логина и пароля. Обычный – по логину и паролю:
- Все. Сам FTP создан, остается лишь задать верные настройки доступа. Переходим: Панель управления – Система и безопасность – Брандмауэр:
- В левой части выделяем вкладку «Правила для входящих подключений», а справа ищем «FTP-сервер» и «Трафик-FTP сервера в пассивном режиме». Кликаем по ним правой кнопкой мыши и нажимаем «Включить». Так мы активировали правила для входящих подключений. До этого – никаких правил не было вовсе:
- Переходим к исходящим подключениям и делаем то же самое для «Трафика FTP-сервера»:
- Теперь сервер включен, правила созданы, но нужно определить пользователей, которые смогу взаимодействовать с сервером. Идем: Панель управления – Система и безопасность – Администрирование – Управление компьютером:
- Создаем группу пользователей. Локальные пользователи и группы – Группы. Щелкаем правой кнопкой по свободному месту и выбираем «Создать группу»:
- В соседней подпапке Пользователи создаем нового пользователя:
- Заполняем поля по своему пользователю. Т.е. здесь главное имя пользователя и пароль, по которым и будет происходить подключение к FTP:
- Увидели в списке пользователей своего новосозданного? Теперь его нужно запихнуть в группу FTP. Щелкаем правой кнопкой по нему – Свойства. А далее переходим на вкладку «Членство в группах», где через кнопку Добавить добавляем группу:
- Уже почти все готово. ФТП работает, пользователь есть. Но Windows просто так не даст пользоваться своими ресурсами абы кому, если ты не администратор. Поэтому нужно разрешить нашему пользователю взаимодействовать с выделенной для нужд FTP папкой. Щелкаем по ней правой кнопкой мыши – Свойства. На вкладке Безопасность кликаем по кнопке «Изменить»:
- Нажимаем кнопку Добавить и добавляем нашу группу. А заодно ниже ей в колонке Разрешить отмечаем все галочки:
- Теперь снова возвращаемся в службы IIS и идем настраивать наши правила на авторизацию. Щелкаем по нашему созданному здесь сайту и выбираем «Правила авторизации FTP»:
- Тут же правой кнопкой по пустому месту – Добавить разрешающее правило:
- По умолчанию доступ можно производить и без авторизации, но мы то не хотим ничего плохого? (если хотим, все связанное с созданием пользователя вообще можно было пропустить). Выбираем здесь пункт «Указанные роли или группы пользователей» и вписываем нашу группу FTP:
- А вот в качестве альтернативы можно, например, разрешить подключение анонимным пользователям, но ограничить их в правах только на чтение. Тогда они ничего не удалят:
За этим первый вариант заканчиваем. Надеюсь, и вам удалось настроить FTP-сервер.
Частые вопросы по способу 1
Есть несколько способов сделать это:
- В локальной сети достаточно зайти через Проводник, используя IP-адрес компьютера, на котором запущен сервер. Например, ваш адрес – 192.168.1.10. Тогда в строку Проводника можно просто вбить ftp://192.168.1.10. Все содержимое хранилища должно отобразиться. Тут же можно войти с авторизацией. Формат следующий: ftp://ваше_имя:пароль@192.168.1.10.
- Для доступа из интернета нужно использовать внешний IP-адрес сети. Но перед этим не забываем пробросить 21 порт на нужную машину.
- Кроме Проводника спокойно можно использовать сторонние программы. Лично я долгие годы использую FileZilla. Бесплатно и удобно. Для входа достаточно вводить IP адрес и данные для авторизации.
- Еще вариант использование FTP-хранилищ – как сетевого диска. Процедура подключения стандартная, в выборе используем вот это:
Это самое обширное понятие. На каком этапе он именно не работает? Запуск? Подключение? Расшаривание? Авторизация? При грамотном проходе всей инструкции обычно проблем не возникает, но если у вас что-то особенное – пишем в комментарии свой вопрос.
Способ 2 – FileZilla Server
Альтернативный способ с годами проверенным решением для простой настройки FTP-сервера – будем использовать FileZilla Server. Многие знают, что у них отличный FTP-клиент, так еще есть и прекрасный FTP-сервер. Но самое главное – никуда больше ходить не нужно, здесь в коробке расположено сразу все самое нужное.
Скачать сервер можно с ОФИЦИАЛЬНОГО САЙТА
Начинаем наши деяния:
- Скачиваем и устанавливаем сервер по ссылке выше:
- Весь процесс установки FTP-сервера описывать нет смысла – просто жмите далее. Пока не появится окно ввода первых параметров. Здесь задаем локальный IP сервера и порт (можно оставить как есть, это не адреса подключения, внешние адреса подключения остаются теми же, что и в предыдущем способе):
- Создадим пользователя для подключения к серверу. Edit – Users:
- Создаем папку для нашего пользователя:
Все! Больше ничего придумывать не нужно. Все находится удобно и по вкладкам. Гораздо быстрее использования стандартных средств Windows 7.
Итого – были рассмотрены 2 случая создания FTP-сервера. Оба будут работать, ищущие конкретные моменты – лезут в настройки, скорее всего там это уже придумали. Истинные любители и вебмастера выберут Linux, и самостоятельно запустят сервер (там это уже с полпинка реализуется по той же механике). Вот и все. На этом прощаюсь. Комментарии ниже всегда открыты для вас (и порой там намного интереснее чем в самой статье).