hosts.allow. Защищаем сервисы с libwrap во FreeBSD

В FreeBSD многие программы собираются с поддержкой libwrap. Эта библиотека отвечает за контроль соендинений на уровне ip адреса. Файл настроек в который вносятся адреса, имена сервисов – /etc/hosts.allow.

Тот файл, что находится в системе по умолчанию, первой незакомментированной строчкой содержит:

ALL : ALL : allow

Эта строка, говорит всем сервисам, поддерживающим libwrap, что принимать соединения можно от любого адреса.

Последние же строки в стандартном файле имеет такой вид:

ALL : ALL

: severity auth.info

: twist /bin/echo "You are not welcome to use %d from %h."

Эта строки запрещают обращение ко всем сервисам. Но в случае наличия первой строки, до последних дело не доходит.

Итак, если мы решили регулировать доступ с помощью libwrap, то первую строчку нужно удалять или комментировать.

А далее, описывать каждый сервис, к которому мы хотим ограничить доступ. Как описывается сервис рассмотрим на примере sshd. Разрешим доступ по ssh для адреса 89.252.34.107 и сети 192.168.0.0/24, от всех остальных адресов запретим:

sshd : 89.252.34.107 : allow

sshd : 192.168.0.0/255.255.255.0 : allow

sshd : ALL : deny

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

Следует обратить внимание на то, что в адресе сети задается именно маска, а второй нюанс имя сервиса – это имя исполняемого файла.

http://www.hilik.org.ua/hosts-allow-защищаем-сервисы-с-libwrap/

Обновлено: 12.03.2015