Установка і настройка FTP, свій FTP сервер на базі FileZilla Server

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

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

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

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

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

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

Стандартний (Standart) - варіант для установки з нуля для повного функціонування сервера.
Повний (Full) - майже теж саме, але так само в папку установки будуть скопійовані вихідний код програми, на випадок, якщо ви щось захочете в ній змінити.
Тільки FTP сервіс (Service only) - встановлюється безпосередньо FTP сервіс, без доступу до нього через інтерфейс. Корисно, якщо ви плануєте керувати своїм файлосховищах з іншого комп'ютера.
Інтерфейс управління (Interface only) - на відміну від попереднього пункту, ставиться тільки графічна оболонка керування сервером, але не він сам. Використовуйте, якщо ви хочете віддалено отримати доступ до свого FTP сервера.
Вибіркова установка (Custom) - Ви вільні вибирати, що хочете поставити на свій комп'ютер.
Для першої установки рекомендую вибрати стандартний варіант (Standart). Натисніть "Next".
На наступному вікні необхідно вибрати папку установки, наприклад, "C:Program FilesFileZilla Server". Після вибору переходите до наступного вікна (Next).
Тепер установник попросить нас вибрати спосіб установки і запуску сервера.

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

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

Рекомендується вибрати перший або другий варіант. Різниця лише в тому, що в другому випадку для роботи сервера, Вам необхідно буде переходити в "Панель управління - Адміністрування - Управління службами", знаходити там службу в списку і запускати її самостійно, натиснувши на кнопочку запуск.
Крім того, на цьому етапі слід вказати порт, по якому буде підключатися інтерфейс керування сервером, так би мовити, Ваша консоль адміністрування, яка дозволить Вам задавати налаштування, дивитися хто і куди підключився і т. д. Для підвищення безпеки, змініть його зі стандартного (14147) на який-небудь інший, запамятайте його. Так само по-замовчуванню, відзначена опція запустити сервер після установки (Start Server after setup completes). Можете залишити цю галочку, а можете прибрати. Справа Ваше. Зробивши це, переходимо до останнього вікна, використовуючи кнопочку Next.
Тут вибираємо варіанти запуску інтерфейсу.

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

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

Перший варіант згодиться, якщо ви єдиний користувач комп'ютера, куди встановлюється сервер, і Вам, в принципі, все одно під всіма акаунтами операційної системи інтерфейс буде запускатися автоматично або ж тільки під одним.
Другий підходить для тих, хто працює на комп'ютері не один (на комп'ютері кілька акаунтів, які використовуються різними людьми) і хоче, щоб ніхто інший не керував його FTP сервером, запуск інтерфейсу здійснювався тільки з під аккаунта, в якому зараз і вмконується установка.
І третій варіант задає параметр запуску тільки вручну, сервер не буде стартувати разом із системою, а тільки в ручну.
Нагадаю, що інтерфейс являє собою щось на зразок адміністративної програми, яка дозволяє стежити за станом сервера, запускати-зупиняти і настроювати його.
Галочка (Start Interface after setup completes) в даному вікні, знову ж таки, задає запуск інтерфейсу відразу в кінці установки.
Ну і, розібравшись з усім цим, нарешті можна почати установку сервера (використовуючи, само собою, кнопочку "Install") :)

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

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

Хочеться підкреслити, що це є підключення до сервера локально, а саме, підключення до інтерфейсу адміністрування, видавати адресу 127.0.0.1 і порт 14147 для друзів не треба! Вони його за ціїю адресою непобачать. Про зовнішні адреси, паролі, необхідних для підключення до сервера, буде написано по ходу статті.
Тепер перейдемо до налаштувань. Це робиться шляхом переходу за адресою "Edit -> Settings" або кліком на кнопку на панелі інтерфейсу:

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

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

  • Порт, за яким клієнти будуть підключатися до сервера
  • Максимальна кількість клієнтів
  • Кількість потоків
  • Різні таймаути (три штуки)

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

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

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

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

Йдемо далі. У пункті налаштувань "Security Settings" задаються обмеження на вхідні і вихійдні з'єднання типу "сервер-сервер". Тут нічого змінювати не варто.
Розділ налаштувань "Miscellaneous" містять малозначні для домашнього фтп-сервера настройки. Наприклад, такі як "Не показувати пароль в лог-файлах" (Don't 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") або для кожного дня створювати окремий (в цьому випадку можна обмежити їх максимальний термін зберігання).

Вкладка "GSS Settings" відповідає за використання протоколу Kerberos GSS. Для звичайного використання ця опція не вимагає настройки.
Далі у нас "Speed ​​Limits". Она може допомогти обмежити швидкість вхідних і вихідних з'єднань. Є два шляхи обмеження: задати постійне обмеження на весь час або створити правила на конкретний день і / або годину. Обмеження задаються в кілобайтах.

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

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

Початкове налаштування акаунтів користувачів (users) і доступів (share)

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

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


Тепер для нашого нового користувача можна задати пароль і обмеження по кількості з'єднань. При необхідності зробіть оне, виставивши галочку "Password" та вказавши його (пароль) у віконці навпроти. Настійно рекомендується використовувати паролі для користувачів в цілях безпеки.
Далі переходимо на вкладку "Share Folders". Тут, власне, ми задаємо до яких саме папок користувач матиме доступ. Робиться це просто: тиснемо "Add" і вибираємо потрібну папку на диску. Зліва можна задати права доступу до неї: тільки читання - "Read", запис - "Write", видалення - "Delete" і можливість зміни існуючих файлів в директорії - "Append". Нижче можна дозволити створення, видалення, отримання списку файлів і поширення дозволів на підкаталоги.

Задаємо необхідні Вам параметри та папки і .. Тиснемо ОК
На цьому основна настройка закінчена. Для домашнього користування більшого й не треба.

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

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

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


© 2010-2024   Андрій Перепелиця

На верх