/mandos/trunk

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/trunk

« back to all changes in this revision

Viewing changes to mandos-clients.conf

  • Committer: Teddy Hogeborn
  • Date: 2008-07-19 18:43:24 UTC
  • Revision ID: teddy@fukt.bsnet.se-20080719184324-iwhoa5in75xa0u2u
* mandos-clients.conf ([foo]/dn, [foo]/password, [braxen_client]/dn,
                       [braxen_client]/password): Removed.
  ([foo]/fingerprint, [braxen_client]/fingerprint): New.
  ([foo]/checker): New.
  ([foo]/secfile): New.
  ([braxen_client]/secret): New.

* server.py: New "--debug" option to set debug flag.  Removed "cert",
             "key", "ca", "crl", and "cred" variables.  Added default
             value for "checker" config file setting.  Do not pass
             credentials to IPv6_TCPServer constructor.
  (debug): New global debug flag.  Used by most debugging output code.
  (Client.__init__): Keyword argument "dn" replaced by "fingerprint",
                     "password" renamed to "secret", and "passfile"
                     renamed to "secfile".  New keyword argument
                     "checker". All callers changed.
  (Client.dn): Removed.
  (Client.fingerprint): New.
  (Client.password): Renamed to "secret"; all users changed.
  (Client.passfile): Renamed to "secfile"; all users changed.
  (Client.timeout, Client.interval): Changed to be properties; now
                                     automatically updates the
                                     "_timeout_milliseconds" and
                                     "_interval_milliseconds" values.
  (Client.timeout_milliseconds): Renamed to "_timeout_milliseconds".
  (Client.interval_milliseconds): Renamed to "_interval_milliseconds".
  (Client.check_command): New.
  (Client.start_checker): Use the new "check_command" attribute.
  (peer_certificate, fingerprint): New functions.

  (tcp_handler.handle): Use ClientSession with empty credentials
                        object instead of ServerSession.  Set gnutls
                        priority string.  Do not verify peer.  Use
                        fingerprint instead of DN when searching for
                        clients.  Bug fix: Loop sending data so even large
                        secret data strings are sent.
  (IPv6_TCPServer.credentials): Removed.
  (if_nametoindex): Do not import ctypes since that is now imported
                    globally.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Default settings for all clients.  These values are the default
2
 
# values, so uncomment and change them if you want different ones.
3
 
[DEFAULT]
4
 
 
5
 
# How long until a client is disabled and not be allowed to get the
6
 
# data this server holds.
7
 
# (RFC 3339 duration syntax)
8
 
;timeout = PT5M
9
 
 
10
 
# How often to run the checker to confirm that a client is still up.
11
 
# Note: a new checker will not be started if an old one is still
12
 
# running.  The server will wait for a checker to complete until the
13
 
# above "timeout" occurs, at which time the client will be disabled,
14
 
# and any running checker killed.
15
 
# (RFC 3339 duration syntax)
16
 
;interval = PT2M
17
 
 
18
 
# Extended timeout is an added timeout that is given once after a
19
 
# password has been sent sucessfully to a client.  This allows for
20
 
# additional delays caused by file system checks and quota checks.
21
 
# (RFC 3339 duration syntax)
22
 
;extended_timeout = PT15M
23
 
 
24
 
# What command to run as "the checker".
25
 
;checker = fping -q -- %%(host)s
26
 
 
27
 
# Whether to approve a client by default after the approval delay.
28
 
;approved_by_default = True
29
 
 
30
 
# How long to wait for approval.
31
 
# (RFC 3339 duration syntax)
32
 
;approval_delay = PT0S
33
 
 
34
 
# How long one approval will last.
35
 
# (RFC 3339 duration syntax)
36
 
;approval_duration = PT1S
37
 
 
38
 
# Whether this client is enabled by default
39
 
;enabled = True
40
 
 
41
 
 
42
 
;####
43
 
;# Example client
44
 
;[foo]
45
 
;
46
 
;# TLS public key ID
47
 
;key_id = f33fcbed11ed5e03073f6a55b86ffe92af0e24c045fb6e3b40547b3dc0c030ed
48
 
;
49
 
;# OpenPGP key fingerprint
50
 
;fingerprint =  7788 2722 5BA7 DE53 9C5A  7CFA 59CF F7CD BD9A 5920
51
 
;
52
 
;# This is base64-encoded binary data.  It will be decoded and sent to
53
 
;# the client matching the above key_id (for GnuTLS 3.6.6 or later) or
54
 
;# the above fingerprint (for GnuTLS before 3.6.0).  This should, of
55
 
;# course, be OpenPGP encrypted data, decryptable only by the client.
56
 
;secret =
57
 
;        hQIOA6QdEjBs2L/HEAf/TCyrDe5Xnm9esa+Pb/vWF9CUqfn4srzVgSu234
58
 
;        REJMVv7lBSrPE2132Lmd2gqF1HeLKDJRSVxJpt6xoWOChGHg+TMyXDxK+N
59
 
;        Xl89vGvdU1XfhKkVm9MDLOgT5ECDPysDGHFPDhqHOSu3Kaw2DWMV/iH9vz
60
 
;        3Z20erVNbdcvyBnuojcoWO/6yfB5EQO0BXp7kcyy00USA3CjD5FGZdoQGI
61
 
;        Tb8A/ar0tVA5crSQmaSotm6KmNLhrFnZ5BxX+TiE+eTUTqSloWRY6VAvqW
62
 
;        QHC7OASxK5E6RXPBuFH5IohUA2Qbk5AHt99pYvsIPX88j2rWauOokoiKZo
63
 
;        t/9leJ8VxO5l3wf/U64IH8bkPIoWmWZfd/nqh4uwGNbCgKMyT+AnvH7kMJ
64
 
;        3i7DivfWl2mKLV0PyPHUNva0VQxX6yYjcOhj1R6fCr/at8/NSLe2OhLchz
65
 
;        dC+Ls9h+kvJXgF8Sisv+Wk/1RadPLFmraRlqvJwt6Ww21LpiXqXHV2mIgq
66
 
;        WnR98YgSvUi3TJHrUQiNc9YyBzuRo0AjgG2C9qiE3FM+Y28+iQ/sR3+bFs
67
 
;        zYuZKVTObqiIslwXu7imO0cvvFRgJF/6u3HNFQ4LUTGhiM3FQmC6NNlF3/
68
 
;        vJM2hwRDMcJqDd54Twx90Wh+tYz0z7QMsK4ANXWHHWHR0JchnLWmenzbtW
69
 
;        5MHdW9AYsNJZAQSOpirE4Xi31CSlWAi9KV+cUCmWF5zOFy1x23P6PjdaRm
70
 
;        4T2zw4dxS5NswXWU0sVEXxjs6PYxuIiCTL7vdpx8QjBkrPWDrAbcMyBr2O
71
 
;        QlnHIvPzEArRQLo=
72
 
;
73
 
;# Host name; used only by the checker, not used by the server itself.
74
 
;host = foo.example.org
75
 
;####
76
 
 
77
 
;####
78
 
;# Another example client, named "bar".
79
 
;[bar]
80
 
;# The key ID is not space or case sensitive
81
 
;key_id = F33FCBED11ED5E03073F6A55B86FFE92 AF0E24C045FB6E3B40547B3DC0C030ED
82
 
;
83
 
;# The fingerprint is not space or case sensitive
84
 
;fingerprint = 3e393aeaefb84c7e89e2f547b3a107558fca3a27
85
 
;
86
 
;# If "secret" is not specified, a file can be read for the data.
87
 
;secfile = /etc/keys/mandos/bar-secret.bin
88
 
;
89
 
;# An IP address for host is also fine, if the checker accepts it.
90
 
;host = 192.0.2.3
91
 
;
92
 
;# Parameters from the [DEFAULT] section can be overridden per client.
93
 
;interval = PT1M
94
 
;
95
 
;# This client requires manual approval before it receives its secret.
96
 
;approved_by_default = False
97
 
;# Require approval within 30 seconds.
98
 
;approval_delay = PT30S
99
 
;####
 
1
# Example
 
2
[foo]
 
3
fingerprint = 3e393aeaefb84c7e89e2f547b3a107558fca3a27
 
4
secfile = openpgp/secret.txt.asc
 
5
fqdn = foo.example.org
 
6
checker = echo %%(fqdn)s >&2; false
 
7
 
 
8
[braxen_client]
 
9
fingerprint =  7788 2722 5BA7 DE53 9C5A  7CFA 59CF F7CD BD9A 5920
 
10
secret =
 
11
        hQIOA6QdEjBs2L/HEAf/TCyrDe5Xnm9esa+Pb/vWF9CUqfn4srzVgSu234REJMVv
 
12
        7lBSrPE2132Lmd2gqF1HeLKDJRSVxJpt6xoWOChGHg+TMyXDxK+NXl89vGvdU1Xf
 
13
        hKkVm9MDLOgT5ECDPysDGHFPDhqHOSu3Kaw2DWMV/iH9vz3Z20erVNbdcvyBnuoj
 
14
        coWO/6yfB5EQO0BXp7kcyy00USA3CjD5FGZdoQGITb8A/ar0tVA5crSQmaSotm6K
 
15
        mNLhrFnZ5BxX+TiE+eTUTqSloWRY6VAvqWQHC7OASxK5E6RXPBuFH5IohUA2Qbk5
 
16
        AHt99pYvsIPX88j2rWauOokoiKZot/9leJ8VxO5l3wf/U64IH8bkPIoWmWZfd/nq
 
17
        h4uwGNbCgKMyT+AnvH7kMJ3i7DivfWl2mKLV0PyPHUNva0VQxX6yYjcOhj1R6fCr
 
18
        /at8/NSLe2OhLchzdC+Ls9h+kvJXgF8Sisv+Wk/1RadPLFmraRlqvJwt6Ww21Lpi
 
19
        XqXHV2mIgqWnR98YgSvUi3TJHrUQiNc9YyBzuRo0AjgG2C9qiE3FM+Y28+iQ/sR3
 
20
        +bFszYuZKVTObqiIslwXu7imO0cvvFRgJF/6u3HNFQ4LUTGhiM3FQmC6NNlF3/vJ
 
21
        M2hwRDMcJqDd54Twx90Wh+tYz0z7QMsK4ANXWHHWHR0JchnLWmenzbtW5MHdW9AY
 
22
        sNJZAQSOpirE4Xi31CSlWAi9KV+cUCmWF5zOFy1x23P6PjdaRm4T2zw4dxS5NswX
 
23
        WU0sVEXxjs6PYxuIiCTL7vdpx8QjBkrPWDrAbcMyBr2OQlnHIvPzEArRQLo=
 
24
        =iHhv
 
25
fqdn = localhost
 
26
interval = 5m