Михаил Флёнов - Linux глазами хакера
- Название:Linux глазами хакера
- Автор:
- Жанр:
- Издательство:БХВ-Петербург
- Год:2005
- Город:Санкт-Петербург
- ISBN:5-94157-635-8
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Михаил Флёнов - Linux глазами хакера краткое содержание
Рассмотрены вопросы настройки ОС Linux на максимальную производительность и безопасность. Описаны потенциальные уязвимости и рекомендации по предотвращению возможных атак. Дается подробное описание настройки прав доступа и конфигурирования сетевого экрана. Показано, как действовать при атаке или взломе системы, чтобы максимально быстро восстановить ее работоспособность и предотвратить потерю данных.
Для пользователей, администраторов и специалистов по безопасности
Linux глазами хакера - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
10.3. Основные настройки wu-ftp-сервера
Основным конфигурационным файлом wu-ftp-сервера является ftpaccess. Его содержимое можно увидеть в листинге 10.2.
# This file was generated by the KDE wu-ftpd configurator.
# (c) 2000 by Bernhard Rosenkränzer (bero@redhat.com)
class all anonymous, guest, real *
noretrieve
loginfails 5
private no
banner /welcome.msg
email root@localhost
message/welcome.msg LOGIN
message.message CWD=*
readme README* LOGIN
readme README* CWD=*
chmod no anonymous, guest
delete no anonymous
overwrite no anonymous
rename no anonymous
passwd-check rfc822 warn
log transfers anonymous,guest,real inbound
log transfers anonymous,guest,real outbound
anonymous-root /home/flenov
При настройке FTP-сервера существует множество директив, для которых администраторы сохраняют исходные значения, потому что их работа не влияет на производительность или безопасность. Хотя некоторые из них помогают предотвратить неправильное или неэффективное использование сервера (например, время ожидания timeout XXXX
способствует освобождению ресурсов), но значений по умолчанию достаточно, кроме того, изменение некоторых из них может, наоборот, сделать работу менее комфортной.
Давайте рассмотрим основные директивы этого файла. Чтобы впоследствии с ними легче было работать, я разбил все команды по категориям.
О дополнительных возможностях, которые мы не рассмотрим, вы можете получить подробную информацию из страниц руководства, выполнив команду man ftpaccess
.
10.3.1. Доступ
Такие директивы определяют основные права доступа к FTP-серверу. Давайте рассмотрим основные из них:
□ class имя type адреса
— позволяет организовать классы пользователей по их типу и адресу. В нашем конфигурационном файле указана следующая строка:
class all anonymous,guest,real *
В качестве имени класса здесь указано all
. После этого идет перечисление через запятую типов пользователей, которые будут отнесены к этому классу. В данном случае присутствуют все категории: anonymous
, guest
и real
(анонимные, гости и авторизованные пользователи). Последний параметр — это шаблон адреса, на месте которого стоит звездочка, т.е. любой адрес. Получается, что к классу all
относятся любые пользователи с произвольными адресами.
Классы — очень удобная вещь. Это как группы. Вы объединяете определенных пользователей и можете назначать им права. Например, можно создать класс пользователей, у которых IP-адрес относится к зоне вашей компании, офиса или страны. Затем только этому классу открываете полноценный доступ к FTP, а всем остальным — запрещаете или ограничиваете использование. Назначить права сразу целому классу намного удобнее, чем расписывать разрешение каждому пользователю в отдельности;
□ noretrieve тип класс файл
— запрещает чтение указанного файла. Параметр тип указывает на абсолютную (absolute) или относительную (relative) адресацию (путь) к файлу. Далее идет определение класса в формате class=имя класса
, к которому относится данный запрет. Можно явно указать описанный выше класс all
или вообще его опустить, тогда запрет будет относиться ко всем пользователям. Если в качестве файла указан конкретный путь, то доступа не будет только к этому файлу. Если в параметре указано лишь его имя (например, passwd), то будет закрыт доступ ко всем файлам с таким названием в любой директории.
Рассмотрим пример, запрещающий доступ к любым файлам с именем passwd:
noretrieve relative passwd
Попробуйте добавить эту строку в свой конфигурационный файл. Теперь подключитесь к серверу с помощью FTP-клиента. Для тестирования из X Window я в графическом режиме Linux использовал программу gftp. Подключившись к серверу, я создал файл passwd в директории /home и попытался его скачать в каталог /home/flenov. В ответ на это FTP-клиент только создал пустой файл, но скачать ничего не смог, из-за установленного запрета программа завершилась аварийно. Такое окончание — это, конечно же, особенность gftp, а другой FTP-клиент должен правильно обработать ошибку и сохранить работоспособное состояние.
Если FTP-сервер находится на одном физическом сервере с Web-сервером, то вполне логичным будет запретить чтение файла .htaccess, в котором прописываются права доступа на директории для Web-сервера. Пользователи FTP не должны иметь права даже смотреть их. Лучше прописать разрешение только конкретным клиентам, чтобы каждый из них мог работать только со своими файлами .htaccess, или предоставить другой способ редактирования прав.
Работу с системными каталогами можно вообще отменить. Например, следующая строка запретит получение любого файла из директории /etc:
noretrieve /etc
После этого нельзя будет скачать ни один файл не только из директории /etc, но и из ее поддиректорий;
□ loginfails число
— количество неудачных попыток входа на сервер, после которого в журнале будет создана соответствующая запись. В нашем примере стоит число 5. Если пользователь не смог войти на сервер 5 раз, то это уже говорит о попытке взломщиком подобрать пароль случайным образом или по словарю (атака brute force);
□ private параметр
— возможность использовать команды wu-ftp-сервера SITE GROUP
и SITE GPASS
(в других FTP-серверах этих команд может и не быть) для смены группы (значение параметра yes
). Если пользователь укажет верную группу и пароль, то он получит права группы из файла ftpgroups;
□ deny адрес файл
— запрет доступа клиентов с указанного адреса. В случае попытки подключения выводится сообщение из текстового файла, указанного в качестве последнего параметра. Адрес может указываться в виде шаблона;
□ defumask mask
— маска прав доступа, используемая при создании новых файлов. О команде umask для ОС Linux (задает текущее значение маски) мы говорили в разд. 4.1 ;
□ limit-time тип минуты
— ограничение времени сессии. Например, вы хотите, чтобы определенные пользователи не засиживались на вашем FTP-сервере. Используя эту директиву, в качестве типа можно указать звездочку (*) для всех пользователей, real
, anonymous
или guest
. Последний параметр — это количество минут сессии. По прошествии указанного времени соединение будет разорвано;
□ file-limit направление число класс
— ограничение на число передаваемых файлов. В качестве направления можно указать in
(входящие), out
(исходящие) и total
(всего). Чтобы запретить работу более чем с 10 файлами, воспользуйтесь командой file-limit total 10
;
□ byte-limit направление число класс
— ограничение на число передаваемых байт. Работа директивы схожа с file-limit
;
Интервал:
Закладка: