Створюємо свій власний FTP сервер на базі FileZilla Server





Доброго часу доби, дорогі читачі! Останнім часом приходить багато повідомлень з проханнями розповісти про те, як встановити свій власний FTP сервер в домашніх (або не дуже) умовах.

Створюємо свій власний FTP сервер на базі FileZilla Server

Про те, що таке FTP, якщо хтось раптом не в курсі, Ви можете дізнатися в цій моїй статті «Що таке FTP і як ним користуватися [FileZilla]» або відразу приступати до читання (в рамках даної статті є пару слів про сам протоколі). Поїхали.

Підготовка до встановлення свого FTP-сервера

Як і обіцяв, для початку коротко про те, що таке FTP для тих, хто не знає:

FTP (від англ. File Transport Protocol) — це протокол передачі даних, який дозволяє отримати доступ до файлів на віддаленому сервері. У даній технології розрізняють дві сторони, серверну (FTP сервер) і клієнтську (FTP клієнт). У випадку, якщо ви хочете поділитися своєю колекцією музики або художніми дослідженнями, Вам знадобиться FTP сервер, т.е місце куди всі будуть підключатися і завантажувати все, що Ви дозволили. Якраз про те, як це налаштувати, і піде мова в даній статті.

Хочеться відразу відзначити, що в статті буде розглядатися варіант домашнього використання, без хитрих і тонких налаштувань, які використовуються у випадку з повноцінними корпоративними серверами.

Для установки Вам необхідно завантажити один з множинних дистрибутивів, які допоможуть розвернути FTP-сервер. Особисто я рекомендую Вам використовувати FileZilla Server, бо він, як і колись згаданий мною клієнт (см.статью за посиланням вище), гранично простий у установки та налаштування, і до того ж безкоштовний.

Завантажити його можна, наприклад, за цим посиланням.

Установка FTP FileZilla Server

Після скачування дистрибутива, власне, запустіть його установку (мається на увазі, що треба клікнути по викачаного exe-файлу) і дотримуйтесь рекомендацій нижче.

На першому вікні потрібно погодитися з ліцензійною угодою, натисніть «I Аgree».

Створюємо свій власний FTP сервер на базі FileZilla Server

Далі треба вибрати тип установки. Всього їх п’ять:

Створюємо свій власний FTP сервер на базі FileZilla Server

Стандартний (Standart) — варіант для установки з нуля для повного функціонування сервера.

Повний (Full) — майже теж саме, але так само в папку установки будуть скопійовані вихідний код програми, на випадок, якщо ви щось захочете в ній змінити.

Тільки FTP сервіс (Service only) — встановлюється безпосередньо FTP сервіс, без доступу до нього через інтерфейс. Корисно, якщо ви плануєте керувати своїм файлосховищ з іншого комп’ютера.

Інтерфейс управління (Interface only) — на відміну від попереднього пункту, ставиться тільки графічна оболонка управління сервером, але не він сам. Використовуйте, якщо ви хочете віддалено отримати доступ до свого FTP сервера.

Вибіркова установка (Custom) — Ви вільні вибирати, що хочете поставити на свій комп’ютер.

Для першої установки рекомендую вибрати стандартний варіант (Standart). Натисніть «Next«.

На наступному вікні необхідно вибрати папку установки, наприклад, «C: Program Files FileZilla Server». Після вибору переходите до наступного вікна (Next).

Тепер установник попросить нас вибрати спосіб установки і запуску сервера.

Створюємо свій власний FTP сервер на базі FileZilla Server

Є три варіанти:

Як службу і запускати при вході в систему

Як службу і запускати вручну

Проста установка, запускати вручну

Рекомендується вибрати перший або другий варіант. Різниця лише в тому, що в другому випадку для роботи сервера, Вам необхідно буде переходити в «Панель управління — Адміністрування — Управління службами«, знаходити там службу в списку і запускати її самостійно, натиснувши на кнопочку запуск.

Крім того, на цьому етапі слід вказати порт, по якому буде підключатися інтерфейс управління сервером, т.е так би мовити, Ваша консоль адміністрування, яка дозволить Вам задавати настройки, дивитися хто і куди підключився і тп. Для підвищення безпеки, змініть його зі стандартного (14147) на який-небудь ще.

Так само по-замовчуванню, відзначена опція запустити сервер після установки (Start Server after setup completes). Можете залишити цю галочку, а можете прибрати. Справа Ваше. Зробивши оне, переходимо до останнього вікна, використовуючи кнопочку Next.

Тут вибираємо варіанти запуску інтерфейсу.

Створюємо свій власний FTP сервер на базі FileZilla Server

Їх знову ж три:

При вхід в систему, для всіх користувачів

При вході в систему, для поточного користувача

Вручну

Перший варіант згодиться, якщо ви єдиний користувач комп’ютера, куди встановлюється сервер, і Вам, в принципі, все одно під усіма акаунтами операційної системи інтерфейс буде запускатися автоматично або ж тільки під одним.

Другий підходить для тих, хто працює на комп’ютері не один (т.е на комп’ютері кілька акаунтів, які використовуються різними людьми) і хоче, щоб ніхто інший не керував його FTP сервером, т.е запуск інтерфейсу здійснювався тільки з під аккаунта, в якому зараз і проводиться установка.

І третій варіант задає параметр запуску тільки вручну, т.е покоління було не стартуватиме разом з системою зовсім.

Нагадаю, що інтерфейс являє собою щось на зразок адміністративної програми, яка дозволяє стежити за станом сервера, запускати-зупиняти і налаштовувати оний.

Галочка (Start Interface after setup completes) в даному вікні, знову ж, задає запуск інтерфейсу відразу в кінці установки.

Ну і, розібравшись з усім оним, нарешті можна почати установку сервера (використовуючи, само собою, кнопочку «Install«) Створюємо свій власний FTP сервер на базі FileZilla Server

Налаштування FTP FileZilla Server

Отже, після установки, при першому запуску інтерфейсу, з’явиться маленьке віконце, де потрібно вказати адресу і порт для підключення, а так же пароль адміністратора (при першій установки його немає). Можна відзначити опцію «Весь час підключатися до цього сервера» (Always connect to this server). Натискаємо «Ok«.

Створюємо свій власний FTP сервер на базі FileZilla Server

Хочеться підкреслити, що це є підключення до сервера локально, а саме, підключення до інтерфейсу адміністрування, тобто видавати адреса 127.0.0.1 і порт 14147 для друга, який захоче підключитися, марно. Про зовнішні адресах, паролі і явки, необхідних для підключення до сервера, буде написано по ходу статті.

Тепер перейдемо до налаштувань. Це робиться шляхом переходу за адресою «Edit -gt; Settings »або кліком на кнопку на панелі інтерфейсу:

Створюємо свій власний FTP сервер на базі FileZilla Server

Перед вами відкриється вікно налаштувань. На першій вкладці (General Settings) можна задати наступні параметри:

Створюємо свій власний FTP сервер на базі FileZilla Server

Зверху вниз по скриншоту:

Порт, по якому клієнти будуть підключатися до сервера

Максимальна кількість клієнтів

Кількість потоків

Різні таймаут (три штуки)

В рамках даної статті нас цікавлять перші два пункти. Порт можна залишити як є, а можна і змінити для підвищення безпеки, але тоді доведеться повідомляти про оном всім бажаючим підключитися.

Друга настройка відповідає за максимальну кількість підключень. За замовчуванням значення параметра стоїть «0», це означить, що їх кількість не обмежена. Змінювати цей параметр варто в тому випадку, наприклад, якщо Ваш інтернет канал не справляється з навантаженням, т.к до Вас підключається вже дуже багато людей.

Інше можна залишити без змін, т.к для домашнього використання настройки оптимальні.

Поїхали далі.

У наступному підпункті можна налаштувати вітальне повідомлення, яке будуть бачити користувачі при підключенні. Наприклад: «Сервер Заметок Сис. Адміна! Створюємо свій власний FTP сервер на базі FileZilla Server«. Тут же можна скористатися, так званими, текстовими параметрами. Наприклад, можна задати висновок для клієнтів версії ftp-сервера. Для цього введіть, крім привітання, поєднання символів% v. У місці де Ви їх введете, автоматично виводиться вищезгадана версія.

Створюємо свій власний FTP сервер на базі FileZilla Server

Далі переходимо на підпункт «IP bindings». Тут налаштовуються IP-адреси, за якими буде доступний наш FTP сервер. Якщо Вам хочеться, щоб сервер був доступний тільки з локальної мережі, то замість зірочки, слід вказати ваш локальний IP-адресу, як наприклад, 192.168.1.5. В іншому випадку, тут чіпати нічого не варто.

У підпункті «IP Filter» можна задати IP адреси (або їх діапазон), яким буде заборонено підключатися до Вашого сервера, а так само задати виключення із заданого діапазону (друге поле). Т.е, наприклад, якщо Ви хочете когось забанити і заборонити йому потрапляти на Ваш сервер, то вкажіть його в першому віконці. Так само, якщо Ви хочете надати доступ тільки комусь певного і заборонити всім іншим, то поставте зірочку в першому полі і задайте список IP-адрес у другому.

Створюємо свій власний FTP сервер на базі FileZilla Server

Вкладка «Passive mode settings» регламентує параметри для пасивного підключення до сервера і відгук оного. Змінювати тут що-небудь варто тільки в тому випадку, якщо Ви підключені до інтернету не безпосередньо, а через роутер, на якому мешкає фаерволл і NAT. В цьому випадку може знадобитися вказати в полі «Use the following IP» свій зовнішній IP-адресу (можна дізнатися у провайдера або в інтерфейсі роутера), а так само задати діапазон портів (Use custom port range), через які клієнт зможе підключатися до Вашого сервера в пасивному режимі. Чіпати ці налаштування варто, мабуть, тільки у випадку проблем з підключенням користувачів. У разі оних і неможливості розібратися самостійно, я дам Вам консультацію з налагодження виключно для Вас (пишіть коментарі).

Створюємо свій власний FTP сервер на базі FileZilla Server

Йдемо далі. У пункті налаштувань «Security Settings» задаються обмеження на вхідні та вихідні з’єднання типу «сервер-сервер». Тут нічого змінювати не варто.

Розділ налаштувань «Miscellaneous» містять малозначні для домашнього фтп-сервера настройки. Наприклад, такі як «Не показувати пароль в лог-файлах» (Do not show passwords in message log), «Запускати інтерфейс згорнутим» (Start minimized), а так само розміри буферів передачі. Чіпати тут, в общем-то, нічого не потрібно.

На вкладці «Admin Interface Settings» можна задати IP-адресу і порт, за якими буде доступний інтерфейс управління сервером (той самий, що ми спочатку використовували як 127.0.0.1 і 14147, т.е, якщо є бажання, то Ви можете їх змінити ). Крім того, можна вказати IP-адреси, яким дозволено підключатися до нього.

Розділ налаштувань «Logging» дозволяє включати запис лог-файлів (Enable logging to file), налаштувати їх максимальний розмір (Limit log file size to), писати все в один файл (Log all to «FileZilla Server.log») або для кожного дня створювати окремий (в цьому випадку можна обмежити їх максимальний термін зберігання).

Створюємо свій власний FTP сервер на базі FileZilla Server

Вкладка «GSS Settings» відповідає за використання протоколу Kerberos GSS. Для звичайного використання ця опція не вимагає настройки.

Далі у нас «Speed ​​Limits». Она може допомогти обмежити швидкість вхідних і вихідних з’єднань. Є два шляхи обмеження: задати постійне обмеження на весь час або створити правила на конкретний день і / або годину. Обмеження задаються в кілобайтах.

Вкладка «Filetransfer compression» дозволяє включити режим стиснення файлів при передачі. При цьому можна налаштувати мінімальний і максимальний рівень стиснення, а так само вказати IP-адреси, для яких не буде використовуватися компресія. Чіпати що-небудь зовсім не обов’язково.

Створюємо свій власний FTP сервер на базі FileZilla Server

Щоб налаштувати захищене з’єднання між клієнтом і сервером, треба перейти до пункту налаштувань «SSL / TLS Settings». Тут потрібно включити підтримку цих протоколів і вказати шляхи до закритого ключа, файлу сертифіката і пароль. Для середньостатистичного користувача в цьому немає необхідності, тому в цій статті розглядатися не буде.

І нарешті, можна включити автоматичний бан користувачів після n-их спроб невдалих підключень, і час бана. Для цього варто перейти на вкладку «Autobans» і, якщо Вам оне необхідно, то виставити галочку «Enable automatic bans«, вказати в графі «Ban IP adress after» кількість спроб після яких буде здійснюватися блокування, а так же час блокування в полі « Ban for «. Оне буває потрібно, щоб небажані особистості не спамили Ваш сервер своїми спробами підключень.

Первісна настройка акаунтів користувачів (users) і кулі (share)

Тепер налаштуємо доступи користувачів, а саме їх акаунти, паролі, папки і тп.

Як приклад створимо самого, так би мовити, поширеного користувача і дамо йому доступ.

Отже, для додавання нового аккаунта слідуємо, в головному вікні інтерфейсу, по шляху «Edit -gt; Users «. Перед нами постане вікно роботи з користувачами.

Для додавання нового необхідно натиснути «Add». Далі необхідно буде задати його ім’я, наприклад, anonymous, і приналежність до групи (в нашому випадку вказувати не будемо). Задаємо, тиснемо «Ok».

Створюємо свій власний FTP сервер на базі FileZilla Server

Тепер для нашого нового користувача можна задати пароль і обмеження по кількості з’єднань. При необхідності зробіть оне, виставивши галочку «Password» і вказавши його (пароль) у віконці навпроти. Настійно рекомендується використовувати паролі для користувачів в цілях безпеки.

Далі переходимо на вкладку «Share Folders». Тут, власне, ми задаємо до яких саме папок користувач матиме доступ. Робиться це просто: тиснемо «Add» і вибираємо потрібну папку на диску. Ліворуч можна задати права доступу до неї: тільки читання — «Read», запис — «Write», видалення — «Delete» і можливість зміни існуючих файлів в директорії — «Append». Нижче ви можете дозволити створення, видалення, отримання списку файлів і поширення дозволів на підкаталоги.

Задаємо необхідні Вам параметри та папки і .. Жмакаем ОК

На цьому первісна настройка закінчена. Для домашнього користування більшого й не треба Створюємо свій власний FTP сервер на базі FileZilla Server

Доступ користувачів до сервера.

Для того, щоб ваші знайомі могли використовувати Ваш FTP сервер, необхідно надати їм його IP-адресу, а так само задані Вами логін (и), пароль (і) і, при необхідності, порт (якщо змінювали), які вони повинні вказати в своєму, попередньо встановленому FTP-клієнті.

Дізнатися зовнішній IP-адресу можна, звернувшись до провайдера, подивившись в налаштуваннях роутера або ж, просто, скориставшись одним з численних сервісів, як наприклад, www.2ip.ru (як Ви напевно здогадалися, Вам потрібно те, що написано під текстом «Ваш IP адреса: » Створюємо свій власний FTP сервер на базі FileZilla Server ).

Післямова.

Ось такі от справи.

Не дивлячись на те, що стаття максимально орієнтована для невеликого домашнього використання, я постарався максимально докладно пояснити всі необхідні налаштування і нюанси.

Як і завжди, якщо є якісь питання, доповнення і тп, то пишіть в коментарях, — буду радий допомогти.

PS: За існування оной статті окреме спасибі одному проекту та члену нашої команди під ніком «Kellis’у».