File: nts-commands.adoc

package info (click to toggle)
ntpsec 1.2.0%2Bdfsg1-4
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 10,044 kB
  • sloc: ansic: 60,737; python: 31,610; sh: 1,494; yacc: 1,291; makefile: 176; javascript: 138
file content (102 lines) | stat: -rw-r--r-- 3,872 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
// NTS commands - included twice

The following command controls NTS authentication. It overrides
normal TLS protocol negotiation, which is not usually necessary.

[[nts]]
+nts+ [enable|disable] [+mintls+ _version_] [+maxtls+ _version_] [+tlsciphersuites+ _name_]

The options are as follows:

+cert+ _file_::
  Present the certificate in _file_ as our certificate.

+key+ _file_::
  Read the private key to our certificate from _file_.

+ca+ _location_::
  Use the file, or directory, specified by _location_ to
  validate NTS-KE server certificates instead of the system
  default root certificates.  If a directory is specified, it
  must have files named with their hash, as created by
  +openssl rehash+.

+cookie+ _location_::
  Use the file (or directory) specified by _location_ to
  store the keys used to make and decode cookies.  The default
  is _/var/lib/ntpsec/nts-keys_.

+enable+::
  Enable NTS-KE server.
  When enabled, +cert+ and +key+ are required.

+disable+::
  Disable NTS-KE server.

+mintls+ _string_::
  Set the lowest allowable TLS version to negotiate. Will be useful in
  the wake of a TLS compromise.  Reasonable values are
  _TLS1.3_ if your system supports it.  TLS 1.3 was first supported in
  OpenSSL version 1.1.1.

+maxtls+ _string_::
  Set the highest allowable TLS version to negotiate. By setting
  +mintls+ and +maxtls+ equal, you can force the TLS version for
  testing. Format is as for +mintls+.

// https://crypto.stackexchange.com/questions/8964/sending-tls-messages-with-out-encryption-using-openssl-code

+tlsciphersuites+ _string_::
   An OpenSSL ciphersuite list to configure the allowed ciphersuites for
   TLS 1.3.  A single NULL cipher disables encryption and use of certificates.

+aead+ _string_::
   Specify the crypto algorithm to be used on the wire.  The choices
   come from RFC 5297.  The only options supported are AES_SIV_CMAC_256,
   AES_SIV_CMAC_384, and AES_SIV_CMAC_512.  This slot is dual use.
   It is the server default if the remote client doesn't request a
   valid choice and it is also the preference passed to the
   remote client if the server command doesn't specify a preference.
   The default is AES_SIV_CMAC_256.

The following options of the +server+ command configure NTS (as a client).

+nts+::
  Use Network Time Security (NTS) for authentication.  Normally,
  this is all you have to do to activate the client side of NTS.
  +
  The hostname following the +server+ command is used as the address
  of the NTS key exchange server (NTS-KE) rather than the address
  of a NTP server.  The NTS-KE exchange defaults to using the same
  IP address for the NTP server.
  +
  Note that the +server+ hostname must match the name on the NTS-KE
  server's certificate.

+noval+::
  Do not validate the server certificate.

+ca+ _location_::
  Use the file, or directory, specified by _location_ to validate the
  NTS-KE server certificate, overriding the site default.  Do not use
  any other CA.  If a directory is specified, it must have files named
  with their hash, as created by +openssl rehash+.

+aead+ _string_::
  Specify the preferred crypto algorithm to be used on the wire.
  The only options supported are AES_SIV_CMAC_256, AES_SIV_CMAC_384, and
  AES_SIV_CMAC_512.  The server may ignore the request.  See the +aead+
  option above.
  +
  The same +aead+ algorithms are also used to encrypt cookies.
  The default is AES_SIV_CMAC_256.  There is no config file option to
  change it, but you can change it by editing the saved cookie key
  file, probably _/var/lib/ntpsec/nts-keys_.  Adjust the _L:_ slot to be
  48 or 64 and adjust the _I:_ slots to have the right number of bytes.
  Then restart the server.  (All old cookies held by clients will be
  rejected so their next 8 NTP requests will be ignored.  They should
  recover by retrying NTS-KE to get fresh cookies.)



// end