На данный момент в доменной зоне RU только регистратор доменных имен R01 поддерживает делегирование доменов с использованием технологии DNSSEC. Если Ваш домен находится на обслуживании у другого регистратора и Вы хотите его защитить, вам необходимо перенести домен в R01. По регламенту доменной зоны RU эта процедура производится бесплатно.
Если Вы делегируете домен с ns-серверами Регистратора R01 (данная услуга предоставляется бесплатно), Ваш домен будет автоматически делегирован с поддержкой DNSSEC.
Если Вы хотите использовать собственные ns-сервера для делегирования домена с DNSSEC, то необходимо проделать следующие действия. Во время процедуры делегирования домена Вам нужно сгенерировать открытый и закрытый ключи и внести открытый ключ в файл с информацией о вашем домене на первичном DNS-сервере. В момент подписи будет сгенерирована строка DS (dsset), которую Вам нужно будет перенести в специальную графу формы в личном кабинете R01. В стандартном пакете BIND версии 9 есть все программы для выполнения подобных действий.
Вторичные сервера DNS не требуют над собой никаких действий, однако Вам необходимо убедиться, что вторичный сервер также поддерживает DNSSEC. Если нет, Вам необходимо активировать поддержку DNSSEC в конфигурационном файле BIND с помощью строки "dnssec-enable yes;".
Предположим, Ваш домен — dnssec.ru.
Для начала нужно создать 2 пары ключей:
Первая пара – ZSK (Zone signing key) используется для подписи зонного файла.
> dnssec-keygen -r/dev/random -a RSASHA1 -b 1024 -n ZONE dnssec.ru Kdnssec.ru.+005+25721
Вторая пара – KSK (Key signing key) используется для подписи ключа ZSK и формирования DS-записей, которые передаются администратору родительской зоны.
dns# dnssec-keygen -r/dev/random -f KSK -a RSASHA1 -b 1024 -n ZONE dnssec.ru Kdnssec.ru.+005.32463
Программа dnssec-keygen выдаст имена файлов созданных ключей. Открытые ключи (в данном случае — содержимое файлов Kdnssec.ru.+005+25721.key и Kdnssec.ru.+005.32463.key) нужно добавить в зонный файл для домена (обычно он называется так же, как и сам домен).
Затем нужно подписать домен ключом ZSK:
> dnssec-signzone -r /dev/random -o dnssec.ru -k Kdnssec.ru.+005+32463 dnssec.ru Kdnssec.ru.+005+25721.key
, где подчеркнутое dnssec.ru – это имя зонного файла.
Внимание! Вам нужно будет подписывать зонный файл каждый раз после того, как вы измените информацию о домене.
После подписи зонного файла сформируется его подписанная версия. По умолчанию файл с подписанной зоной называется “имя_зонного_файла” + “.signed”. Теперь в /etc/named.conf найдите строчку, отвечающую за имя файла, в котором хранится информация о домене, и добавьте в нее .signed: file “dnssec.ru”; --> file “dnssec.ru.signed”; После этого перезагрузите named.
Теперь осталось интегрировать информацию о ключах в мировую систему DNSSEC. Для этого нужно из файла dsset-dnssec.ru., который создаст dnssec-signzone, взять информацию о DS-записи (в файле будет строчка наподобие «dnssec.ru. IN DS 29280 5 1 56CFF04E460B0FA4BCC31BDA08CFB4A98FF5140D») и всю запись, которая идет после DS, поместить в поле "ds-rdata:" в описании Вашего домена в пользовательском web-интерфейсе R01.
Примерно через сутки после успешного добавления "ds-rdata:" ваш домен будет защищен протоколом DNSSEC.
Чтобы проверить, защищен ли домен с использованием DNSSEC, можно воспользовавшись UNIX-утилитой командной строки whois, либо с помощью whois-сервиса на сайте R01:
> whois -h whois.r01.ru dnssec.ru domain: DNSSEC.RU type: CORPORATE nserver: ns.netassist.kiev.ua. nserver: greentheatre.gpt.ru. state: REGISTERED, DELEGATED nic-hdl: GPT-ORG-GPT org: Garant-Park-Telecom phone: +7 095 7833783 fax_no: +7 095 9308800 e-mail: support@parkline.ru reg-till: 01-03-2007 created: 01-03-2006 changed: 02-03-2006 mnt-by: GPT-MNT-GPT registrar: R01-REG-RIPN ds-rdata: 4518 5 1 9C29E65CD9C8A2E2DC86737E0E03E3A34FE299C8
Наличие строки "ds-rdata:" означает, что Ваш домен защищен протоколом DNSSEC.