Старий добрий протокол передачі FTP дозволяє передавати файли по мережах, і швидше за все вам коли-небудь доводилося з ним стикатися, або ви про нього чули. За замовчуванням використовує 21 порт (так склалося історично), і традиційно служить для обміну файлами, між машинами, за схемою клієнт-сервер, як втім, і багато інші протоколи. FTP є героєм свого часу, і сьогодні він має досить велику затребуваність, для завдань публічних ftp серверів. Крім того, багато хостингові компанії продовжують підтримувати цей протокол, зважаючи на його зручності для обміну файлами.
В даному пості ми розглянемо установку сервера ftp на операційну систему CentOS Linux. В силу того, що він був розроблений досить таки давно, початковий ftp є не захищеним в плані шифрування трафіку і т. д., що сьогодні підриває його актуальність за сучасними мірками безпеки. Тому найбільш оптимальним вибором для більшості користувачів, яким потрібний ftp-сервер, є софт vsftp (Very Secure FTP daemon). Варто відзначити його надійність, а так само простоту налаштування FTP сервера.
Установка vsftpd
Для установки сервера vsftpd вам необхідно авторизуватись під root-ом, потім виконати команду:
# yum install vsftpd
Даний пакет входить в стандартний репозиторій CentOS, і проблем з установкою даного софта проблем виникнути не повинно. Після того як пройшов процес установки, можна додати запуск сервера при старті системи:
# chkconfig vsftpd on
Після того як сервер було встановлено, базова конфігурація дозволяє працювати сервера з налаштуваннями за замовчуванням. Для того щоб внести зміни в налаштування конфігурації, вам достатньо правити конфігураційний файл:
/etc/vsftpd/vsftpd.conf
Рекомендується в такому разі, перед тим як щось додатково налаштовувати зберегти резервну копію конфігураційного файлу. Читання документації дозволить налаштувати сервер під себе» з найменшою витратою часу, нервів, та й мало. Там описано призначення безлічі параметрів, про які я не буду розписувати тут.
Після цього можна запускати сервер, але є ще дещо, що може перешкодити роботі сервера, це файрвол, як і в більшості випадків з конфігурацією серверів, слід дозволити підключення до вашого сервера.
Правила iptables
Відкриваємо конфігураційний файл iptables:
/etc/sysconfig/iptables
Додаємо правила для ftp сервера:
iptables -A INPUT -p tcp –dport 21 -j ACCEPT
iptables -A OUTPUT -p tcp –sport 20 -j ACCEPT
Не забуваємо, щоб правила вступили в силу, iptables слід перезапустити.
# service iptables restart
Запуск vsftpd
# service vsftpd start
В якості висновку хотілося б відзначити той факт, що vsftpd не дивлячись на простоту його установки, він є досить потужним сервером з достатньою кількістю булочок і корисностей. Серед них я б відзначив найбільш актуальні фічі, такі як віртуальні користувачі, індивідуальні настройки, ліміти, окремі налаштування для окремих IP адрес і багато іншого.
Приклад простої конфігурації сервера
Правимо файл конфігурації:
# vi /etc/vsftpd/vsftpd.conf
Заборона виходу користувача з домашньої директорії
chroot_local_user=YES
Забороняємо анонімний вхід на сервер
anonymous_enable=NO
Створення користувачів FTP
Додаємо користувача
# useradd ftpuser
Задаємо пароль для створеного користувача
# passwd ftpuser
Дарее правимо файл /etc/passwd
Знаходимо рядок користувача ftpuser:
ftpuser:x:513:513::/home/ftpuser:/bin/bash
/home/ftp — домашній каталог користувача;
/sbin/nologin — заборона на доступ користувача до системи;
Для зручності використання можна створити групу наприклад ftpusers, потім поставити відповідні права на папку /home/ftp
Одні з популярних програм для підключення до FTP-сервера це FileZilla або Total Commander
(див. як встановити SFTP плагін в Total Commander). Так само на нашому сайті є пост про те, чи можна використовувати обмін по SFTP між двома серверами Linux.
Настроюється підключення так само як і в інших випадках, в налаштуваннях підключення вказуємо адресу сервера, ім’я користувача ftpuser, пароль.
Кореневу дирректорию, можна не вказувати, т. к. за замовчуванням нею буде /home/ftp.
Додав: htmaker, 17.09.2016 р.
(Ще не оцінили)
Завантаження…
Діліться з друзями:
См. також:
Оновлення пакетів в CentOS
Рубрика: Linux
Bash: mail: command not found
Рубрика: Linux
Виставляємо тимчасову зону в CentOS 7
Рубрика: Linux
Налаштування SELinux, включення, відключення
Рубрика: Linux, Інф. безпека
Змінюємо пароль root в MySQL 5.7
Рубрика: Linux, MySQL
Установка і настройка mSMTP на Linux
Рубрика: Linux
Установка GIT на CentOS 7
Рубрика: Linux
Як відключити IPv6 в CentOS 7?
Рубрика: Linux
Ротація логів в Linux
Рубрика: Apache, Linux