Лабораторные работы по ПО/Установка ftp-сервера proftpd
Практическое занятие №2
Установка и настройка ftp сервера для доступа к файлам web-сайта.
На этом практическом занятии мы установим и настроим ftp-сервер ProFTPd. После его настройки вы получите доступ к директории /var/www через ваш файл-менеджер и сможете изменить содержимое главное страницы вашего web-сервера.
Выполните вход в консоль управления сервером по протоколу ssh, как вы это делали на первом занятии. Откройте терминал на локальном компьютере из меню Приложения-Стандартные.
Выполните команду подключения к вашему серверу
ssh 192.168.5.2 -l administrator
После ввода пароля вы должны увидеть приглашение коммандной оболочки на сервере
administrator@student-webserver-01:~$
Репозитории для установки программного обеспечения на вашем сервере уже подключены и для установки сервера вам достаточно дать команду установки нужного пакета.
В дистрибутиве ubuntu доступно около 5 разновидностей программ, предоставляющих сервисы доступа к файлам по протоколу ftp. Наиболее известные из них pure-ftpd, wu-ftpd и proftpd. Полный список доступных ftp серверов для установки в систему вы можете посмотреть, выполнив команду поиска по слова ftpd
aptitude search ftpd
Мы с вами удем использовать ftp-сервер proftpd пришедший в мир Linux из Института Беркли и их набора программ с открытым кодом BSD. Выполните команду установки proftpd.
aptitude install proftpd
Так же, как в случае с установкой web-сервера apache вы можете согласиться с установкой пакетов из недоверенного репозитория.
При вопросе, хотите ли вы запускать Proftpd демон в режиме inetd или standalon, выберите standalon. В этом случае демон будет запускаться при загрузке сервера и будет активен во все время работы сервера.
Настройка ftp сервера proftpd для доступа к файлам web-сайта
Для доступа к файлам в папке /var/www, где хранится непосредственный контент вашего сайта в виде html страниц и используемых в них изображений, нам нужно изменить настройки в конфигурационном файле /etc/proftpd/proftpd.conf.
Откройте конфигурационный файл proftpd-сервера в текстовом редакторе nano.
sudo nano /etc/proftpd/proftpd.conf
Вы увидите большой набор параметров с комментариями к ним. Нас будут интересовать лишь некоторые из них.
Для наших текущих задач нам ненужно будет менять ни каких параметров в этом конфигурационном файле. По умолчанию, после установки proftpd позволяет заходить на сервер по протоколу ftp введя логин и пароль пользователя (тот же самый логин и пароль, который вы используете для входа на сервер по ssh).
Единственное, что мы с вами сделаем - немного ускорим работу ftp сервера добавив параметр, отключающий обратное преобразование имен компьютеров при попытке доступа по ftp. Для этого в конфигурационном файле /etc/proftpd/proftpd.conf найдите блок
... DenyFilter \*.*/ # Use this to jail all users in their homes # DefaultRoot ~ ...
И добавьте в него строчку
... DenyFilter \*.*/ UseReverseDNS off # Use this to jail all users in their homes # DefaultRoot ~ ...
Что бы изменения в конфигурационном файле повлияли на его работы нужно перезапустить сервис proftpd:
sudo /etc/init.d/proftpd restart
Теперь вы можете открыть файл-менеджер Nautilus (Переход -> Домашняя папка), открыть строку ввода адреса (Ctrl-L) и ввести адрес только что созданного ftp сервера (ftp://192.168.5.2). Нажмите Enter.
Если все настройки были сделаны верно, Nautilus попросит вас ввести логин и пароль для доступа к файлам на сервере по протоколу ftp. Введите ваши логин и пароль, которые вы используете для доступа к серверу по ssh.
Назначение прав на web-контент
Если авторизация прошла успешно вы увидите содержание корневой директории вашего сервера.
Web-контент показываемый web-сервером apache при доступе через браузер находиться в директории /var/www. В первой лабораторной работе вы заходили в браузере FireFox на адрес http://192.168.5.2 и видели надпись It works!. Теперь:
- Перейдите в папку /var/www
- Щелкните правой кнопкой мыши по файлу index.html
- В появившемся контекстном меню выберите открыть с помощью -> Текстовый редактор
и посмотрите его содержимое. Это именно тот файл, который вам "отдавал" apache, когда вы заходили через firefox по адресу http://192.168.5.2.
Если вы сейчас попробуете сделать изменения в этом файле, то получите "сбой операции сохранения". Это означает, что у пользователя, под которым вы пошли по ftp нет прав на изменение файл /var/www/index.html. Вы можете убедиться в этом, выполнив в консоли на вашем сервере команду:
ls -l /var/www
Вы увидите
-rw-r--r-- 1 root root 45 Sep 17 12:17 index.html
Давайте изменим "хозяина" директории /var/www и всех находящихся в ней файлов. Новым хозяином будет пользователь, под которым мы входим на ftp ресурс нашего сервера - administrator. Для этого выполним команду:
sudo chown administrator -R /var/www
Теперь выполнив команду
ls -l /var/www
мы увидим
-rw-r--r-- 1 administrator root 45 Sep 17 12:17 index.html
параметры доступа rw-r--r-- означают, что пользователь системы administrator имеет право читать и записывать файл index.html.
Теперь вы можете:
- сного открыть Nautilus
- перейти по адресу ftp://192.168.5.2
- ввести логин и пароль для доступа
- перейти в папку /var/www
- щелкнуть правой кнопкой по файлу index.html и выбрать в меню открыть с помощью - текстового редактора
Теперь вы можете изменять содержимое файла и сохранять изменения на сервере.