Почтовые сервисы.
Для защиты почтовых сервисов надо понимать, для чего применяется тот или иной субъект системы электронной почты.
Агент передачи почты (Mail Transfer Agent, MTA) - программа, передающая почту с одной машины на другую. Наиболее известным МТА представляется, конечно, же Sendmail. MTA - это боец невидимого фронта - очень часто пользователь даже и не подозревает о его существовании. Для чтения и отправки e-mail пользователи используют Почтовый Пользовательский Агент (Mail User Agent, MUA). Примеры MUA: Mutt, Pine, Kmail, Evolution.
Разделение функций сервера имен.
Сервер имен выполняет две роли: разрешает запросы клиентов и выступает в роли авторитетного сервера для какой-то зоны. Представим, что у нас есть средняя компания. Имеется домен www.test.net. Целесообразно разделить функции серверов имен.
Один сервер имен будет находиться во внутренней сети и разрешать запросы клиентов - это будет сервер для внутреннего употребления. Второй сервер будет авторитетным для зоны - он будет отвечать на запросы интернет-пользователей для этой зоны. Месторасположение данного сервера - нейтральная зона (DMZ).
DNSSEC: служба безопасности DNS.
Так как TSIG-ключи можно добавить в конфигурационный файл каждой машины, их употребление не очень практично. Во-первых, когда имеется много серверов имен, то при изменении ключей придется проделать много действий. А во-вторых, если крекер получит доступ к серверу имен, он получит и TSIG-ключи, что позволит ему отправлять подделанные сообщения другим серверам от имени этого сервера.
DNSSEC (DNS Security Extensions) - набор расширений протокола DNS, использующий РКС и цифровые подписи для осуществления безопасных транзакций между серверами и клиентами (или между серверами и серверами). Подробное описание DNSSEC можно найти в RFC 2535. Рассмотрим, как надо реализовать эту систему в DNS.
Технология DNSSEC - это не абсолютно новая концепция, ей уже несколько лет, и ее уже успели опробовать.
Защита DNS: продолжение.
Запуск BIND от имени непривилегированного пользователя.
Обычно BIND всегда запускался от имени root, но, учитывая все его уязвимости, это делать нежелательно, так как позволяет легко скомпрометировать систему.
Начиная с версии 8.1.2, появилась возможность запуска BIND от имени простого пользователя. Прежде BIND стартует от имени root - для того, чтобы сесть на 53 порт, а затем сбрасывает полномочия root и принимает полномочия указанного с помощью опции -n пользователя:
# named -n namedДля запуска named нужно создать новую учетную запись, а не запускать от имени nobody, от имени которого и так запущено много процессов.
Защита DNS: общие настройки.
Сервер имен BIND стал стандартом де-факто на DNS-серверы, иногда слово BIND применяется как синоним DNS. BIND применяется повсюду: и в маленькой сети с выходом в Интернет, и в немалой корпоративной закрытой сети, и в сети интернет-провайдера...
Также BIND прославился в плане уязвимостей. Подробное описание всех исправленных багов во всех версиях BIND доступно по адресу:
http://www.isc.org/sw/bind/bind-security.php