Библиотека сайта rus-linux.net
Проверяем что установлен или устанавливаем пакет ProFTPd
# urpmi proftpd
Файл конфигурации для FTP сервера ProFTPd это
/etc/proftpd.conf
. Все настройки и изменения мы будем
делать именно в нем.
Запускаем сервер:
# /etc/init.d/proftpd restart
проверяем работоспособность
$ lftp admin@localhost
вводим пароль пользователя admin. Теперь выполняем команду
ls и убеждаемся, что мы находимся в домашнем каталоге пользователя admin.
Выполняем команду cd / и ls и убеждаемся,
что FTP сервер пустил нас выше домашнего каталога пользователя,
что часто НЕЖЕЛАТЕЛЬНО
.
Выходим из FTP клиента (команда quit).
Чтобы этому воспрепятствовать, пишем в файле конфигурации строчечку
DefaultRoot ~
. Это значит, что мы “запираем”
всех пользователей в их домашних каталогах. А если нам все-таки хочется пустить
какого-то пользователя (пусть это будет testuser) выше,
добавляем еще одну строку DefaultRoot / testuser
.
Часто используется анонимный FTP сервер (anonymous ftp
).
Настроить его легко можно так: добавьте следующий код в конец конфигурационного файла
/etc/proftpd.conf
(каталог /var/ftp/
по умолчанию является каталогом,
где лежат общедоступные файлы и домашним каталогом пользователя ftp,
под которым запускается демон ProFTPd):
########################################### <Anonymous /var/ftp/> User ftp Group ftp # Рассматривать клиентов, вошедших под логином anonymous как ftp UserAlias anonymous ftp # Лимит на максимальное количество подключений пользователя anonymous MaxClients 30 # не спрашивать пароля и оболочку. RequireValidShell off AnonRequirePassword off # ограничение ЗАПИСИ(WRITE) везде в anonymous chroot <Limit WRITE> Order Deny, Allow DenyAll </Limit> </Anonymous> ###########################################
Теперь перезапускаем ProFTPd сервер и проверяем, что анонимный доступ на FTP работает:
$ links ftp://localhost/
Часто используется анонимный FTP сервер, который предоставляет возможность пользователям загружать файлы на сервер. Для того, чтобы это сделать, сначала необходимо создать каталог внутри корня анонимного FTP сервера, в который эти пользователи будут иметь доступ, и сделать его владельцем пользователя ftp.
# mkdir /var/ftp/uploads # chown ftp.ftp /var/ftp/uploads
Теперь добавим следующий код конфигурационный файл /etc/proftpd.conf
внутрь секции <anonymous> (например перед ее закрытием, то есть перед строкой
</anonymous>):
<Directory uploads/*> <Limit READ> DenyAll </Limit> <Limit STOR> AllowAll </Limit> </Directory>
Теперь в каталог /var/ftp/uploads
пользователи могут заливать файлы,
используя анонимную авторизацию. При этом файлы в этом каталоге никто не сможет читать.
Если вам захочется, чтобы загруженные в этот каталог файлы были доступны
для чтения анонимным пользователям, тогда просто закомментируйте (или удалите) следующие строки:
# <Limit READ> # DenyAll # </Limit>
Минимальные настройки FTP сервера закончены. Более расширенные инструкции
поищите у себя в каталоге /usr/share/doc/proftpd-1.2.7/
,
а также на сайте разработчиков этого демона
http://proftpd.org/