INTEGRITY Документация

Миграция существующей зоны с включённым DNSSEC

Следуйте этому руководству, чтобы перенести существующую DNS-зону в Cloudflare без отключения DNSSEC.

Это сложная процедура, которая предполагает знакомство с Основные понятия DNS, Операции API, а также базовые шаги настройки. Сведения, не раскрытые подробно в этом руководстве, можно найти по ссылкам, приведённым на каждом шаге.

Требование

Провайдер, от которого вы переносите зону, должен позволять добавлять DNSKEY-записи на apex зоны и использовать эти записи в ответах на DNS-запросы.

1. Настройте Cloudflare

  1. Добавьте свою зону в Cloudflare.

    Чтобы добавить зону с помощью API, см. конечная точка Create Zone.

  2. Просмотрите записи, найденные при автоматическом сканировании или импортируйте файл зоны.

    Чтобы импортировать файл зоны с помощью API, см. эндпоинт Import DNS Records.

  3. На Настройки DNS странице выберите Включить DNSSEC. Либо используйте следующее Запрос API.

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
Edit DNSSEC Status
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dnssec" \
	--request PATCH \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"status": "active"
	}'
  1. На Настройки DNS странице включите Multi-signer DNSSEC. Либо используйте следующее Запрос API.

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
Edit DNSSEC Status
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dnssec" \
	--request PATCH \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"dnssec_multi_signer": true
	}'

2. Выполните перекрёстный импорт ZSK

  1. Добавьте ZSK вашего предыдущего провайдера в Cloudflare, создав запись DNSKEY в своей зоне.

Сделать это можно в панели управления или через конечная точка Create DNS Record, как в следующем примере.

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
Create DNS Record
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records" \
	--request POST \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"type": "DNSKEY",
		"name": "<ZONE_NAME>",
		"data": {
				"flags": 256,
				"protocol": 3,
				"algorithm": 13,
				"public_key": "<PUBLIC_KEY>"
		},
		"ttl": 3600
	}'
  1. Получите ZSK Cloudflare через API или запросом к одному из назначенных серверов имён Cloudflare.

Пример API:

curl https://api.cloudflare.com/client/v4/zones/{zone_id}/dnssec/zsk \
--header "X-Auth-Email: <EMAIL>" \
--header "X-Auth-Key: <API_KEY>"

Пример запроса из командной строки:

dig <ZONE_NAME> dnskey @<CLOUDFLARE_NAMESERVER> +noall +answer | grep 256
  1. Добавьте ZSK Cloudflare, полученный на последнем шаге, у своего предыдущего провайдера.

3. Настройте регистратора

  1. Добавьте запись DS Cloudflare у своего регистратора. Вашу запись DS Cloudflare можно найти на Настройки DNS странице в разделе Запись DS.
  2. Добавьте серверы имён, назначенные Cloudflare, у своего регистратора. Ваши серверы имён Cloudflare можно найти на DNS-записи страница

На этом этапе ваша зона находится в статусе настройка multi-signer DNSSEC.

4. Удалите предыдущего провайдера

  1. Удалите запись DS предыдущего провайдера у своего регистратора.
  2. Удалите серверы имён предыдущего провайдера у своего регистратора.
  3. Подождав как минимум в полтора раза дольше TTL DS-записи вашего предыдущего провайдера вы можете удалить запись DNSKEY (содержащую ZSK вашего предыдущего провайдера), которую вы добавили в свою зону Cloudflare на шаг 2.