Gene6 FTP Продукт Gene6 SARL FTP Server – многофункциональный FTP сервер для Microsoft Windows NT/2000/XP/2003. Данная программа обладает очень простым и наглядным интерфейсом, позволяет с легкостью управлять аккаунтами, назначать права доступа как на отдельные папки, так и на целые диски. Имеются богатые возможности по отслеживанию активности на сервере, управлению ресурсами. Кроме того, есть возможность создавать виртуальные директории, ограничивать трафик, количество подключений. Ведется подробнейшая статистика в реальном времени. Программа позволяет обеспечить безопасный доступ к файлам через Интернет. Можно управлять доступом при помощи учётных записей пользователей/групп, каталогов, создания нескольких виртуальных узлов FTP, задания ограничений, таких как время доступа в день, доступ по IP и т.д. G6FTP Server соответствует Интернет-стандартам протокола FTP. Поддерживаемые Запросы на комментарии (RFC): RFC-775, RFC-959, RFC-1123, RFC-2228, RFC-2389, RFC-2428, RFC-2577, RFC-2640 (только UTF8). При разработке G6FTP Server уделялось пристальное внимание вопросам безопасности. Ниже приведены некоторые возможности безопасности: * шифрование SSL (явное/неявное) может использоваться для обмена важными файлами; * ограничения доступа, основанные на IP/Узле; * управление правами доступа для файлов/каталогов; * удалённое администрирование по безопасному соединению; * административные учётные записи (администратор, супер-администратор); * авторизация NT (использование пароля Windows); * единовременные пароли (OTP, S/Key) (MD5); * ограничение числа соединений (для IP, домена, пользователя); * ограничение срока действия учётной записи; * встроенные команды проверки целостности (CRC, MD5). Поскольку не всегда возможно физически получить доступ к компьютеру, на котором запущен G6FTP Server, были разработаны средства удалённого администрирования, позволяющие добавлять, изменять, удалять учётные записи пользователей, а также изменять все доступные настройки доменов, как если бы администратор находился у компьютера, на котором запущен сервер. Преимущество состоит единообразии интерфейса как для локальных, так и для удалённых подключений. Существует возможность делегировать администрирование другому администратору, создав новую учётную запись пользователя с ограниченными правами администратора. Подключение удалённого администрирования шифруется при помощи SSL и запускается на собственном настраиваемом порте. Инструкция по установке и настройке FTP сервера Рассмотрим пример настройки FTP сервера Gene6 ftp. Этот сервер является одним из лучших и предоставляет широкие функциональные возможности. Итак, запускаем инсталлятор и приступаем к установке. В окне выбора компонентов выбираем все. Далее программа установки попросит указать порт для администрирования. Оставляем 8021 или вводим свой по желанию. Далее необходимо ввести логин и пароль администратора. Вводим и обязательно запоминаем их. Далее все оставляем как есть. В конце установки снимаем обе галочки чтобы сервер не запустился после установки. Копируем в папку с установленной программой файл ключа (registration-key.dat) и русификатор (по желанию) (languages.sib). Только после этого запускаем монитор (G6FTPTray.exe). Кликаем по нему в системном трее правой кнопкой и выбираем Launch administrator. В появившемся окне вводим логин и пароль администратора, которые указывали при установке. Чтобы каждый раз не вводить их при запуске администратора ставим галочку Remember password. Жмем ОК. В меню Tools Languages можно выбрать русский язык, однако инструкция будет приведена для английского интерфейса. В разделе Administration можно оставить все как есть. В разделе FTP Server нас будет интересовать лишь пункт Certificates. Кликаем по нему правой кнопкой и выбираем New sertificate. Даем ему имя, например newcert, выбираем дату окончания действия (лучше оставить по умолчанию на 10 лет вперед) и жмем Next. В следующем окне заполняем все поля, что вводить – не имеет значения. Вводите все как есть, это ни на что не влияет и жмите Finish. Сертификат нам понадобится позже. Теперь кликаем по Domains правой кнопкой и выбираем New Domain. В появившемся окне даем название своему домену. Выбираем максимальное число пользователей, которые могут одновременно подключиться к серверу (я поставил 10) и максимальное число соединений с каждого IP адреса (рекомендую от 2 до 5). Жмем Next. В появившемся окне оставляем все как есть. IP: *. Port: 21. Либо можете указать свой порт. Next >. Оставляем все 3 галочки как есть. Это ведение логов сервером. Жмем Next. В появившемся окне нам предлагают создать аккаунт для анонимных пользователей – аккаунт, под которым пользователи могут заходить не вводя логина и пароля. Ставим галочку и выбираем «домашний» каталог, в который будет попадать пользователь, зайдя на ваш сервер. Для этого заранее создаем в корне диска (в корне удобнее) каталог для FTP сервера. У меня ”E:\FTP Server\” и выбираем его. Также создадим сразу в этом каталоге еще 2 папки. Одну назовем pub, вторую incoming или upload, кому как больше нравится. У меня это выглядит так: ”E:\FTP Server\incoming\”, ”E:\FTP Server\pub\”. Они нам понадобятся позже. Как создавать папки на диске писать не буду . Жмем Finish. Кликаем по плюсику рядом с Domains и видим наш новый домен в списке ниже. Кликаем по нему правой кнопкой и выбираем Properties. В Options должен стоять статус Online, Max number of clients/IP как я уже писал выше у меня 10 и 5 соответственно. В Authentication и Miscellaneus оставляем все как есть. В Miscellaneus можно поставить автоматический бан клиента на заданное время если он очень часто переподключается. Можете ставить по усмотрению. Я не ставил. В Logs & reports оставляем все по умолчанию. Можете указать максимальный размер лог файла на диске. В Messages, Banned Files, Username Aliases можно ничего не трогать. Сразу перейдем к Transfer Speed. Download – максимальная скорость отдачи с вашего ФТП сервера для данного Домена. Т.е. это скорость, с которой будет отдавать ФТП сервер файлы, вне зависимости от количества соединенных клиентов. Устанавливаем по желанию. Для максимального эффекта ставим примерно 90-95% от пропускной способности вашего исходящего канала. Upload – максимальная скорость с которой ФТП сервер будет принимать файлы от пользователей для данного Домена. Также распространяется на всех подсоединенных клиентов в сумме. Оставляем Unlimited. Остальное оставляем как есть. Transfer limit – максимальный объем трафика, который пользователи могут загрузить с/на сервер. Если к примеру установить Download Max=10Mb, Upload Max=50Mb и Reset Hourly то каждый час с вашего сервера пользователи смогут скачивать в сумме максимум 10 Мб и загружать на сервер в сумме максимум 50 Мб. Если вам это необходимо, то устанавливайте нужные значения. Но скорее всего лучше оставить все без ограничений. В Statistics можно просмотреть статистику по домену. В разделе Customize ничего не трогаем. Переходим к Secure. В Options ставим вторую и четвертую галочку. Если вы собираетесь использовать SSL шифрование, то ставим и третью галочку. Рекомендую все настройки производить для возможности использования SSL. В IP binding IP/Mask=*, Port=21, Protocol = если не будет использоваться SSL для то Regular FTP Session only, если будет использоваться SSL то Regular FTP Session, allow explicit SSL. Redirect PASV IP – если SSL не используется, то оставляем пустым, если используется то вводим ваш реальный IP адрес. Passive Port Range – при использовании SSL выставляем диапазон из нескольких портов, неиспользуемых другими службами, например 11000-11005. Если SSL не используется, то оставляем как есть: 1024-65535. Также рекомендую здесь и дальше все настраивать для возможности использования SSL шифрования. Это лишь расширит функциональность сервера, дав возможность включать SSL шифрование для определенных аккаунтов. На всех приведенных рисунках настройки сделаны для возможности использовать SSL. IP access – это фильтры IP для которых разрешен/запрещен доступ на сервер. Для марнета эти фильтры приведены на рисунке. Думаю формат фильтров будет понятен из рисунка и рассказывать о нем я не буду. SSL – здесь выбираем сертификат, созданный нами ранее. Extended – оставляем все как есть. С настройками Домена закончили, теперь переходим к созданию пользователей (аккаунтов) и назначением им прав. Для этого выбираем пункт Users. В правом окне программы уже должен быть аккаунт Anonymous (если при установке программы выбрали создание анонимного аккаунта). Заходим в его свойства (Properties). В Options должна стоять галочка Setup Enabled. Expires on – дата и время когда истекает срок действия данного аккаунта. Password – пароль для данного аккаунта. Для Anonymous пароль не задается. Access Right – права доступа к папкам и файлам для этого аккаунта. Собственно основная часть настройки сервера. Итак, мы уже заранее создали на диске папочку для нашего фтп сервера, в которой создали еще 2 папки – pub и incoming (или upload). Здесь мы указываем папки, которые будут доступны на сервере и назначаем на них права для пользователя. Сперва создадим корневой каталог. Для этого нужно кликнуть на зеленый плюсик и в появившемся окне ввести: Virtual path: / Physical path: empty:// Virtual path – папка которая будет отображаться для клиента на сервере. Physical path – путь к этой папке на диске. В Root Folder ввести / После создания корневой папки добавим папки pub и incoming. Для этого virtual path указываем /pub и /incoming, а physical path – путь к этим папкам на диске. Далее нужно назначить права доступа для этих папок. File access: Download – разрешение скачивать из папки файлы Upload – разрешение закачивать в папку файлы Delete – разрешение удалять файлы из папки Append – разрешение докачивать файлы Folder access: List files – разрешение на получение списка файлов в папке List folders – разрешение на получение списка папок в данной папке Make – разрешение создавать папки в данной директории Remove – разрешение удалять папки из данной директории Subdirs – разрешение заходить в директории, содержащиеся в папке Secure – передача файлов только с SSL шифрованием Hide – скрыть папку от пользователя Deny – запретить доступ к папке Права можно назначать для нескольких папок сразу. Для этого нужно просто выделить их удерживая клавишу Ctrl. Итак папка pub – это папка, из которой можно скачивать файлы, incoming – папка, в которую можно закачивать файлы. Поэтому назначаем права для папок ”/” и ”pub” Download, List Files, List Folders, Subdirs. Для ”incoming” Download, Upload, Append, List Files, List Folders, Make, Subdirs. Можете теперь добавить другие папки с диска, например с фильмами, музыкой и т.п. Виртуальный путь для них должен выглядеть так: /pub/[название папки]. [название папки] – название, которое хотите дать папке для отображения на сервере. И назначаем для все добавленных папок такие же права как и для / с /pub для того чтобы с них можно было скачивать файлы. Если у вас к примеру 2 раздела на жестком диске и на обоих есть папки с фильмами, то можно эти 2 папки с каждого раздела диска объединить в одну виртуальную на сервере. Для этого прописываем Virtual path к примеру /pub/films, а Physical path: merge:// "C:\Фильмы\","D:\Фильмы\" – естественно те пути к папкам на диске которые у вас. merge:// позволяет объединять несколько реальных папок на диске в одну виртуальную. Пути к реальным папкам после этой команды перечисляются в кавычках через запятую.
[продолжение] Переходим к пункту Miscellaneous. Can Change Password – разрешение пользователю менять пароль, не отмечаем. Hide Hidden Files – скрыть файлы, которые имею атрибут «скрытый». Ставьте по своему усмотрению. Log Enabled – вести лог для данного аккаунта. Ставьте как хотите. Idle time-out – при неактивности пользователя в течении этого времени, его автоматически отсоединит от сервера. 5 минут – нормально. Session time-out – по истечении этого времни сессия прервется. Не отмечаем. Max number of clients – максимальное количество одновременно подключенных клиентов. Max connections per IP – максимальное количество соединений с каждого IP. Об этих 2 опциях уже говорилось в настройке домена. Галочки справа ”by-pass domain…” – игнорирование настроек домена для этих 2 функций. То есть, если в настройках домена стоит 10 а в настройках аккаунта 15 и снята галочка, то значение будет считаться равным 10, если галочка стоит, то будет считаться равным 15. В Advanced, Banned Files, Free files, Quota, ratio можно ничего не трогать. Transfer speed. Здесь задается по порядку максимальная скорость для каждого соединения (per connection), всего аккаунта (overall account maximum speed) на закачку с сервера (Download) и загрузку на сервер (Upload) файлов. А также минимальная скорость. Если задана скорость для каждого соединения к примеру 10 кб/с, то если с сервера качают 5 пользователей вошедших под данным аккаунтом, то каждый будет скачивать на скорости максимум 10 кб/с. Если же при этом задана максимальная скорость для всего аккаунта 25 кб/с, то она делится на этих 5 пользователей, и на каждого получается по 5 кб/с. Если же максимальная скорость для всего аккаунта задана 100 кб/с, то все равно каждый из этих 5 пользователей будет качать максимум на скорости 10кб/с. Скорость Upload лучше не ограничивать. Transfer Limit аналогичен настройкам домена. Time of day access – время работы аккаунта. Все остальное можно не трогать. Анонимный пользователь создан. Теперь можно создать пользователей с именем (логином) и паролем, под которыми они будут заходить. Обычно для таких пользователей даются бОльшие права, чем для анонимных, открывается больше папок. Либо это пользователи, которым открыт доступ к какой то определенной папке. Я например создавал аккаунты для доступа только к папке с игрой Diablo, когда у меня просили ее скачать, и назначал для этого аккаунта более высокую скорость, чтобы быстрее скачали. А также созданы аккаунты для друзей, знакомых, для меня самого как администратора. В этих аккаунтах открыто больше папок, даны бОльшие скорости и приоритеты, бОльшее количество одновременных коннектов с одного IP. Любой (ну или почти любой) неанонимный аккаунт отличается от анонимного тем, что в Options задается пароль, Password type оставляем Password stored as MD5 hash. Логином же является имя самого аккаунтом. Осталось последнее. Открыть в роутере в NAT 21 порт по TCP, перенаправив его на ваш локальный адрес. Теперь можете проверить работоспособность сервера заходим сами на него через любой фтп-клиент, введя адрес 127.0.0.1 Создание аккаунта с SSL шифрованием (для тех, кто понимает для чего это нужно). Для использования SSL в настройках аккаунта в Options отмечаем галочку Secury connection only. Настройки Домена, которые описывались ранее должны предоставлять возможность для использования SSL. Теперь нужно в NAT открыть диапазон портов, которые укзали в настройках домена (в примере было 11000-11005). На этом все. Данный аккаунт теперь будет использовать SSL шифрование. ФТП-клиент также необходим, поддерживающий SSL шифрование. Но любой фтп-клиент не имеющий данной функции можно заставить соединятся по SSL. Для этого имеется специальная программка TLSWrap. Устанавливаем ее и в настройках указываем порт по которому она будет работать, либо можно оставить по умолчанию 7000. В фтп-клиенте для аккаунта с SSL шифрованием указываем прокси-сервер 127.0.0.1:7000. Теперь ваш фтп-клиент будет соединяться используя SSL.