/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 INSTALL

  • Committer: Teddy Hogeborn
  • Date: 2019-07-14 22:39:15 UTC
  • Revision ID: teddy@recompile.se-20190714223915-aqjkms3t3taa6tye
Only use sanitizing options when debugging

The C compiler's sanitizing options introduce code in the output
binary which is fragile and not very security conscious.  It has
become clear that sanitizing is only really meant for use while
debugging.

As a side effect, this makes compilation faster, as the Makefile, for
production builds, no longer runs the compiler repeatedly to find all
its currently supported sanitizing options.

* Makefile (DEBUG): Add "$(SANITIZE)".
  (SANITIZE): Comment out.
  (CFLAGS): Remove "$(SANITIZE)".
  (plugins.d/mandos-client): Revert back to use plain $(LINK.c), since
                             we no longer need to remove the leak
                             sanitizer by overriding CFLAGS.

Show diffs side-by-side

added added

removed removed

Lines of Context:
4
4
  
5
5
** Operating System
6
6
   
7
 
   Debian 6.0 "squeeze" or Ubuntu 10.10 "Maverick Meerkat" (or later).
 
7
   Debian 8.0 "jessie" or Ubuntu 15.10 "Wily Werewolf" (or later).
8
8
   
9
9
   This is mostly for the support scripts which make sure that the
10
10
   client is installed and started in the initial RAM disk environment
38
38
    "man -l mandos.8".
39
39
    
40
40
*** Mandos Server
41
 
    + GnuTLS 2.4          http://www.gnutls.org/
42
 
      Note: GnuTLS 3 will only work with Python-GnuTLS 2
 
41
    + GnuTLS 3.3          https://www.gnutls.org/
 
42
      (but not 3.6.0 or later, until 3.6.6, which works)
43
43
    + Avahi 0.6.16        http://www.avahi.org/
44
44
    + Python 2.7          https://www.python.org/
45
 
    + Python-GnuTLS 1.1.5 https://pypi.python.org/pypi/python-gnutls/
46
 
    + dbus-python 0.82.4  http://dbus.freedesktop.org/doc/dbus-python/
47
 
    + PyGObject 2.14.2    https://developer.gnome.org/pygobject/
48
 
    + pkg-config  http://www.freedesktop.org/wiki/Software/pkg-config/
 
45
    + dbus-python 0.82.4 https://dbus.freedesktop.org/doc/dbus-python/
 
46
    + PyGObject 3.7.1     https://wiki.gnome.org/Projects/PyGObject
 
47
    + pkg-config https://www.freedesktop.org/wiki/Software/pkg-config/
49
48
    + Urwid 1.0.1         http://urwid.org/
50
49
      (Only needed by the "mandos-monitor" tool.)
51
50
    
54
53
    + ssh-keyscan from OpenSSH http://www.openssh.com/
55
54
    
56
55
    Package names:
57
 
    python-gnutls avahi-daemon python python-avahi python-dbus
58
 
    python-gobject python-urwid pkg-config fping ssh-client
 
56
    avahi-daemon python python-dbus python-gi python-urwid pkg-config
 
57
    fping ssh-client
59
58
    
60
59
*** Mandos Client
 
60
    + GNU C Library 2.16 https://gnu.org/software/libc/
61
61
    + initramfs-tools 0.85i
62
62
                        https://tracker.debian.org/pkg/initramfs-tools
63
 
    + GnuTLS 2.4        http://www.gnutls.org/
 
63
    + GnuTLS 3.3        https://www.gnutls.org/
 
64
      (but not 3.6.0 or later, until 3.6.6 which works)
64
65
    + Avahi 0.6.16      http://www.avahi.org/
65
66
    + GnuPG 1.4.9       https://www.gnupg.org/
66
67
    + GPGME 1.1.6       https://www.gnupg.org/related_software/gpgme/
67
 
    + pkg-config  http://www.freedesktop.org/wiki/Software/pkg-config/
 
68
    + pkg-config https://www.freedesktop.org/wiki/Software/pkg-config/
68
69
    
69
70
    Strongly recommended:
70
71
    + OpenSSH           http://www.openssh.com/
71
72
    
72
73
    Package names:
73
 
    initramfs-tools libgnutls-dev libavahi-core-dev gnupg
 
74
    initramfs-tools libgnutls-dev gnutls-bin libavahi-core-dev gnupg
74
75
    libgpgme11-dev pkg-config ssh
75
76
 
76
77
* Installing the Mandos server
124
125
     
125
126
        # /usr/lib/mandos/plugins.d/mandos-client \
126
127
                --pubkey=/etc/keys/mandos/pubkey.txt \
127
 
                --seckey=/etc/keys/mandos/seckey.txt; echo
 
128
                --seckey=/etc/keys/mandos/seckey.txt \
 
129
                --tls-privkey=/etc/keys/mandos/tls-privkey.pem \
 
130
                --tls-pubkey=/etc/keys/mandos/tls-pubkey.pem; echo
128
131
     
129
132
     This command should retrieve the password from the server,
130
133
     decrypt it, and output it to standard output.