Замовляйте VPS-сервер зі скидкою 15%
Акція завершиться через
00Днів
:
00Годин
:
00Хвилин
:
00Секунд

Встановлення FTP-сервера

Встановлення та створення FTP-користувача без використання панелі керування.

 

Встановлення ProFTPD:

Системи Debian/Ubuntu:

apt-get install proftpd

 

CentOS:

yum install epel-release
yum install proftpd

 

Якщо сервер не запустився автоматично, скористайтеся командою для ручного запуску:

service proftpd start
 

Обмеження FTP-користувачів межами домашнього каталогу

Ця стаття передбачає роботу з конфігурацією ProFTPD за замовчуванням. У такому разі користувач може виходити за межі свого домашнього каталогу і, хоча прав на роботу з іншими каталогами в нього, скоріше за все, немає, при недостатньо жорстких налаштуваннях сервера це може становити загрозу безпеці. Вирішити цю проблему можна, додавши один рядок до файлу proftpd.conf:

DefaultRoot ~

 

Цей рядок можна додати в кінці файлу. Після збереження перезапустіть FTP-сервер:

service proftpd restart
 

Розташування proftpd.conf:

Файл налаштувань proftpd.conf може розташовуватися в різних місцях залежно від версії вашої ОС:

Ubuntu: /etc/proftpd.conf
Debian: /etc/proftpd/proftpd.conf
CentOS: /etc/proftpd.conf

Створення нового FTP-користувача:

Звичайним FTP-користувачам немає потреби мати доступ до командної оболонки. Перш ніж переходити до створення нових користувачів, виконайте команду:

echo '/bin/false' >> /etc/shells

 

Створіть нового користувача:

useradd ім'я_користувача -d /home/ім'я_папки -m -s /bin/false
passwd ім'я_користувача

 

Командами вище ми створили користувача (значення ім'я_користувача потрібно замінити на вільне ім'я) та відповідну групу, призначили й створили (прапорець -m можна пропустити, якщо каталог уже існує) домашній каталог /home/ім'я_папки, а також вказали /bin/false як командну оболонку користувача, тим самим відключивши її з міркувань безпеки. Командою passwd ми задали користувачу необхідний пароль.

У більшості випадків на цьому етапі ви вже можете підключатися створеним користувачем до FTP-сервера, який за замовчуванням працює на порту 21.

Додаткова інформація:

 
Доступ до командної оболонки (shell)

Якщо ви все ж хочете надати користувачу доступ до командної оболонки, необхідно вказати шлях до будь-якої наявної оболонки замість /bin/false, наприклад:

/bin/sh

 

або:

/bin/bash

 

Користувачам, які працюють за звичайним протоколом FTP, доступ до shell не потрібен, тому з міркувань безпеки краще його не надавати.

 
Обмеження прав FTP-користувача:

За потреби ви можете закрити права на запис для користувача, наприклад у домашній директорії, і залишити їх лише для певної внутрішньої папки, наприклад upload.

Від імені суперкористувача змініть права:

chmod 555 /home/ім'я_папки
mkdir /home/ім'я_папки/upload
chown ім'я_користувача:ім'я_користувача /home/ім'я_папки/upload

 

У цьому випадку друге значення ім'я_користувача є назвою групи, яка за замовчуванням збігається зі створеним вами іменем користувача.

Таким чином, за короткий час і з мінімальною кількістю дій ви можете створити безпечного базового FTP-користувача і розпочати роботу з FTP на сервері.