/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.xml

  • Committer: Teddy Hogeborn
  • Date: 2009-09-16 23:28:39 UTC
  • Revision ID: teddy@fukt.bsnet.se-20090916232839-3o7i8qmcdcz5j1ya
* init.d-mandos (Required-Start, Required-Stop): Bug fix: Added
                 "$syslog", thanks to Petter Reinholdtsen
                 <pere@hungry.com> (Debian bug #546928).

* initramfs-tools-script: Removed erroneous comment.

* plugins.d/askpass-fifo.c: Removed TEMP_FAILURE_RETRY since it is
                            not needed.

* plugins.d/mandos-client.c (main): Bug fix: Initialize
                                    "old_sigterm_action".

* plugins.d/splashy.c (main): Bug fix: really check return value from
                              "sigaddset".  Fix some warnings on
                              64-bit systems.

* plugins.d/usplash.c (termination_handler, main): Save received
                                                   signal and
                                                   re-raise it on
                                                   exit.
  (usplash_write): Do not close FIFO, instead, take an additional file
                   descriptor pointer to it and open only when needed
                   (all callers changed).  Abort immediately on EINTR.
                   Bug fix:  Add NUL byte on single-word commands.
                   Ignore "interrupted_by_signal".
  (makeprompt, find_usplash): New; broken out from "main()".
  (find_usplash): Bug fix: close /proc/<pid>/cmdline FD on error.
  (main): Reorganized to jump to a new "failure" label on any error.
          Bug fix: check return values from sigaddset.
          New variable "usplash_accessed" to flag if usplash(8) needs
          to be killed and restarted.  Removed the "an_error_occured"
          variable.

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3
3
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4
4
<!ENTITY COMMANDNAME "mandos">
5
 
<!ENTITY TIMESTAMP "2010-09-26">
 
5
<!ENTITY TIMESTAMP "2009-09-10">
6
6
<!ENTITY % common SYSTEM "common.ent">
7
7
%common;
8
8
]>
33
33
    <copyright>
34
34
      <year>2008</year>
35
35
      <year>2009</year>
36
 
      <year>2010</year>
37
36
      <holder>Teddy Hogeborn</holder>
38
37
      <holder>Björn Påhlsson</holder>
39
38
    </copyright>
333
332
      checker program, and interval between checks can be configured
334
333
      both globally and per client; see <citerefentry>
335
334
      <refentrytitle>mandos-clients.conf</refentrytitle>
336
 
      <manvolnum>5</manvolnum></citerefentry>.  A client successfully
337
 
      receiving its password will also be treated as a successful
338
 
      checker run.
339
 
    </para>
340
 
  </refsect1>
341
 
  
342
 
  <refsect1 id="approval">
343
 
    <title>APPROVAL</title>
344
 
    <para>
345
 
      The server can be configured to require manual approval for a
346
 
      client before it is sent its secret.  The delay to wait for such
347
 
      approval and the default action (approve or deny) can be
348
 
      configured both globally and per client; see <citerefentry>
349
 
      <refentrytitle>mandos-clients.conf</refentrytitle>
350
 
      <manvolnum>5</manvolnum></citerefentry>.  By default all clients
351
 
      will be approved immediately without delay.
352
 
    </para>
353
 
    <para>
354
 
      This can be used to deny a client its secret if not manually
355
 
      approved within a specified time.  It can also be used to make
356
 
      the server delay before giving a client its secret, allowing
357
 
      optional manual denying of this specific client.
358
 
    </para>
359
 
    
 
335
      <manvolnum>5</manvolnum></citerefentry>.
 
336
    </para>
360
337
  </refsect1>
361
338
  
362
339
  <refsect1 id="logging">
374
351
    <para>
375
352
      The server will by default provide a D-Bus system bus interface.
376
353
      This interface will only be accessible by the root user or a
377
 
      Mandos-specific user, if such a user exists.  For documentation
378
 
      of the D-Bus API, see the file <filename>DBUS-API</filename>.
 
354
      Mandos-specific user, if such a user exists.
 
355
      <!-- XXX -->
379
356
    </para>
380
357
  </refsect1>
381
358
  
439
416
        <term><filename>/var/run/mandos.pid</filename></term>
440
417
        <listitem>
441
418
          <para>
442
 
            The file containing the process id of the
443
 
            <command>&COMMANDNAME;</command> process started last.
 
419
            The file containing the process id of
 
420
            <command>&COMMANDNAME;</command>.
444
421
          </para>
445
422
        </listitem>
446
423
      </varlistentry>
474
451
      backtrace.  This could be considered a feature.
475
452
    </para>
476
453
    <para>
477
 
      Currently, if a client is disabled due to having timed out, the
478
 
      server does not record this fact onto permanent storage.  This
479
 
      has some security implications, see <xref linkend="clients"/>.
 
454
      Currently, if a client is declared <quote>invalid</quote> due to
 
455
      having timed out, the server does not record this fact onto
 
456
      permanent storage.  This has some security implications, see
 
457
      <xref linkend="clients"/>.
 
458
    </para>
 
459
    <para>
 
460
      There is currently no way of querying the server of the current
 
461
      status of clients, other than analyzing its <systemitem
 
462
      class="service">syslog</systemitem> output.
480
463
    </para>
481
464
    <para>
482
465
      There is no fine-grained control over logging and debug output.
564
547
      </para>
565
548
      <para>
566
549
        If a client is compromised, its downtime should be duly noted
567
 
        by the server which would therefore disable the client.  But
568
 
        if the server was ever restarted, it would re-read its client
569
 
        list from its configuration file and again regard all clients
570
 
        therein as enabled, and hence eligible to receive their
571
 
        passwords.  Therefore, be careful when restarting servers if
572
 
        it is suspected that a client has, in fact, been compromised
573
 
        by parties who may now be running a fake Mandos client with
574
 
        the keys from the non-encrypted initial <acronym>RAM</acronym>
575
 
        image of the client host.  What should be done in that case
576
 
        (if restarting the server program really is necessary) is to
577
 
        stop the server program, edit the configuration file to omit
578
 
        any suspect clients, and restart the server program.
 
550
        by the server which would therefore declare the client
 
551
        invalid.  But if the server was ever restarted, it would
 
552
        re-read its client list from its configuration file and again
 
553
        regard all clients therein as valid, and hence eligible to
 
554
        receive their passwords.  Therefore, be careful when
 
555
        restarting servers if it is suspected that a client has, in
 
556
        fact, been compromised by parties who may now be running a
 
557
        fake Mandos client with the keys from the non-encrypted
 
558
        initial <acronym>RAM</acronym> image of the client host.  What
 
559
        should be done in that case (if restarting the server program
 
560
        really is necessary) is to stop the server program, edit the
 
561
        configuration file to omit any suspect clients, and restart
 
562
        the server program.
579
563
      </para>
580
564
      <para>
581
565
        For more details on client-side security, see