=== modified file 'TODO' --- TODO 2008-08-17 20:34:18 +0000 +++ TODO 2008-08-18 03:25:01 +0000 @@ -87,18 +87,18 @@ ** [#A] Config file man page: man5/mandos.conf (mandos.conf) ** [#A] Config file man page: man5/mandos-clients.conf (clients.conf) ** [#A] /etc/init.d/mandos-server :teddy: -** Log level +** [#B] Log level :bugs: ** /etc/mandos/clients.d/*.conf Watch this directory and add/remove/update clients? ** config for TXT record -** Run-time communication with server +** [#B] Run-time communication with server :bugs: Probably using D-Bus See also [[*Mandos-tools]] -** Implement --foreground +** Implement --foreground :bugs: [[info:standards:Option%20Table][Table of Long Options]] ** Implement --socket [[info:standards:Option%20Table][Table of Long Options]] -** Date+time on console log messages +** Date+time on console log messages :bugs: Is this the default? * Mandos-tools/utilities === modified file 'mandos.xml' --- mandos.xml 2008-08-17 22:42:28 +0000 +++ mandos.xml 2008-08-18 03:25:01 +0000 @@ -73,27 +73,30 @@ &COMMANDNAME; - --interfaceIF - --addressADDRESS - --portPORT - --priorityPRIORITY - --servicenameNAME - --configdirDIRECTORY - --debug - - - &COMMANDNAME; - -iIF - -aADDRESS - -pPORT - --priorityPRIORITY - --servicenameNAME - --configdirDIRECTORY - --debug - - - &COMMANDNAME; - --help + --interfaceIF + --addressADDRESS + --portPORT + --priorityPRIORITY + --servicenameNAME + --configdirDIRECTORY + --debug + + + &COMMANDNAME; + -iIF + -aADDRESS + -pPORT + --priorityPRIORITY + --servicenameNAME + --configdirDIRECTORY + --debug + + + &COMMANDNAME; + + -h + --help + &COMMANDNAME; @@ -154,7 +157,9 @@ Only announce the server and listen to requests on network interface IF. Default is to - use all available interfaces. + use all available interfaces. Note: + a failure to bind to the specified interface is not + considered critical, and the server does not exit. @@ -372,6 +377,26 @@ + + ENVIRONMENT + + + PATH + + + To start the configured checker (see ), the server uses + /bin/sh, which in turn uses + PATH to search for matching commands if + an absolute path is not given. See + sh1 + + + + + + + FILES @@ -418,19 +443,50 @@ + + /bin/sh + + + This is used to start the configured checker command for + each client. See + mandos-clients.conf + 5 for details. + + + - + BUGS This server might, on especially fatal errors, emit a Python backtrace. This could be considered a feature. + + Currently, if a client is declared invalid due to + having timed out, the server does not record this fact onto + permanent storage. This has some security implications, see + . + + + There is currently no way of querying the server of the current + status of clients, other than analyzing its syslog output. + + + There is no fine-grained control over logging and debug output. + + + Debug mode is conflated with running in the foreground. + + + The console log messages does not show a timestamp. + - - - EXAMPLES + + + EXAMPLE Normal invocation needs no options: @@ -469,16 +525,16 @@ SECURITY - + SERVER - Running this &COMMANDNAME; server program should not in itself - present any security risk to the host computer running it. - The program does not need any special privileges to run, and - is designed to run as a non-root user. + Running this &COMMANDNAME; server program + should not in itself present any security risk to the host + computer running it. The program does not need any special + privileges to run, and is designed to run as a non-root user. - + CLIENTS The server only gives out its stored data to clients which @@ -499,6 +555,21 @@ compromised if they are gone for too long. + If a client is compromised, its downtime should be duly noted + by the server which would therefore declare the client + invalid. But if the server was ever restarted, it would + re-read its client list from its configuration file and again + regard all clients therein as valid, and hence eligible to + receive their passwords. Therefore, be careful when + restarting servers if you suspect that a client has, in fact, + been compromised by parties who may now be running a fake + Mandos client with the keys from the non-encrypted initial RAM + image of the client host. What should be done in that case + (if restarting the server program really is necessary) is to + stop the server program, edit the configuration file to omit + any suspect clients, and restart the server program. + + For more details on client-side security, see password-request 8mandos.