Обновление DNS с использованием подстановочного знака - ошибка TSIG с ошибкой проверки сервера / GSS
Я работаю с Microsoft DNS-сервером в корпоративной среде. У меня нет прямого доступа к нему, но я могу добавлять записи удаленно.
Например - используя nsupdate
- Я могу добавить новую запись типа A / CNAME, как в этом вопросе из Unix и Linux, как обновить записи, используя nsupdate?
cat <<EOF > dns-update
server bar.example
zone foo.bar.example
update add hostname.foo.bar.example 86400 A 192.0.2.1
send
EOF
nsupdate -g dns-update
Выше работает и заканчивается status: NOERROR
,
Теперь я хочу создать вложенную запись, доступную через подстановочный знак. *
и имя / CNAME.
В приведенном выше примере, если я заменю hostname.foo.bar.example
в *.hostname.foo.bar.example
nsupdate потерпит неудачу с status: REFUSED
, То же самое произойдет, если я уйду от звездочки, как в \*
,
$ nsupdate -g scripts/dns-update
; TSIG error with server: tsig verify failure
update failed: REFUSED
и с дополнительной отладочной информацией
$ nsupdate -g -D -L 3 scripts/dns-update
...
;; TSIG PSEUDOSECTION:
588089969.sig-bar.example. 0 ANY TSIG gss-tsig. 1556099609 300 28 BAQE//////8AAAAAKy03Mk/Ul7AQ***== 51403 NOERROR 0
24-Apr-2019 11:53:29.924 dns_request_destroy: request 0x7fb2c6eef180
24-Apr-2019 11:53:29.924 req_destroy: request 0x7fb2c6eef180
24-Apr-2019 11:53:29.924 requestmgr_detach: 0x7fb2c6ee7010: eref 1 iref 1
Out of recvgss
24-Apr-2019 11:53:29.961 req_connected: request 0x7fb2c6eef010
24-Apr-2019 11:53:29.961 req_send: request 0x7fb2c6eef010
24-Apr-2019 11:53:29.961 req_senddone: request 0x7fb2c6eef010
24-Apr-2019 11:53:29.999 req_response: request 0x7fb2c6eef010: success
24-Apr-2019 11:53:29.999 req_cancel: request 0x7fb2c6eef010
24-Apr-2019 11:53:29.999 req_sendevent: request 0x7fb2c6eef010
update_completed()
24-Apr-2019 11:53:29.999 dns_request_getresponse: request 0x7fb2c6eef010
24-Apr-2019 11:53:29.999 GSS verify error: GSSAPI error: Major = A token had an invalid Message Integrity Check (MIC), Minor = Packet was replayed in wrong direction.
24-Apr-2019 11:53:29.999 tsig key '588089969.sig-bar.example' (<null>): signature failed to verify(1)
; TSIG error with server: tsig verify failure
show_message()
...
Интересно - когда я использую Windows DNS Manager, чтобы сделать то же самое, он работает без проблем. Смотрите скриншот - диспетчер DNS
К сожалению, это решение с графическим интерфейсом, которое я 1) не могу автоматизировать, 2) использую большую часть инфраструктуры в Linux. Из-за этого я пытаюсь добиться того же с nsupdate
,
1 ответ
В качестве обходного пути я попытался установить PowerShell (PSVersion 6.2.0) в Linux (CentOS 7) и использовать Add-DnsServerResourceRecordCName
командлет (позволяющий настроить подстановочную запись DNS).
К несчастью, Add-DnsServerResourceRecordCName
Команда недоступна в этой версии. Этот обходной путь не работает.