Личный блог Suvan`a.

Работая и играя с Linux... И что из этого иногда получается.

Защита FTP: WU-FTP.

Рубрика: Безопасность -> Защита сервисов
Метки:
Пятница, 6 ноября 2009 г.
Просмотров: 22130
Подписаться на комментарии по RSS

     Поговорим о защите FTP-сервера. Сначала нужно подумать, а нужен ли он вообще на сервере? Может, его лучше вообще отключить? Если FTP-сервер нужен для того, чтобы пользователи просто скачивали файлы, то надо просто выложить их на Web-сервер и настроить базовую или digest-аутентификацию к каталогу с файлами.

     Если же пользователю можно загружать файлы на сервер, также надо придумать альтернативу, например, загрузка их с помощью CGI-сценария, употребление SCP или отправка файлов по e-mail  - будет безопаснее. Чем меньше сервисов запущено на машине, тем меньше потенциальных входов в систему.


     WU-FTP.

     В состав многих дистрибутивов Linux входит FTP-сервер, разработанный Вашингтонским университетом - WU-FTP (http://www.wu-ftp.org). WU-FTP - это популярный, полнофункциональный FTP-сервер, но, к сожалению, славящийся фигурированием многих уязвимостей. Рассматриваем его защиту только потому, что он изрядно популярен, но потом будут рассмотрены более безопасные альтернативы.

     Конфигурационные файлы WU-FTP находятся в каталоге /etc/ftp*, однако надо помнить, что файлы ftpusers и ftpgroups теперь не используются -  нужные изменения теперь делаются в файле ftpaccess.

     Отключение банера.

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

  • full - выводит полный баннер: имя машины, название демона и его версию;
  • brief - описывается только имя машины;
  • terse - выводится сообщение «FTP server ready», при данном не говорится ни имя машины, ни название демона, ни его версия;
  • text <сообщение> - позволяет установить сообщение, которое будет отображено в качестве приветствия.

     Рекомендуется использовать значение terse.

     Доступ пользователей.

     WU-FTP дает возможность использовать три вида доступа:

  • Анонимный (anonymous) - на сервере может зарегистрироваться какой угодно пользователь, используя имя пользователя anonymous и e-mail в качестве пароля. Обычно эти пользователи работают в chroot-окружении, в котором им предоставляется доступ к подкаталогам каталога /var/ftp.
  • Настоящий (real) - пользователю дается полный доступ к дереву каталогов (в соответствии с установленными правами доступа). Такой же доступ может быть получен при применении SSH, но SSH значительно безопаснее, поэтому лучше никогда не предоставлять пользователям данный вид доступа.
  • Гостевой (guest) - похож на реальный, но пользователь попадает в chroot-окружения для доступа к его домашнему каталогу. Данный метод представляется предпочитаемым в случае с FTP.

     Можно определить, каким пользователям предоставляется тот или иной вид доступа. Для данного используются опции anonuser, realuser и guestuser соответственно, например:

guestuser *

     Это означает, что всем пользователям будет предоставлен гостевой доступ.

     Затем можно определить, какие операции разрешено исполнять при том или ином классе доступа:

chmod     no    guest,anonymous
delete    no    anonymous
overwrite no    anonymous
rename    no    anonymous

     Эти значения по умолчанию сполна приемлемы, поэтому их не стоит изменять.

Анонимный доступ может быть ограничен с помощью опции guestserver, задающей маски разрешенных узлов, например:

guestserver *.example.com

     Если нужно совсем отключить анонимный доступ, можно использовать эту опцию и не указывать никаких узлов.

     В заключение можно задать ограничение на максимальное количество подключений для каждого класса пользователей. Синтаксис опции limit следующий:

limit   <класс> <п> <время> <файл_с_сообщением>

     Здесь: <класс> - это класс пользователей (any, real, guest или anonymous); times - это период времени, на протяжении которого действует ограничение. Если лимит будет превышен, пользователям будет запрещен доступ и отображено сообщение, находящееся в файле, заданном в последнем параметре.

     К примеру:

limit  anon  5 any /etc/ftp_toomany

     Опции протоколирования.

     Для управления протоколированием в WU-FTP используются следующие опции:

  • log commands <класс> - класс - это комбинация классов пользователей (real, guest, anonymous или all для всех классов). Эта опция позволяет записывать команды, введенные пользователями указанных классов.
  • log transfers <класс> [направление] - протоколирование передач файлов. Класс - это класс пользователей. Направление - это направление передачи, income - передачи на сервер, outgoing - передача файла пользователю.
  • log security <класс> - записывает нарушения безопасности, к примеру, когда пользователь вводил запрещенные для своего класса команды.

    Рекомендуется включить все данные три опции для каждого класса пользователей.

Оставьте комментарий!

Не регистрировать/аноним

Используйте нормальные имена.

Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email.
(При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д.)



(обязательно)