Hesito em fazer essa pergunta porque suspeito que estou sendo estúpido, mas...
No servidor Ubuntu 22.04 executando o bind 9.18.18, quando executo ddns-confgen -k host.example.com
, ele gera algumas instruções referentes às chaves e configurações necessárias para a configuração do servidor nomeado. Também inclui o seguinte:
# After the keyfile has been placed, the following command will
# execute nsupdate using this key:
nsupdate -k <keyfile>
A página de manual afirma:
O nome da chave pode ser especificado usando o parâmetro -k e o padrão é ddns-key. A chave gerada é acompanhada por texto de configuração e instruções que podem ser usadas com nsupdate e nomeadas ao configurar DNS dinâmico
Onde está a "chave gerada" a que ela se refere (não há nada na página de manual sobre um caminho ou qualquer opção para isso)? Ele não aparece no diretório em que executei o comando, mas preciso dessa chave para fornecer ao nsupdate
comando ao atualizar a zona.
(A maior parte desta resposta foi dada originalmente por um usuário que a excluiu.)
Ao contrário de comandos de criação de chave como
ssh-keygen
,ddns-confgen
não cria nem assume que um arquivo de saída será criado. Em vez disso, ele mostra uma chave no console junto com algumas outras instruções.No entanto, as instruções não são claras sobre qual formato o arquivo de chave deve assumir para o
nsupdate -k
comando. Na verdade, são as quatro linhas fornecidas quando você executaddns-confgen
aq
opção.Portanto, executar
ddns-confgen -qk host.example.com > keyfile.key
forneceria o arquivo que você precisa fornecernsupdate -k
(sem usar copiar/colar). Esteja ciente, entretanto, que cada vez que você executarddns-confgen
a chave mudará, então você precisa ter certeza de que está fornecendo ao servidor a mesma chave quensupdate
usará.Lembre-se também que as instruções de uso
nsupdate -k <keyfile>
podem não funcionar da maneira que você deseja. Você precisa ler a documentação paransupdate
fornecer várias outras opções para atualizar a zona.