Михаил Флёнов - Linux глазами хакера
- Название:Linux глазами хакера
- Автор:
- Жанр:
- Издательство:БХВ-Петербург
- Год:2005
- Город:Санкт-Петербург
- ISBN:5-94157-635-8
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Михаил Флёнов - Linux глазами хакера краткое содержание
Рассмотрены вопросы настройки ОС Linux на максимальную производительность и безопасность. Описаны потенциальные уязвимости и рекомендации по предотвращению возможных атак. Дается подробное описание настройки прав доступа и конфигурирования сетевого экрана. Показано, как действовать при атаке или взломе системы, чтобы максимально быстро восстановить ее работоспособность и предотвратить потерю данных.
Для пользователей, администраторов и специалистов по безопасности
Linux глазами хакера - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
□
redirector_access список
— перечень запросов, проходящих через redirector. По умолчанию установлены все запросы;
□
cache_mgr_email
— E-mail-адрес, на который будет послано письмо в случае возникновения проблем с работой proxy;
□
append domain домен
— домен по умолчанию. Например, чаще всего пользователи работают с адресами домена com. Вполне логичным будет указать в директиве именно его ( append_domain .com
). Если пользователь потом введет адрес redhat, то squid сам добавит имя домена, и вы попадете на сайт redhat.com;
□
smtp_port n
— номер порта, на котором нужно ожидать SMTP-запросы для отправки сообщений. Конечно же, SMTP — это такой протокол, который не требует кэширования, и работа через прокси-сервер не сэкономит трафик, но возможность может оказаться полезной, если нельзя устанавливать шлюз, а разрешен только proxy;
□
offline_mode параметр
— режим работы. Если параметр равен on
, то squid будет взаимодействовать только с кэшем, и обращений к Интернету не будет. Если запрашиваемой страницы в кэше нет, то пользователь увидит ошибку. Чтобы squid мог адресоваться к Интернету, необходимо установить параметр off
(установлено по умолчанию).
9.4. Права доступа к squid
Это самая больная тема для любого администратора. Да, и в squid тоже есть права доступа, и они также описываются в конфигурационном файле /etc/squid/squid.conf. Но мы рассматриваем права отдельно, потому что основной упор делаем на безопасность. Именно поэтому этой теме отведен отдельный раздел.
9.4.1. Список контроля доступа
Первое, с чем нам предстоит познакомиться, — это ACL (Access Control List, список контроля доступа), который предоставляет большие возможности для дальнейшей настройки прав доступа к сайтам. С помощью списка имен вы как бы группируете действия или пользователей. Используйте для этого следующую команду:
acl имя тип параметр
У данной директивы три параметра:
□
имя
— задается любым, и лучше всего, если оно будет описывать выполняемые действия;
□
параметр
— это шаблон или строка, смысл которой зависит от типа записи (второй аргумент);
□
тип
— можно указывать следующие значения: src
, dst
, srcdomain
, dstdomain
, url_pattern
, urlpath_pattern
, time
, port
, proto
, proxy_auth
, method
, browser
, user
. Рассмотрим основные типы, которые вам пригодятся при формировании последнего параметра (шаблона):
•
src
— задаются IP-адреса пользователей;
•
dst
— указываются адреса серверов;
•
port
— определяется номер порта;
•
proto
— описывается список протоколов (через пробел);
•
method
— указывается используемый метод, например POST
, GET
и т.д.;
•
proxy_auth
— определяется список имен пользователей, значения разделяются пробелами. В качестве имени можно использовать REQUIRED
, чтобы принимались любые авторизованные записи ( acl password proxy_auth REQUIRED
);
•
url_regex
— устанавливается URL или регулярное выражение для URL;
•
time
— задается время в формате дни h1:m1-h2:m2
. С помощью такой записи можно ограничить доступ только определенными днями недели и обусловленным временем. В качестве дней недели можно указывать: S
— Sunday, M
— Monday, T
— Tuesday, W
— Wednesday, H
— Thursday, F
— Friday, A
— Saturday.
В файле конфигурации уже описано несколько правил, которые готовы к использованию и в большинстве случаев не требуют вмешательства. Их вы можете увидеть в листинге 9.1.
Листинг 9.1. Список acl-правил, описанных по умолчанию в конфигурационном файле /etc/squid/squid.conf
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
Это список прав доступа, необходимых для минимальной работы прокси-сервера.
Рассмотрим первую строку. Здесь задается
acl
с именем all
. Так как используется тип шаблона src
, то этому списку принадлежат юзеры, у которых IP-адрес соответствует 0.0.0.0/0.0.0.0, т.е. все пользователи.
Следующая строка создает ACL-запись с именем
manager
. Она определяет доступ к протоколу, потому что тип записи proto
, а последний параметр задает протокол — cache_object. И так далее.
Давайте попробуем задать свою ACL-запись. Допустим, что в вашей сети есть 10 компьютеров с адресами от 192.168.8.1 до 192.168.8.10 (маска подсети 255.255.255.0), которым разрешен доступ к Интернету. Всем остальным нужно запретить.
Уже при создании списка вы должны отталкиваться от идеи, что изначально доступ запрещен всем, и позволять только тем, кому это действительно нужно. Итак, строка для всех у нас уже есть, и ее имя
all
. Для списка из 10 компьютеров создадим запись с именем AllowUsers
, и ее описание будет следующим:
acl AllowUsers src 192.168.8.1-192.168.8.10/255.255.255.0
Эта запись относится к типу
src
, значит, сюда включаются все компьютеры с адресами, указанными в качестве последнего параметра.
9.4.2. Определение прав
После описания списков можно указать права доступа для каждого из них с помощью следующих команд:
□
http_access разрешение имя
— определяет права доступа по протоколу HTTP. В качестве параметра разрешение
можно указывать allow
(доступ разрешен) или deny
(доступ запрещен). Последний аргумент — это имя ACL-записи. В следующем примере запрещается доступ по протоколу HTTP всем пользователям, кроме указанных в ACL-записи AllowUsers
:
http_access deny all
http_access allow AllowUsers
Указав права доступа для списка AllowUsers, мы одной строкой даем разрешение для всех компьютеров, входящих в данный ACL. Таким образом, нет необходимости прописывать права каждому компьютеру в отдельности. Это значительно облегчает жизнь администраторов в больших сетях.
В предыдущем примере ( см. разд. 9.4.1 ) мы разрешили доступ к Интернету с IP-адресов только из диапазона 192.168.8.1–192.168.8.10, и если к прокси-серверу обратится компьютер с другим адресом, то в доступе будет отказано;
□
icp_access разрешение имя
— описывает разрешение доступа к прокси-серверу по протоколу ICP. По умолчанию доступ запрещен для всех:
icp_access deny all
Интервал:
Закладка: