25 Октябрь 2017

Домен kostikov.co подписан с использованием технологии DNSSEC

kostikov.co domain signed using DNSSEC technology

Вчера домен kostikov.co на котором размещается это блог был наконец-то подписан с использованием технологии DNSSEC. Напомню, что ранее автор уже довольно подробно останавливался на особеностях и практическом применении DNSSEC в цикле статей. Однако, в отличии от обычного здесь разбора примеров на основе реального конфигурирования домена kostikov.co в случае с DNSSEC приходилось отходить от этой традиции. Причиной этому было отсутствие возможности передачи отпечатка ключа для домена первого уровня .co регистратору домена — компании Namecheap через панель управления.

Действительно, согласно официально опубликованной статье "Nameservers and TLDs supported/unsupported by DNSSEC" в базе знаний Namecheap домен .co пока не числится в списке поддерживающих DNSSEC у данного регистратора. Однако, не далее как вчера поддержка известила, что имеется возможность ручного добавления необходимой для включения этой технологии информации в DNS-зону в ручном режиме.

Напомню, что для этого требуется передать DS-запись для ключа Key Signing Key (KSK). Для kostikov.co в настоящее время она выглядит следующим образом.

root@beta:/home/xm # cd /usr/local/etc/nsd/
root@beta:/usr/local/etc/nsd # cat zones/kostikov.co/*.ds
kostikov.co.    IN      DS      47047 13 2 33d2e710eae6c4e9ac308e174d9e817696b8b87950390ca0367ac2c0f1559368

В данном случае используется алгоритм безопасности номер 13 или подпись на эллиптических кривых с хэшированием SHA256. На сегодня представляется, что именно этот метод обеспечивает оптимальный уровень защиты при оптимальных же затратах ресурсов для обеспечения этого процесса, к примеру, весьма компактном представлении отпечатков в DNS-зоне, что уменьшает её размер.

Последовав совету техподдержки через чат на сайте была передана вышеприведённая DS-запись и после синхронизации DNS серверов теперь можно видеть, что kositkov.co имеет корректно подписанную доменную зону.

root@beta:/usr/local/etc/nsd # drill -TD kostikov.co
;; Number of trusted keys: 2
;; Domain: .
[T] . 172800 IN DNSKEY 256 3 8 ;{id = 46809 (zsk), size = 2048b}
. 172800 IN DNSKEY 257 3 8 ;{id = 19036 (ksk), size = 2048b}
. 172800 IN DNSKEY 257 3 8 ;{id = 20326 (ksk), size = 2048b}
Checking if signing key is trusted:
New key: .      172800  IN      DNSKEY  256 3 8 AwEAAcRIZfxskdElMKgjwvWQO2bQe7EGAvX6zgIaqmbsaMqmMrIpd1+bP7nyULLuL8jWnKAqcaVfal2yJD50gg5zFl5yW/F9dKNXXEFI7VEcGrPyG6/OrA9RBU8pGWm0qxpsNm5UIgTU5IX7pb/0rBj67c/R7qln8sjH1ylsr4f1Y3R6p/druiEalKasEjGKA9L2w9jzUQusWxM7fQx/T8c/3x3bsjveD1dleQ6MJaCx4bpPXYZpqXmSvGn+T2v5350cBVAFqVKhGbjxEyXAweem8cTU4L1p+DV7Ua11a1tMf0Tlu8pkpLwh7NQIggIEhJwEhPeXE3E4C6Q2/PFENcoFERc= ;{id = 46809 (zsk), size = 2048b}
        Trusted key: .  172800  IN      DNSKEY  257 3 8 AwEAAaz/tAm8yTn4Mfeh5eyI96WSVexTBAvkMgJzkKTOiW1vkIbzxeF3+/4RgWOq7HrxRixHlFlExOLAJr5emLvN7SWXgnLh4+B5xQlNVz8Og8kvArMtNROxVQuCaSnIDdD5LKyWbRd2n9WGe2R8PzgCmr3EgVLrjyBxWezF0jLHwVN8efS3rCj/EWgvIWgb9tarpVUDK/b58Da+sqqls3eNbuv7pr+eoZG+SrDK6nWeL3c6H5Apxz7LjVc1uTIdsIXxuOLYA4/ilBmSVIzuDWfdRUfhHdY6+cn8HFRm+2hM8AnXGXws9555KrUB5qihylGa8subX2Nn6UwNR1AkUTV74bU= ;{id = 20326 (ksk), size = 2048b}
        Trusted key: .  172800  IN      DNSKEY  257 3 8 AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjFFVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoXbfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaDX6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpzW5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relSQageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulqQxA+Uk1ihz0= ;{id = 19036 (ksk), size = 2048b}
        Trusted key: .  172800  IN      DNSKEY  256 3 8 AwEAAcRIZfxskdElMKgjwvWQO2bQe7EGAvX6zgIaqmbsaMqmMrIpd1+bP7nyULLuL8jWnKAqcaVfal2yJD50gg5zFl5yW/F9dKNXXEFI7VEcGrPyG6/OrA9RBU8pGWm0qxpsNm5UIgTU5IX7pb/0rBj67c/R7qln8sjH1ylsr4f1Y3R6p/druiEalKasEjGKA9L2w9jzUQusWxM7fQx/T8c/3x3bsjveD1dleQ6MJaCx4bpPXYZpqXmSvGn+T2v5350cBVAFqVKhGbjxEyXAweem8cTU4L1p+DV7Ua11a1tMf0Tlu8pkpLwh7NQIggIEhJwEhPeXE3E4C6Q2/PFENcoFERc= ;{id = 46809 (zsk), size = 2048b}
Key is now trusted!
        Trusted key: .  172800  IN      DNSKEY  257 3 8 AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjFFVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoXbfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaDX6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpzW5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relSQageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulqQxA+Uk1ihz0= ;{id = 19036 (ksk), size = 2048b}
        Trusted key: .  172800  IN      DNSKEY  257 3 8 AwEAAaz/tAm8yTn4Mfeh5eyI96WSVexTBAvkMgJzkKTOiW1vkIbzxeF3+/4RgWOq7HrxRixHlFlExOLAJr5emLvN7SWXgnLh4+B5xQlNVz8Og8kvArMtNROxVQuCaSnIDdD5LKyWbRd2n9WGe2R8PzgCmr3EgVLrjyBxWezF0jLHwVN8efS3rCj/EWgvIWgb9tarpVUDK/b58Da+sqqls3eNbuv7pr+eoZG+SrDK6nWeL3c6H5Apxz7LjVc1uTIdsIXxuOLYA4/ilBmSVIzuDWfdRUfhHdY6+cn8HFRm+2hM8AnXGXws9555KrUB5qihylGa8subX2Nn6UwNR1AkUTV74bU= ;{id = 20326 (ksk), size = 2048b}
[T] co. 86400 IN DS 10384 8 1 df157833aad57f3561f3a47f178ba46e7e7183dc
co. 86400 IN DS 10384 8 2 a76358b4c22e95c2c4a56db8adc923779e0829142d7c51b04e54769c86407d70
co. 86400 IN DS 21754 8 1 8b9b8fda21b4cf6fc3e97a31fc0d77c1cb7e70ee
co. 86400 IN DS 21754 8 2 c30634014c0752da93b0633ed4ce641b63826a5ded820027f4117ca0c32050a0
;; Domain: co.
[T] co. 518400 IN DNSKEY 257 3 8 ;{id = 21754 (ksk), size = 2048b}
co. 518400 IN DNSKEY 256 3 8 ;{id = 63993 (zsk), size = 1280b}
co. 518400 IN DNSKEY 256 3 8 ;{id = 16173 (zsk), size = 1024b}
co. 518400 IN DNSKEY 256 3 8 ;{id = 53196 (zsk), size = 1024b}
co. 518400 IN DNSKEY 256 3 8 ;{id = 23448 (zsk), size = 1024b}
co. 518400 IN DNSKEY 257 3 8 ;{id = 60481 (ksk), size = 2048b}
co. 518400 IN DNSKEY 257 3 8 ;{id = 10384 (ksk), size = 2048b}
Checking if signing key is trusted:
New key: co.    518400  IN      DNSKEY  256 3 8 AwEAAb2ppBK7kDCHSvK3eu3wzPG3RqY4GQSJjbxMA0vGyhQwa0M1exdk4rNarxcfGSRECVVovHbPKxver/VYZ/zUy9Gvx7vp1w48v6wSeFusvVMiWW8JTQEcbygmt8klKTWRoPuMg7tC5uAPQyX42imaUmRVT1HQfcx0qVIfUmF4NwJQLv3BAgR/gop9HwPef3HYVHqrd+3YdamE/BX8G8myWsc= ;{id = 63993 (zsk), size = 1280b}
        Trusted key: .  172800  IN      DNSKEY  257 3 8 AwEAAaz/tAm8yTn4Mfeh5eyI96WSVexTBAvkMgJzkKTOiW1vkIbzxeF3+/4RgWOq7HrxRixHlFlExOLAJr5emLvN7SWXgnLh4+B5xQlNVz8Og8kvArMtNROxVQuCaSnIDdD5LKyWbRd2n9WGe2R8PzgCmr3EgVLrjyBxWezF0jLHwVN8efS3rCj/EWgvIWgb9tarpVUDK/b58Da+sqqls3eNbuv7pr+eoZG+SrDK6nWeL3c6H5Apxz7LjVc1uTIdsIXxuOLYA4/ilBmSVIzuDWfdRUfhHdY6+cn8HFRm+2hM8AnXGXws9555KrUB5qihylGa8subX2Nn6UwNR1AkUTV74bU= ;{id = 20326 (ksk), size = 2048b}
        Trusted key: .  172800  IN      DNSKEY  257 3 8 AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjFFVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoXbfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaDX6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpzW5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relSQageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulqQxA+Uk1ihz0= ;{id = 19036 (ksk), size = 2048b}
        Trusted key: .  172800  IN      DNSKEY  256 3 8 AwEAAcRIZfxskdElMKgjwvWQO2bQe7EGAvX6zgIaqmbsaMqmMrIpd1+bP7nyULLuL8jWnKAqcaVfal2yJD50gg5zFl5yW/F9dKNXXEFI7VEcGrPyG6/OrA9RBU8pGWm0qxpsNm5UIgTU5IX7pb/0rBj67c/R7qln8sjH1ylsr4f1Y3R6p/druiEalKasEjGKA9L2w9jzUQusWxM7fQx/T8c/3x3bsjveD1dleQ6MJaCx4bpPXYZpqXmSvGn+T2v5350cBVAFqVKhGbjxEyXAweem8cTU4L1p+DV7Ua11a1tMf0Tlu8pkpLwh7NQIggIEhJwEhPeXE3E4C6Q2/PFENcoFERc= ;{id = 46809 (zsk), size = 2048b}
        Trusted key: .  172800  IN      DNSKEY  257 3 8 AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjFFVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoXbfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaDX6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpzW5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relSQageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulqQxA+Uk1ihz0= ;{id = 19036 (ksk), size = 2048b}
        Trusted key: .  172800  IN      DNSKEY  257 3 8 AwEAAaz/tAm8yTn4Mfeh5eyI96WSVexTBAvkMgJzkKTOiW1vkIbzxeF3+/4RgWOq7HrxRixHlFlExOLAJr5emLvN7SWXgnLh4+B5xQlNVz8Og8kvArMtNROxVQuCaSnIDdD5LKyWbRd2n9WGe2R8PzgCmr3EgVLrjyBxWezF0jLHwVN8efS3rCj/EWgvIWgb9tarpVUDK/b58Da+sqqls3eNbuv7pr+eoZG+SrDK6nWeL3c6H5Apxz7LjVc1uTIdsIXxuOLYA4/ilBmSVIzuDWfdRUfhHdY6+cn8HFRm+2hM8AnXGXws9555KrUB5qihylGa8subX2Nn6UwNR1AkUTV74bU= ;{id = 20326 (ksk), size = 2048b}
        Trusted key: co.        518400  IN      DNSKEY  257 3 8 AwEAAcTY6GFgXzSS+j2J/tnqN/yakucs/mMmwlU8LqzgVMJ9WyUYV/saxNAPI4Svg05b0HWbvsUvootyR50JJRG9dm38JM1poOyYEVQFRRYSHaPhF9wcBtkAzwUszbE8OybyOKPzvSJNk3dKgwd+skf6ZrvaD8NExY2TKuN8utvZWOR2AIUBz6risJhrWKYEP5ypJ5HZtW365jtJzkUvUyC7P8BDFIUOTiZqSlSgFW5KsNTwwry0NDpzx4CHpi1vsJDt8kqs3cxJZBNJt7T9IE30ynqbUOlk6zeJ8EJy4IdfQNpGIOU/TOSadzM3016nNhwj9Iu6ezoVaBCbLKZIbb0fGPE= ;{id = 21754 (ksk), size = 2048b}
        Trusted key: co.        518400  IN      DNSKEY  256 3 8 AwEAAb2ppBK7kDCHSvK3eu3wzPG3RqY4GQSJjbxMA0vGyhQwa0M1exdk4rNarxcfGSRECVVovHbPKxver/VYZ/zUy9Gvx7vp1w48v6wSeFusvVMiWW8JTQEcbygmt8klKTWRoPuMg7tC5uAPQyX42imaUmRVT1HQfcx0qVIfUmF4NwJQLv3BAgR/gop9HwPef3HYVHqrd+3YdamE/BX8G8myWsc= ;{id = 63993 (zsk), size = 1280b}
Key is now trusted!
        Trusted key: co.        518400  IN      DNSKEY  256 3 8 AwEAAcput6YheAeKJwv4ieehcwax8i6+QV8W+b9FBi8wC+gI323kuCZdSOlcn0NUFpQZDC0EvwsfYaRFuNNtE9YOTYssXcRczntaowBwZVXUX5f1LftQasMTzlszAiJb35/GIVIcXi6zBX3Ouxd4dJRM2qvC//WTvLOoG+t+NoqjH6Lr ;{id = 16173 (zsk), size = 1024b}
        Trusted key: co.        518400  IN      DNSKEY  256 3 8 AwEAAdAF26uBD76lTZG6mYT0UMomtaN1MGL94J+gRIQdOFut6BPHnGHdMwGBbKiH06IzvfQ8mKqyQ2EERYXYybTjSVRS2MNAD8NaTI9fZk9CFOb2q3d4Jr9yhDENN++wzVCYGtHybb3EAYsgHam2cCuj3jjMOt3BJ9CkPt55DEVroNWz ;{id = 53196 (zsk), size = 1024b}
        Trusted key: co.        518400  IN      DNSKEY  256 3 8 AwEAAbvonoF23WgATCSwpqYs+k5/13ISFGFl75nT1ynZbXy6QPL60zfnqd3YR9BQEGBowwcoQpT51oWknhA6vtdaB9+fOUsk5yLeiXzUt1UraXsvModHTpqYfR1vHYJneKT13mlp9jwnDoW1a8/r7uUBNkZy4mUMQnNJa4rBIuUlaldn ;{id = 23448 (zsk), size = 1024b}
        Trusted key: co.        518400  IN      DNSKEY  257 3 8 AwEAAcsMITeDncGohbAtFX9Y8YrcjnPR/El2kdJ3qejlusjpFnuw+3uFye++r4lP2A17hwcGWHWVW8WJNEa26ct6s/l9c/VjsPmQCzzlnH3DxDpYtMIMWU0d9rhRvQRdh+Im07Px+23NxUIL3Vbo7OIJb4dfBY9218TI4E/wD+Lgc+MxBabHmtdDIV6Za9oHy32zcx5kDdyFDq4psm+v7N3ViI+HKELQqNiktXhvOfe5Gw6FjzWUIcAZRz9wmLmIdYCvQ4Bbc5HwUFMuB5rDeFNckqWfYWP2X7QrpC3Khj3ZpbM7emD/feRr1v9E2MhyFO4Ty37Kk1Rpq9Ys5BODhQtb4YM= ;{id = 60481 (ksk), size = 2048b}
        Trusted key: co.        518400  IN      DNSKEY  257 3 8 AwEAAbRMbIuINuButWsoFlw9DNU0TAsPVE50npMdT5hLjt26fGexhKI45U3Nk0fWxeaPq426PmUSbUe9AM7EYkspANizgtj8Sy39HIbcrLH1GVo4vxxoIGdtSsnSkKqZLNT8zg2fySkNCBI1923Y/D/dMYvVXxuzK8MCKR4O8QYDEZxLBraFx/1VdLBZPdetWFf94Ue2JuHHX1t83HN+MYAPgdbyFk5kftD33G/ROhOpBLLf37b7HJV0I3iofb9/q+aTthyNhuG5eF8FvPr6/PiBHqvMm1iy8Fmn+b135k1wbRrrygZwEkvHwyMDMCLXkRiah8l2YEVTt89i4+v4ur8WoQU= ;{id = 10384 (ksk), size = 2048b}
[T] kostikov.co. 7200 IN DS 47047 13 2 33d2e710eae6c4e9ac308e174d9e817696b8b87950390ca0367ac2c0f1559368
;; Domain: kostikov.co.
[T] kostikov.co. 86400 IN DNSKEY 256 3 13 ;{id = 10229 (zsk), size = 256b}
kostikov.co. 86400 IN DNSKEY 256 3 13 ;{id = 48381 (zsk), size = 256b}
kostikov.co. 86400 IN DNSKEY 257 3 13 ;{id = 47047 (ksk), size = 256b}
kostikov.co. 86400 IN DNSKEY 256 3 13 ;{id = 25998 (zsk), size = 256b}
[T] kostikov.co.        86400   IN      A       78.40.219.163
;;[S] self sig OK; [B] bogus; [T] trusted

Индикатор [T] напротив каждой из опрошенных зон свидетельствует о корректном функционировании DNSSEC.

Ту же картину можно наблюдать и в форме графа через удобный сервис DNSViz.

kostikov.co signed DNS zone

Полагаю, что метод ручного добавления отпечатка KSK через службу поддержки Namecheap вполне возможен и для большинства других доменов первого уровня, конечно же, при условии поддержки ими технологии DNSSEC.

Хотелось бы также отметить высокий уровень технической поддержки Namecheap, которая с пониманием и профессионализмом относится к потребностям своих клиентов.

Подробнее о начальной настройке для включения поддержки DNSSEC читайте в статье "Внедрение DNSSEC для вашего домена".


DNS  editorial  DNSSEC