DNST-KEYGEN(1)
π DNST-KEYGEN(1) π
okay so real talk β this is dnst-keygen, and it lives in the dnst manual suite. it's the little key-making gremlin of the family and honestly? iconic. let's get into it π
β¨ NAME β¨
dnst-keygen β generate a new key pair for a domain name π
πΈ SYNOPSIS πΈ
dnst keygen [OPTIONS] -a <ALGORITHM> <DOMAIN NAME>
π¦ DESCRIPTION π¦
dnst keygen makes a brand new key pair for whatever domain name you hand it. that's the whole vibe. β¨
and bestie, it doesn't just make the key β it leaves you a whole little gift bag of files:
K<name>+<alg>+<tag>.keyβ the public key file, and inside it? a DNSKEY RR in zone file format πK<name>+<alg>+<tag>.privateβ the private key file, holding the private key data fields in BIND's Private-key-format πK<name>+<alg>+<tag>.dsβ the public key digest file, containing the DS RR in zone file format. heads up tho: this one only gets created for key signing keys, no ZSK crumbs here π
so what are those little placeholders, you ask? let me break it down for you, i gotchu:
<name>is the fully-qualified owner name for the key β with a trailing dot, do not forget the dot, the dot is the moment π«Ά<alg>is the algorithm number of the key, zero-padded to 3 digits<tag>is the 16-bit tag of the key, zero-padded to 5 digits
and once it's all done and dusted? it prints out K<name>+<alg>+<tag> to you. slay. that's your receipt π§Ύ
π ARGUMENTS π
<DOMAIN NAME>β the owner name of the apex of the zone that the generated key is meant to sign. basically, "whose zone is this key for, bestie?" πΊοΈ
π OPTIONS π
-a <NUMBER OR MNEMONIC>β use the given signing algorithm. this one is MANDATORY, no skipping, no "i'll do it later", it's required fr fr β οΈ
possible values are:
listβ (no number) list available algorithms πRSASHA256β number8β RSA with SHA-256ECDSAP256SHA256β number13β ECDSA P-256 with SHA-256ECDSAP384SHA384β number14β ECDSA P-384 with SHA-384ED25519β number15β ED25519ED448β number16β ED448
-kβ generate a key signing key (KSK) instead of a zone signing key (ZSK). the KSK/ZSK pipeline is real π₯-b <BITS>β the length of the key, and only for RSA keys, iykyk. defaults to2048π-r <DEVICE>β the randomness source to use for generation. defaults to/dev/urandomπ²-sβ create symlinks.keyand.privatepointing at the generated keys. shortcuts are self care π«-fβ overwrite existing symlinks (this one's for use with-s, so bring a friend) π-h,--helpβ print the help text. short summary with-h, and the long help with--helpπ
π AUTHOR π
NLnet Labs β the authors, the moment, the main characters π«‘
π COPYRIGHT π
2024β2026, NLnet Labs β all the rights, all the years, periodt π
okay that's the whole page, you ate that reading bestie π and real quick before you go β this lovely little manual is dnst version 0.2.0-alpha2, dated May 15, 2026, so likeβ¦ keep that in mind. mwah πβ¨
π¦ where this page comes from
- nixpkgs unstable: dnst 0.2.0-alpha3
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms