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

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

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

Рубрика: Безопасность -> Защита сервисов
Метки:
Пятница, 6 ноября 2009 г.
Просмотров: 23238
Подписаться на комментарии по 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.
(При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д.)



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