/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 debian/mandos.templates

  • Committer: Teddy Hogeborn
  • Date: 2019-03-30 07:03:04 UTC
  • Revision ID: teddy@recompile.se-20190330070304-dqgch62lsaaygg46
mandos-ctl: Refactor D-Bus operations

* mandos-ctl (dbus): Rename imported module to "dbus_python".
  (main): Only create a bus object and do everything via that object.
  (get_mandos_dbus_object): Remove and move code into dbus or
                            dbus_python_adapter namespaces.
  (if_dbus_exception_log_with_exception_and_exit): - '' -
  (SilenceLogger): - '' -
  (dbus): New; move everything dbus-specific into this module-like
          namespace.
  (dbus_python_adapter): New; move everything specific to the
                         dbus-python D-Bus module into this
                         module-like namespace.
  (command.Base.run): Take only a bus argument; use only that.  Pass
                      "client" argument as a D-Bus object path string,
                      not a dbus-python proxy object.  All derivatives
                      adjusted.
  (command.IsEnabled.is_enabled): Remove.
  (command.Approve, command.Deny, command.Remove,
  command.PropertySetter): Do no logging of D-Bus commands, and use
  only bus, not client, to do D-Bus calls.
  (command.DumpJSON.dbus_boolean_to_bool): Remove; move filtering to
                                           dbus_python_adapter.
  (command.Enable, command.Disable, command.StopChecker,
  command.ApproveByDefault): Use normal Python booleans instead of
  dbus-python's special Boolean types.
  (Unique): New; move here out from inside TestPropertySetterCmd.
  (Test_get_mandos_dbus_object): Remove.
  (Test_get_managed_objects): - '' -
  (Test_dbus_exceptions): New.
  (Test_dbus_MandosBus): - '' -
  (Test_dbus_python_adapter_SystemBus): - '' -
  (Test_dbus_python_adapter_CachingBus): - '' -
  (Test_commands_from_options): Don't create mock client proxy
  objects, define dict of client properties and use a mock dbus to
  verify that the correct D-Bus calls are made.  Also remove any types
  specific to dbus-python.
  (TestEnableCmd, TestDisableCmd, TestStartCheckerCmd,
  TestStopCheckerCmd, TestApproveByDefaultCmd, TestDenyByDefaultCmd):
  Use normal Python booleans instead of dbus-python's special Boolean
  types.
  (TestPropertySetterValueCmd.runTest): Remove; unnecessary.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
Template: mandos/key_id
2
2
Type: note
3
 
_Description: New client option "key_id" is REQUIRED on server
4
 
 A new "key_id" client option is REQUIRED in the clients.conf file,
5
 
 otherwise the client most likely will not reboot unattended.  This option:
6
 
 .
7
 
  key_id = <HEXSTRING>
8
 
 .
9
 
 must be added in the file /etc/mandos/clients.conf, right before the
10
 
 "fingerprint" option, for each Mandos client.  You must edit that file and
11
 
 add this option for all clients.  To see the correct key ID for each
12
 
 client, run this command (on each client):
13
 
 .
14
 
  mandos-keygen -F/dev/null|grep ^key_id
15
 
 .
16
 
 Note: the clients must all also be using GnuTLS 3.6.6 or later; the server
17
 
 cannot serve passwords for both old and new clients!
18
 
 .
19
 
 Rationale: With GnuTLS 3.6.6, Mandos has been forced to stop using OpenPGP
20
 
 keys as TLS session keys.  A new TLS key pair will be generated on each
21
 
 client and will be used as identification, but the key ID of the public
22
 
 key needs to be added to this server, since this will now be used to
23
 
 identify the client to the server.
 
3
Description: New client option "key_id" is REQUIRED on server
 
4
 A new "key_id" client option is REQUIRED in the clients.conf file, otherwise the client most likely will not reboot unattended.  This option:
 
5
 .
 
6
 key_id = <HEXSTRING>
 
7
 .
 
8
 must be added in the file /etc/mandos/clients.conf, right before the "fingerprint" option, for each Mandos client.  You must edit that file and add this option for all clients.  To see the correct key ID for each client, run this command (on each client):
 
9
 .
 
10
 mandos-keygen -F/dev/null|grep ^key_id
 
11
 .
 
12
 Note: the client must all also be using GnuTLS 3.6.6 or later; the server cannot serve passwords for both old and new clients!
 
13
 .
 
14
 Rationale: With GnuTLS 3.6.6, Mandos has been forced to stop using OpenPGP keys as TLS session keys.  A new TLS key pair will be generated on each client and will be used as identification, but the key ID of the public key needs to be added to this server, since this will now be used to identify the client to the server.
24
15
 
25
16
Template: mandos/removed_bad_key_ids
26
17
Type: note
27
 
_Description: Bad key IDs have been removed from clients.conf
28
 
 Bad key IDs, which were created by a bug in Mandos client 1.8.0, have been
29
 
 removed from /etc/mandos/clients.conf
 
18
Description: Bad key IDs have been removed from clients.conf
 
19
 Bad key IDs, which were reported by a bug in Mandos client 1.8.0, have been removed from /etc/mandos/clients.conf