1 @node danetool Invocation
2 @section Invoking danetool
5 # -*- buffer-read-only: t -*- vi: set ro:
7 # DO NOT EDIT THIS FILE (invoke-danetool.texi)
9 # It has been AutoGen-ed November 8, 2012 at 11:40:20 PM by AutoGen 5.16
10 # From the definitions ../src/danetool-args.def
11 # and the template file agtexi-cmd.tpl
15 Tool to generate DNS resource records for the DANE protocol.
17 This section was generated by @strong{AutoGen},
18 using the @code{agtexi-cmd} template and the option descriptions for the @code{danetool} program.
19 This software is released under the GNU General Public License, version 3 or later.
22 @anchor{danetool usage}
23 @subheading danetool help/usage (-h)
26 This is the automatically generated usage text for danetool.
27 The text printed is the same whether for the @code{help} option (-h) or the @code{more-help} option (-!). @code{more-help} will print
28 the usage text by passing it through a pager program.
29 @code{more-help} is disabled on platforms without a working
30 @code{fork(2)} function. The @code{PAGER} environment variable is
31 used to select the program, defaulting to @file{more}. Both will exit
32 with a status code of 0.
36 danetool - GnuTLS DANE tool - Ver. @@VERSION@@
37 USAGE: danetool [ -<flag> [<val>] | --<name>[@{=| @}<val>] ]...
39 -d, --debug=num Enable debugging.
40 - It must be in the range:
42 -V, --verbose More verbose output
43 - may appear multiple times
44 --infile=file Input file
46 --outfile=str Output file
47 --load-pubkey=str Loads a public key file
48 --load-certificate=str Loads a certificate file
49 --hash=str Hash algorithm to use for signing.
50 --check=str Check DANE TLSA entry.
51 --local-dns Use the local DNS server for DNSSEC resolving.
52 - disabled as --no-local-dns
53 --inder Use DER format for input certificates and private keys.
54 - disabled as --no-inder
55 --inraw This is an alias for 'inder'
56 --tlsa-rr Print the DANE RR data on a certificate or public key
57 - requires these options:
59 --host=str Specify the hostname to be used in the DANE RR
60 --proto=str The protocol set for DANE data (tcp, udp etc.)
61 --port=num Specify the port number for the DANE data.
62 --ca Whether the provided certificate or public key is a Certificate
64 --x509 Use the hash of the X.509 certificate, rather than the public key.
65 --local The provided certificate or public key is a local entity.
66 -v, --version[=arg] Output version information and exit
67 -h, --help Display extended usage information and exit
68 -!, --more-help Extended usage information passed thru pager
70 Options are specified by doubled hyphens and their name or by a single
71 hyphen and the flag character.
75 Tool to generate DNS resource records for the DANE protocol.
77 please send bug reports to: bug-gnutls@@gnu.org
81 @anchor{danetool debug}
82 @subheading debug option (-d)
84 This is the ``enable debugging.'' option.
85 This option takes an argument number.
86 Specifies the debug level.
87 @anchor{danetool load-pubkey}
88 @subheading load-pubkey option
90 This is the ``loads a public key file'' option.
91 This option takes an argument string.
92 This can be either a file or a PKCS #11 URL
93 @anchor{danetool load-certificate}
94 @subheading load-certificate option
96 This is the ``loads a certificate file'' option.
97 This option takes an argument string.
98 This can be either a file or a PKCS #11 URL
99 @anchor{danetool hash}
100 @subheading hash option
102 This is the ``hash algorithm to use for signing.'' option.
103 This option takes an argument string.
104 Available hash functions are SHA1, RMD160, SHA256, SHA384, SHA512.
105 @anchor{danetool check}
106 @subheading check option
108 This is the ``check dane tlsa entry.'' option.
109 This option takes an argument string.
110 Obtains the DANE TLSA entry from the given hostname and prints information.
111 @anchor{danetool local-dns}
112 @subheading local-dns option
114 This is the ``use the local dns server for dnssec resolving.'' option.
115 This option will use the local DNS server for DNSSEC.
116 This is disabled by default due to many servers not allowing DNSSEC.
117 @anchor{danetool inder}
118 @subheading inder option
120 This is the ``use der format for input certificates and private keys.'' option.
121 The input files will be assumed to be in DER or RAW format.
122 Unlike options that in PEM input would allow multiple input data (e.g. multiple
123 certificates), when reading in DER format a single data structure is read.
124 @anchor{danetool inraw}
125 @subheading inraw option
127 This is an alias for the inder option,
128 @pxref{danetool inder, the inder option documentation}.
130 @anchor{danetool tlsa-rr}
131 @subheading tlsa-rr option
133 This is the ``print the dane rr data on a certificate or public key'' option.
136 This option has some usage constraints. It:
139 must appear in combination with the following options:
143 This command prints the DANE RR data needed to enable DANE on a DNS server.
144 @anchor{danetool host}
145 @subheading host option
147 This is the ``specify the hostname to be used in the dane rr'' option.
148 This option takes an argument string @file{Hostname}.
149 This command sets the hostname for the DANE RR.
150 @anchor{danetool proto}
151 @subheading proto option
153 This is the ``the protocol set for dane data (tcp, udp etc.)'' option.
154 This option takes an argument string @file{Protocol}.
155 This command specifies the protocol for the service set in the DANE data.
157 @subheading ca option
159 This is the ``whether the provided certificate or public key is a certificate authority.'' option.
160 Marks the DANE RR as a CA certificate if specified.
161 @anchor{danetool x509}
162 @subheading x509 option
164 This is the ``use the hash of the x.509 certificate, rather than the public key.'' option.
165 This option forces the generated record to contain the hash of the full X.509 certificate. By default only the hash of the public key is used.
166 @anchor{danetool local}
167 @subheading local option
169 This is the ``the provided certificate or public key is a local entity.'' option.
170 DANE distinguishes certificates and public keys offered via the DNSSEC to trusted and local entities. Use this flag if this is a local (and possibly unsigned) entity.
171 @anchor{danetool exit status}
172 @subheading danetool exit status
174 One of the following exit values will be returned:
176 @item 0 (EXIT_SUCCESS)
177 Successful program execution.
178 @item 1 (EXIT_FAILURE)
179 The operation failed or the command syntax was not valid.
181 @anchor{danetool See Also}
182 @subheading danetool See Also
185 @anchor{danetool Examples}
186 @subheading danetool Examples
187 @subheading DANE TLSA RR generation
189 To create a DANE TLSA resource record for a CA signed certificate use the following commands.
192 $ danetool --tlsa-rr --host www.example.com --load-certificate cert.pem
195 For a self signed certificate use:
197 $ danetool --tlsa-rr --host www.example.com --load-certificate cert.pem \
201 The latter is useful to add in your DNS entry even if your certificate is signed
202 by a CA. That way even users who do not trust your CA will be able to verify your
203 certificate using DANE.
205 In order to create a record for the signer of your certificate use:
207 $ danetool --tlsa-rr --host www.example.com --load-certificate cert.pem \
211 To read a server's DANE TLSA entry, use:
213 $ danetool --check www.example.com --proto tcp --port 443
216 To verify a server's DANE TLSA entry, use:
218 $ danetool --check www.example.com --proto tcp --port 443 --load-certificate chain.pem