Мы будем рассматривать настройку FTP-сервера ProFTPD в ubuntu. На мой взгляд, данный сервер наиболее гибкий в настройке, за что особое спасибо разработчикам убунту. Установите два пакета...
Мы будем рассматривать настройку FTP-сервера ProFTPD. На мой взгляд,
данный сервер наиболее гибкий в настройке. Установите два пакета:
proftpd и gproftpd. Первый содержит FTP-сервер, а второй — графическую
программу для его настройки. После установки сервер практически
готов к работе. Его нужно только запустить (по умолчанию он добавляется
в автозапуск, поэтому после перезагрузки данная команда не потребуется): sudo /etc/init.d/proftpd start Попробуем подключиться к вашему серверу: ftp <имя_вашего_компыотера> FTP-сервер
запросит имя пользователя и пароль. Нужно вводить имя пользователя,
зарегистрированное на вашем компьютере (на FTP-сервере). После этого вы
получите доступ к домашнему каталогу пользователя, который будет для
вас корневым, т. е. за пределы этого каталога выйти не получится. Это
сделано из соображений безопасности, чтобы никто не мог получить доступ
к файловой системе сервера. Данная конфигурация сервера не очень
удобна. Когда нужно предоставить доступ пользователям к их домашним
каталогам — все просто прекрасно. Но предположим, что вы хотите сделать
свою коллекцию фильмов доступной всем пользователям сети. Можно,
конечно, записать их в ваш домашний каталог, а потом всем предоставить
имя пользователя и пароль, но такая конфигурация нежелательна с точки
зрения безопасности — все смогут прочитать ваши файлы, причем не только
прочитать, а изменить и даже удалить. Поэтому намного рациональнее
предоставить всем пользователям анонимный доступ к вашей коллекции
фильмов. Каждый желающий сможет скачать фильм, но никто не сможет
ничего удалить. Основной файл конфигурации сервера ProFTPD
называется /etc/proftpdV proftpd.conf. По умолчанию в конфигурационном
файле указываются далеко не все опции, которые доступны, поэтому для
создания полноценного конфигурационного файла нужно запустить программу
gproftpd: gksudo gproftpd При первом запуске программа сообщит
вам, что в конфигурационном файле не хватает многих опций, и предложит
создать полноценный конфигурационный файл. В верхней части окна программы настройки FTP-сервера расположены кнопки управления сервером: □ Online/Offline — информируют о статусе сервера (зеленая кнопка говорит о том, что сервер запущен); □ Shutdown — завершает работу сервера; □ RcRcad — заставляет сервер перечитать конфигурационный файл.
На
вкладке Servers можно управлять разными серверами, если у вас их
несколько, точнее, редактировать их файлы конфигурации. У нас будет
только один сервер, поэтому я не думаю, что кнопки Add Server и Delete
server вам пригодятся. Ознакомимся с другими вкладками программы настройки: □ Users — позволяет управлять пользователями выбранного сервера; □ Transfers — информация об использовании выбранного сервера; □ Disk — информация об использовании дискового пространства локального компьютера; □ Files — позволяет сгенерировать файлы статистики сервера; □ Conf— позволяет редактировать конфигурационный файл сервера; □ Security — информация, касающаяся безопасности сервера.
Group nogroup # Определяем стандартный псевдоним anonymous UserAlias anonymous ftp # Отключает проверку командного интерпретатора пользователя - это лишнее RequireValidShell off # Максимальное количество анонимных клиентов MaxClients 10 # Запрещаем записывать файлы в каталог /var/ftp/pub <Directory *>
<Limit WRITE> DenyAll </Limit> </Directory>
</Anonymous> Теперь
любой пользователь сможет подключиться к вашему серверу, используя имя
пользователя anonymous и любой e-mail в качестве пароля. Они получат
доступ к файлам в каталоге /var/ftp/pub. Файлы можно будет только
скачивать, все остальные действия (изменение, удаление) запрещены,
запрещена и загрузка файлов на сервер. Если нужно разрешить загрузку
файлов на сервер, тогда в конце секции Anonymous (перед
</Anonymous>) добавьте следующую секцию: <Directory incoming> Umask 022 <Limit WRITE> DenyAll </Limit> <Limit STOR> AllowAll </Limit> </Directory> Пользователи смогут просматривать каталог /var/ftp/pub/incoming и загружать в него новые файлы. После внесения изменений в конфигурационный файл нужно нажать кнопку ReRead, чтобы сервер перечитал конфигурационный файл.