Встановлення 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.
Додаткова інформація:
Якщо ви все ж хочете надати користувачу доступ до командної оболонки, необхідно вказати шлях до будь-якої наявної оболонки замість /bin/false, наприклад:
/bin/sh
або:
/bin/bash
Користувачам, які працюють за звичайним протоколом FTP, доступ до shell не потрібен, тому з міркувань безпеки краще його не надавати.
За потреби ви можете закрити права на запис для користувача, наприклад у домашній директорії, і залишити їх лише для певної внутрішньої папки, наприклад upload.
Від імені суперкористувача змініть права:
chmod 555 /home/ім'я_папки
mkdir /home/ім'я_папки/upload
chown ім'я_користувача:ім'я_користувача /home/ім'я_папки/upload
У цьому випадку друге значення ім'я_користувача є назвою групи, яка за замовчуванням збігається зі створеним вами іменем користувача.
Таким чином, за короткий час і з мінімальною кількістю дій ви можете створити безпечного базового FTP-користувача і розпочати роботу з FTP на сервері.








