Программа tcpd
Программа tcpd (TCP Wrapper) представляет собой средство фильтрации IP- пакетов, позволяющее ограничить список IP-адресов, с которых могут посту- пать запросы на сервисы, предоставляемые супердемоном inetd.
Поведение tcpd задается с помощью двух файлов:
r /etc/hosts.allow — разрешает соединения;
r /etc/hosts.deny — запрещает соединения.
Порядок работы директив в /etc/hosts.allow и /etc/hosts.deny приведен далее.
1. Если в файле /etc/hosts.allow для заданной пары "узел сети — служба" находится совпадение, то для данного узла доступ к этой службе разре- шается.
2. Если в предыдущем файле совпадение не найдено, то осуществляется просмотр файла /etc/hosts.deny. При наличии в нем совпадения для задан- ной пары "узел сети — служба" доступ к данной службе с этого узла за- прещается.
3. При отсутствии совпадений в обоих файлах доступ разрешается. Формат записей в файлах /etc/hosts.allow и /etc/hosts.deny таков:
имя демона: список доступа
В списке доступа определяются группы адресов, с которых могут поступать запросы на конкретные сервисы:
r ALL — все адреса;
r EXCEPT — исключения из списка;
r KNOWN — хосты, соответствие IP-адресов именам которых можно проверить;
r LOCAL — локальный адрес;
r PARANOID — хосты, имена которых не соответствуют их IP-адресам (для проверки используется обратное преобразование имен в DNS: из IP-адреса в имя хоста);
r UNKNOWN — хосты, имена которых не могут быть разрешены, а также сюда относятся пользователи, не зарегистрированные в целевой системе.
Пример 21.6. Конфигурация tcpd |
cat /etc/hosts.deny
ALL: mail.yahoo.com, .badspammers.org
ALL EXCEPT ftp: comp1.smallnet.ru, .rcpmk.ru telnet: ALL EXCEPT LOCAL
В примере 21.6 произведены такие настройки:
r запрещается доступ ко всем службам для запросов, исходящих с хоста
mail.yahoo.com и домена badspammers.org;
r разрешен доступ к ftp с хоста comp1.smallnet.ru и для домена rcmpk.ru;
r к telnet доступ запрещен отовсюду, кроме локального хоста.
Для проверки правильности конфигурации файлов /etc/hosts.allow и
/etc/hosts.deny используется команда tcpdchk. Кроме этого, имеется утилита tcpdmatch, которая пытается определить, каким образом tcpd будет отраба- тывать запросы к inetd. Ее удобно использовать при наличии сложных пра- вил фильтрации.
Дата добавления: 2015-06-12; просмотров: 688;