Одним из самых практичных и хорошо известных протоколов выгрузки файлов на удаленный сервер является File Transfer Protocol (проще говоря, FTP). Этот инструмент нельзя причислять к списку современных разработок, но с актуальностью его применения трудно поспорить. Многие веб-мастера используют данный протокол для создания хранилища информации и управления файлами.
В данном материале пойдет речь о мельчайших нюансах установки и дальнейшей настройке конфигураций FTP-сервера на ПК.
В текущем примере фигурируют ОС Ubuntu, Debian, Centos и один из надёжнейших FTP-серверов под названием VSFTPD. Альтернативой последнему также способен послужить FTP-сервер Very Secure FTP Daemon.
Перечисленные инструменты прекрасно защищены от всевозможных уязвимостей, а потому пользуются большой популярностью у пользователей Linux. Им действительно можно доверять.
Содержание
Установка ФТП-сервера
Данную программу можно взять из официального репозитория. Первым делом пользователю необходимо произвести обновление перечня пакетов в репозиториях.
Второй мерой будет непосредственно сама установка инструмента. Воспользуйтесь терминалом и перейдем в режиме суперпользоволя:
$ sudo bash
Процесс установки немного отличается от разных версиях Линукс, поэтому рассмотрим их отдельно.
Для Debian / Ubuntu:
# apt update
# apt install vsftpd
Для Centos 7:
# yum install vsftpd
Для Centos 8
# dnf install vsftpd
По окончанию процесса установки важно не упустить один важный момент: самостоятельное включение сервиса vsftpd.
К сожалению, он не будет запущен в автоматическом режиме, что было бы намного удобнее, но это крайне необходимо для нормального процесса установки программы. После включения vsftpd необходимо добавить службу в автозагрузку.
На практике это делается следующим образом:
- Первое действие:
# systemctl start vsftpd
- Второе действие:
# systemctl enable vsftpd
Важно! При добавлении инструмента в Linux нередко возникают различные помехи и сложности. Одной из распространенных преград становится фаервол ufw - для Centos и iptables для Debian / Ubuntu.
Чтобы решить текущую проблему, пользователю достаточно открыть порты «20» и «21». После этого процесс установки программы продолжится в нормальном режиме.
Чтобы открыть порты, следует выполнить несколько простых действий. Они будут рассмотрены ниже.
Для фаерволла ufw, по умолчанию используется в операционной системе Centos.
- Первое действие:
# ufw allow 20/tcp
- Второе действие:
# ufw allow 21/tcp
- Третье действие:
# ufw status
Для iptables, по умолчанию используется в операциооных системах Debian и Ubuntu.
# iptables -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT
# iptables -A INPUT -p tcp -m tcp --dport 20 -j ACCEPT
После этого процесс установки программы можно считать завершенным. Однако впереди пользователя ожидает процесс настройки компонентов ФТП сервера, установленного для ОС Линукс. Правильные настройки программы – это гарант безопасной работы с системой, поэтому каждому юзеру Линукс следует быть внимательным при дальнейшем изучении нашего материала.
Важно! Установленная программа уже имеет выставленные стандартные настройки, за счет параметров которых FTP-сервер может начинать выполнение своих прямых «обязанностей». Именно это нередко провоцирует халатность со стороны владельцев Линукс. Многие пользователи считают, что настройки по умолчанию выставлены правильно, и менять эти параметры вовсе не обязательно. Дескать, зачем тратить лишнее время, если программа работает.
Но не все так просто, как это может показаться на первый взгляд. Основная загвоздка кроется в том, что подобный режим работы FTP-сервера в производственных сетях – крайне небезопасная затея. Этого нельзя допускать! Именно поэтому мы приступаем к разбору настроек компонентов программы.
Настройка ФТП
Перед внесением коррективов в настройки программы рекомендуется произвести копирование оригинального файла с текущими параметрами.
Это послужит некой перестраховкой на тот случай, если что-то пойдет не поп плану, и будет целесообразным вернуть всё на свои первоначальные места. Копируем данные:
# cp /etc/vsftpd.conf /etc/vsftpd.conf.orig
Затем необходимо запустить редактор для открытия скопированного файла. Это можно сделать благодаря применению данной команды:
# nano /etc/vsftpd.conf
Далее потребуется внести некоторые правки в исходный файл.
Примечание: те параметры, которые нуждаются в коррективах, уже указаны в файле. Это значит, что пользователю необходимо найти их и заменить другими значениями. Создавать новые параметры при их наличии не требуется!
Прежде чем выполнить задуманное, потребуется отключить вход в режиме «аноним». Как это сделать:
anonymous_enable = NO
Теперь нужно разрешить вход для локальных юзеров Linux. Для этого выполните следующее действие:
local_enable = YES
Чтобы авторизованные юзеры Линукс получили возможность корректировать системные файлы, нужно предоставить им разрешение некоторых команд. На практике это выглядит так:
write_enable = YES
Так как FTP-сервер начнет образовывать новые файлы, необходимо указать для них другое значение. А именно:
local_umask = 022
Чтобы юзер системы мог осуществить выбор определенного каталога после прохождения «registration», потребуется включить соответствующее сообщение:
dirmessage_enable = YES
Чтобы фаервол мог функционировать без сбоев, пользователю необходимо выбрать порт для передачи информации.
Это не может быть случайный порт.
Измените текущие параметры в файле следующим способом:
connect_from_port_20 = YES
Затем измените параметр, отвечающий за ожидание входящих соединений. Это делается очень просто:
listen=YES
Необходимо самостоятельно и по собственному усмотрению выбрать списки тех пользователей, которым будут разрешены или запрещены доступы к различным файлам и папкам.
Всё это делается с целью повышения уровня безопасности системы. Каких-либо конкретных рекомендаций в этом вопросе быть не может, поскольку всё слишком индивидуально. Пользователю остается лишь отыскать нужные команды для коррективов тех или иных параметров программы.
Как надёжно защитить данные в Linux
Грамотная шифровка передаваемой информации – еще один из ключевых гарантов безопасности системы. Чтобы FTP-сервер работал в оптимальном и хорошо защищенном режиме, необходимо произвести дополнительные настройки, касаемые FTPS.
К чему это приведет, если объяснять простыми словами? Система продолжит передавать данные по FTP-серверу, но поверх SSL-протокола. Лишь этот нюанс отличает новые параметры настроек от параметров, установленных по умолчанию.
Вопрос: как включить FTPS-режим в Линукс?
Ответ: для этих целей понадобится специальная директива. Она указана ниже:
ssl_enable=YES
Далее пользователю необходимо открыть файл под названием «vsftpd.conf», являющийся стандартным файлом в системе. В нем содержатся определенные опции, ключи и сертификаты, которые не подходят для дальнейшего функционирования программы в операционной системе Линукс.
Эти данные необходимо заменить в обязательном порядке. Дело в том, что активация режима FTPS для FTP-сервера без ключей и сертификатов является невозможным, поэтому их нужно сгенерировать заново, под свой ПК или сервер.
Заключение
Процесс установки и настройки конфигураций FTP-сервера в Линукс – вполне реальная и легко выполнимая задача для тех, кто умеет безоговорочно следовать инструкциям. Все необходимые базовые рекомендации даны в этой статье.
Еще раз хотим напомнить о важности внесения новых параметров в настройки программы.
Если FTP-сервер начнет работать с настройками по умолчанию, уровень безопасности системы начнет снижаться, а риски поймать уязвимость – расти. Разработчики советуют не жалеть времени на грамотное и полноценное настраивание программы. Это позволит защитить ПК или сервер и не возвращаться к этим вопросам в дальнейшем.