Ftp сервер для линукса

Создание FTP-сервера в Linux

Передача файлов в сети осуществляется благодаря правильно настроенному FTP-серверу. Такой протокол работает с применением TCP по архитектуре клиент-сервер и задействует различные сетевые соединения для обеспечения передачи команд между подключенными узлами. Пользователи, которые подключились к определенному хостингу, сталкиваются с надобностью настройки личного FTP-сервера по требованиям компании, предоставляющей услуги обеспечения работы сайта или другого обеспечения. Далее мы продемонстрируем, как создается такой сервер в Linux на примере одной из утилит.

Создаем FTP-сервер в Linux

Сегодня мы будем использовать инструмент под названием VSftpd. Преимущества такого FTP-сервера в том, что он по умолчанию работает на многих ОС, обслуживает официальные репозитории различных дистрибутивов Linux и относительно просто настраивается для корректного функционирования. К слову, на ядре Линукс официально применяется именно этот FTP, и многие хостинги рекомендуют ставить VSftpd. Поэтому давайте обратим внимание на пошаговый процесс инсталляции и настройки необходимых компонентов.

Шаг 1: Установка VSftpd

По умолчанию всех нужных библиотек VSftpd в дистрибутивах не имеется, поэтому их нужно вручную загрузить через консоль. Осуществляется это следующим образом:

  1. Откройте «Терминал» любым удобным методом, например, через меню.

Обладателям версий Debian или Ubuntu требуется прописать команду sudo apt-get install vsftpd . CentOS, Fedora — yum install vsftpd , а для Gentoo — emerge vsftpd . После введения нажмите на Enter, чтобы запустить процесс инсталляции.

Подтвердите наличие прав у своей учетной записи, указав соответствующий пароль.

Обращаем внимание обладателей CentOS, которые задействуют выделенный виртуальный сервер от любого хостинга. Вам потребуется произвести обновление модуля ядра ОС, поскольку без этой процедуры во время инсталляции отобразится критическая ошибка. Последовательно вводите такие команды:

yum update
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
yum install yum-plugin-fastestmirror
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-3.15.6-1.el7.elrepo.x86_64.rpm
yum install kernel-ml-3.15.6-1.el7.elrepo.x86_64.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-devel-3.15.6-1.el7.elrepo.x86_64.rpm
yum install kernel-ml-devel-3.15.6-1.el7.elrepo.x86_64.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-doc-3.15.6-1.el7.elrepo.noarch.rpm
yum install kernel-ml-doc-3.15.6-1.el7.elrepo.noarch.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-headers-3.15.6-1.el7.elrepo.x86_64.rpm
yum install kernel-ml-headers-3.15.6-1.el7.elrepo.x86_64.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-tools-3.15.6-1.el7.elrepo.x86_64.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-tools-libs-3.15.6-1.el7.elrepo.x86_64.rpm
yum install kernel-ml-tools-libs-3.15.6-1.el7.elrepo.x86_64.rpm
yum install kernel-ml-tools-3.15.6-1.el7.elrepo.x86_64.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-tools-libs-devel-3.15.6-1.el7.elrepo.x86_64.rpm
yum install kernel-ml-tools-libs-devel-3.15.6-1.el7.elrepo.x86_64.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/perf-3.15.6-1.el7.elrepo.x86_64.rpm
yum install perf-3.15.6-1.el7.elrepo.x86_64.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/python-perf-3.15.6-1.el7.elrepo.x86_64.rpm
yum install python-perf-3.15.6-1.el7.elrepo.x86_64.rpm
yum —enablerepo=elrepo-kernel install kernel-ml

После окончания всей этой процедуры запустите любым удобным образом конфигурационный файл /boot/grub/grub.conf . Измените его содержимое таким образом, чтобы в итоге следующие параметры имели соответствующие значения:

default=0
timeout=5
title vmlinuz-4.0.4-1.el7.elrepo.x86_64
root (hd0,0)
kernel /boot/vmlinuz-4.0.4-1.el7.elrepo.x86_64 console=hvc0 xencons=tty0 root=/dev/xvda1 ro
initrd /boot/initramfs-4.0.4-1.el7.elrepo.x86_64.img

Далее вам останется только перезагрузить выделенный сервер и переходить к непосредственной инсталляции FTP-сервера на компьютер.

Шаг 2: Первоначальная настройка FTP-сервера

Вместе с программой на компьютер был загружен ее конфигурационный файл, отталкиваясь от которого и происходить функционирование FTP-сервера. Все настройки выполняются сугубо индивидуально по рекомендациям хостинга или собственным предпочтениям. Мы лишь можем показать, как открывается этот файл и каким параметрам обязательно следует уделить внимание.

    В операционных системах Debian или Ubuntu конфигурационный файл запускается так: sudo nano /etc/vsftpd.conf . В CentOS и Fedora он находится по пути /etc/vsftpd/vsftpd.conf , а в Gentoo — /etc/vsftpd/vsftpd.conf.example .

Читайте также:  Меню пуск windows 10 как убрать с рабочего стола

В консоли или текстовом редакторе отобразится сам файл. Здесь обратите внимание на указанные ниже пункты. В вашем конфигурационном файле они должны иметь такие же значения.

anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
Остальное редактирование осуществляйте сами, а после не забудьте сохранить изменения.

Шаг 3: Добавление пользователя с расширенными правами

Если вы собираетесь работать с FTP-сервером не через свою основную учетную запись или хотите предоставить доступ другим юзерам, созданные профили обязательно должны иметь права суперпользователя, чтобы при обращении к утилите VSftpd не возникало ошибок с отказом в доступе.

    Запустите «Терминал» и введите команду sudo adduser user1 , где user1 — имя новой учетной записи.

Задайте для него пароль, после чего подтвердите его. Кроме этого, настоятельно рекомендуем запомнить домашний каталог учетной записи, в дальнейшем может понадобиться обращение к нему через консоль.

Заполните основную информацию — полное имя, номер комнаты, номера телефонов и прочую информацию, если требуется.

После этого присвойте пользователю расширенные права путем ввода команды sudo adduser user1 sudo .

Создайте для юзера отдельную директорию под хранение его файлов через sudo mkdir /home/user1/files .

Далее переместитесь в свою домашнюю папку через cd /home и там сделайте нового пользователя владельцем своей директории, введя chown root:root /home/user1 .

Перезапустите сервер после осуществления всех изменений sudo service vsftpd restart . Только в дистрибутиве Gentoo утилита перезагружается через /etc/init.d/vsftpd restart .

Теперь вы можете производить все необходимые действия на FTP-сервере от лица нового юзера, который обладает расширенными правами доступа.

Шаг 4: Настройка Firewall (Только для Ubuntu)

Пользователи других дистрибутивов могут смело пропускать этот шаг, поскольку настройка портов нигде больше не требуется, только в Ubuntu. По умолчанию Firewall настроен таким образом, что не пропустит входящий трафик из нужных нам адресов, поэтому потребуется разрешить его прохождение вручную.

    В консоли поочередно активируйте команды sudo ufw disable и sudo ufw enable , чтобы перезапустить Firewall.

Добавьте правила входящих соединений, используя sudo ufw allow 20/tcp и sudo ufw allow 21/tcp .

Проверьте, были ли применены введенные правила, просмотрев статус фаервола sudo ufw status .

Отдельно хочется отметить несколько полезных команд:

  • /etc/init.d/vsftpd start или service vsftpd start — анализ конфигурационного файла;
  • netstat -tanp | grep LISTEN — проверка корректности установки FTP-сервера;
  • man vsftpd — вызов официальной документации VSftpd для поиска необходимой информации касаемо работы утилиты;
  • service vsftpd restart или /etc/init.d/vsftpd restart — перезагрузка сервера.

Что касается получения доступа к FTP-серверу и дальнейшей работе с ним, обращайтесь за получением этих данных к представителям своего хостинга. У них же вы сможете уточнить информацию по поводу тонкостей настройки и возникновению различного рода ошибок.

На этом статья подходит к концу. Сегодня мы разобрали процедуру установки сервера VSftpd без привязки к какому-либо хостингу, поэтому учтите это при выполнении наших инструкций и сравнивайте их с теми, что предоставляет компания, содержащая ваш виртуальный сервер. Кроме всего, советуем ознакомиться с другим нашим материалом, в котором разбирается тема установки компонентов LAMP.

Помимо этой статьи, на сайте еще 12315 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.

Отблагодарите автора, поделитесь статьей в социальных сетях.

Источник

Как поднять ftp сервер на Linux

Одним из самых практичных и хорошо известных протоколов выгрузки файлов на удаленный сервер является File Transfer Protocol (проще говоря, FTP). Этот инструмент нельзя причислять к списку современных разработок, но с актуальностью его применения трудно поспорить. Многие веб-мастера используют данный протокол для создания хранилища информации и управления файлами.

Читайте также:  Windows как ввести автоматически пароль

В данном материале пойдет речь о мельчайших нюансах установки и дальнейшей настройке конфигураций FTP-сервера на ПК.

В текущем примере фигурируют ОС Ubuntu, Debian, Centos и один из надёжнейших FTP-серверов под названием VSFTPD. Альтернативой последнему также способен послужить FTP-сервер Very Secure FTP Daemon.

Перечисленные инструменты прекрасно защищены от всевозможных уязвимостей, а потому пользуются большой популярностью у пользователей Linux. Им действительно можно доверять.

Установка ФТП-сервера

Данную программу можно взять из официального репозитория. Первым делом пользователю необходимо произвести обновление перечня пакетов в репозиториях.

Второй мерой будет непосредственно сама установка инструмента. Воспользуйтесь терминалом и перейдем в режиме суперпользоволя:

Процесс установки немного отличается от разных версиях Линукс, поэтому рассмотрим их отдельно.

Для Debian / Ubuntu:

# apt install vsftpd

# yum install vsftpd

# 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

Для 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-сервера в производственных сетях – крайне небезопасная затея. Этого нельзя допускать! Именно поэтому мы приступаем к разбору настроек компонентов программы.

Настройка ФТП

Перед внесением коррективов в настройки программы рекомендуется произвести копирование оригинального файла с текущими параметрами.

Читайте также:  Не найдено приложение для обработки протокола windows store

Это послужит некой перестраховкой на тот случай, если что-то пойдет не поп плану, и будет целесообразным вернуть всё на свои первоначальные места. Копируем данные:

# cp /etc/vsftpd.conf /etc/vsftpd.conf.orig

Затем необходимо запустить редактор для открытия скопированного файла. Это можно сделать благодаря применению данной команды:

Далее потребуется внести некоторые правки в исходный файл.

Примечание: те параметры, которые нуждаются в коррективах, уже указаны в файле. Это значит, что пользователю необходимо найти их и заменить другими значениями. Создавать новые параметры при их наличии не требуется!

Прежде чем выполнить задуманное, потребуется отключить вход в режиме «аноним». Как это сделать:

Теперь нужно разрешить вход для локальных юзеров Linux. Для этого выполните следующее действие:

Чтобы авторизованные юзеры Линукс получили возможность корректировать системные файлы, нужно предоставить им разрешение некоторых команд. На практике это выглядит так:

Так как FTP-сервер начнет образовывать новые файлы, необходимо указать для них другое значение. А именно:

Чтобы юзер системы мог осуществить выбор определенного каталога после прохождения «registration», потребуется включить соответствующее сообщение:

Чтобы фаервол мог функционировать без сбоев, пользователю необходимо выбрать порт для передачи информации.

Это не может быть случайный порт.

Измените текущие параметры в файле следующим способом:

Затем измените параметр, отвечающий за ожидание входящих соединений. Это делается очень просто:

Необходимо самостоятельно и по собственному усмотрению выбрать списки тех пользователей, которым будут разрешены или запрещены доступы к различным файлам и папкам.

Всё это делается с целью повышения уровня безопасности системы. Каких-либо конкретных рекомендаций в этом вопросе быть не может, поскольку всё слишком индивидуально. Пользователю остается лишь отыскать нужные команды для коррективов тех или иных параметров программы.

Как надёжно защитить данные в Linux

Грамотная шифровка передаваемой информации – еще один из ключевых гарантов безопасности системы. Чтобы FTP-сервер работал в оптимальном и хорошо защищенном режиме, необходимо произвести дополнительные настройки, касаемые FTPS.

К чему это приведет, если объяснять простыми словами? Система продолжит передавать данные по FTP-серверу, но поверх SSL-протокола. Лишь этот нюанс отличает новые параметры настроек от параметров, установленных по умолчанию.

Вопрос: как включить FTPS-режим в Линукс?

Ответ: для этих целей понадобится специальная директива. Она указана ниже:

Далее пользователю необходимо открыть файл под названием «vsftpd.conf», являющийся стандартным файлом в системе. В нем содержатся определенные опции, ключи и сертификаты, которые не подходят для дальнейшего функционирования программы в операционной системе Линукс.

Эти данные необходимо заменить в обязательном порядке. Дело в том, что активация режима FTPS для FTP-сервера без ключей и сертификатов является невозможным, поэтому их нужно сгенерировать заново, под свой ПК или сервер.

Заключение

Процесс установки и настройки конфигураций FTP-сервера в Линукс – вполне реальная и легко выполнимая задача для тех, кто умеет безоговорочно следовать инструкциям. Все необходимые базовые рекомендации даны в этой статье.

Еще раз хотим напомнить о важности внесения новых параметров в настройки программы.

Если FTP-сервер начнет работать с настройками по умолчанию, уровень безопасности системы начнет снижаться, а риски поймать уязвимость – расти. Разработчики советуют не жалеть времени на грамотное и полноценное настраивание программы. Это позволит защитить ПК или сервер и не возвращаться к этим вопросам в дальнейшем.

Источник

Оцените статью