Читаем Сетевые средства Linux полностью

Подобно другим конфигурационным файлам, символ # в начале строки означает, что в данной строке содержатся комментарии. Запись в файле hosts.allow или hosts.deny имеет следующий формат:

список_демонов : список_клиентов

В списке демонов указывается один или несколько серверов, к которым применяется данное правило. Если в списке указано несколько серверов, их имена разделяются запятыми или пробелами. Имена серверов должны совпадать с именами, содержащимися в файле /etc/services. Кроме имен серверов в этом поле можно также указывать ключевое слово ALL, определяющее групповую операцию. Оно означает, что правило применяется ко всем серверам, управляемым TCP Wrappers.

Внимание!

Не забывайте, что не все серверы запускаются с помощью TCP Wrappers. Поэтому групповая операция ALL может не включать все серверы, выполняющиеся в системе. Аналогично, указав сервер в списке демонов, вы не защитите его, если для управления им не применяются inetd и TCP Wrappers, либо если он не использует TCP Wrappers непосредственно.

Список клиентов определяет компьютеры, которым разрешен или запрещен доступ к серверу. Подобно списку доменов, в списке серверов может быть указан один узел либо несколько узлов. Идентификаторы узлов разделяются запятыми или пробелами. Описания узлов сети могут быть представлены в перечисленных ниже форматах.

• IP-адрес. В списке клиентов можно указать конкретный IP-адрес, например 10.102.201.23. Такое описание определяет только этот адрес.

• Диапазон IP-адресов. Задать диапазон IP-адресов можно несколькими способами. Проще всего сделать это, указав в составе адреса меньше четырех десятичных чисел; в этом случае адрес должен заканчиваться точкой. Например, значение 10.102.201. соответствует сети 10.102.201.0/24. Кроме того, можно использовать запись типа IP-адрес/маска. В файлах hosts.allow и hosts.deny также поддерживаются адреса IPv6. Они задаются в виде [n:n:n:n:n:n:n:n]/длина, где n — значения компонентов адреса, а длина — это число битов, используемых для представления диапазона.

• Имя узла. Узел можно описывать с помощью его доменного имени, например badcracker.threeroomco.com. Этим способом определяется только один узел. В этом случае при получении запроса система выполняет преобразование имен, а, следовательно, если сервер DNS работает некорректно, при идентификации компьютера могут быть допущены ошибки.

• Домен. Домен можно задавать так же, как вы задается доменное имя одного компьютера. Отличие состоит лишь в том, что в данном случае имя должно начинаться с точки. Если в файле указано имя .threeroomco.com, оно определяет все компьютеры, принадлежащие домену threeroomco.com.

• Имя группы NIS. Если последовательность символов начинается со знака @, оно интерпретируется как имя группы NIS (Network Information Services — сетевая информационная служба). Этот метод предполагает, что в сети функционирует сервер NIS.

В списке клиентов могут присутствовать ключевые слова, определяющие групповые операции. Назначение этих ключевых слов описано ниже.

• ALL. Идентифицирует все компьютеры.

• LOCAL. Определяет все локальные компьютеры на основании анализа имени узла. Если в имени отсутствует точка, соответствующий узел считается локальным.

• UNKNOWN. Данное ключевое слово задает все компьютеры, чьи доменные имена не могут быть получены средствами преобразования имен.

• KNOWN. Идентифицирует компьютеры, доменные имена и IP-адреса которых известны системе.

• PARANOID. Определяет компьютеры, имена которых не соответствуют IP-адресам.

При использовании последних трех ключевых слов надо соблюдать осторожность, поскольку, если они присутствуют в списке клиентов, компьютер обращается к серверу DNS. Неисправность сетевого оборудования может привести к ненадежной работе сервера DNS. Если сервер DNS недоступен, получить доменное имя компьютера не удастся. Пример файла /etc/hosts.allow, содержащего две строки, приведен ниже.

telnet,ftp : 192.168.34. dino.pangaea.edu

ssh : LOCAL .pangaea.edu

Перейти на страницу:

Похожие книги