'\" t .\" Title: nuxwdog .\" Author: [see the "Authors" section] .\" Generator: DocBook XSL Stylesheets v1.75.2 .\" Date: November 29, 2010 .\" Manual: PKI Tools .\" Source: nuxwdog 1 .\" Language: English .\" .TH "NUXWDOG" "1" "November 29, 2010" "nuxwdog 1" "PKI Tools" .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" nuxwdog \- Provides a simple watchdog process that can be used to start, stop, monitor, or reconfigure a server process\&. .SH "SYNOPSIS" .HP \w'\fBnuxwdog\fR\ 'u \fBnuxwdog\fR \-f\ \fIconfiguration_file\fR [\-i] .SH "DESCRIPTION" .PP \fBnuxwdog\fR is a watchdog daemon that builds on the \fBuxwdog\fR service that is part of the Netscape Enterprise Server (NES)\&. \fBnuxwdog\fR can start, stop, monitor, and reconfigure server programs, depending on the parameters passed to it in its configuration file\&. \fBnuxwdog\fR opens a Unix domain socket to accept requests from any server process it is managing\&. Optionally, \fBnuxwdog\fR can be configured to communicate only with clients that are descendants of the \fBnuxwdog\fR process, limiting an avenue of potential access to any servers managed by the watchdog\&. .PP Some servers require a high\-level of security to protect their data or operations, which means (for example) that they cannot store plaintext passwords in a password file to allow the server to be started automatically\&. \fBnuxwdog\fR can be configured to prompt for server passwords when a server first starts and then caches those passwords so that \fBnuxwdog\fR can restart the server without intervention if the server crashes\&. .PP To make it easy for clients to communicate with \fBnuxwdog\fR, a C/C++ shared library is provided with the \fBnuxwdog\fR source code (libnuxwdog\&.so)\&. Additionally, \fBnuxwdog\fR provides JNI interfaces and Perl bindings to the libnuxwdog\&.so library, so that calls can be made from Java and Perl programs\&. For more information on this library and the client interfaces, see \m[blue]\fBhttps://fedorahosted\&.org/nuxwdog/wiki/HOWTO\fR\m[]\&. .PP \fBnuxwdog\fR is used by Dogtag PKI to monitor and manage the subsystem server processes for Java, Tomcat, and Apache servers\&. .SH "OPTIONS" .PP \-f \fIconfiguration_file\fR .RS 4 Passes the configuration file for the service which runs the subsystem\&. \fIWith Dogtag PKI\&.\fR For the CA, OCSP, TKS, and DRM, this is for the Java process\&. For the TPS, this is for the Apache process\&. .RE .PP \-i .RS 4 Runs the nuxwdog process in interactive mode and keeps nuxwdog open in the foreground instead of running it as a daemon in the background\&. .RE .SH "CONFIGURATION FILE PARAMETERS AND EXAMPLES" .PP ExeFile .RS 4 Gives the full path to the executable to be started\&. .RE .PP ExeArgs .RS 4 Passes any arguments to the executable\&. The first argument must be the full path to the executable (the same as the value in \fBExeFile\fR)\&. .RE .PP TmpDir .RS 4 Gives the full path to the executable to be started\&. .RE .PP ChildSecurity .RS 4 Sets whether the child server process should only allow requests from a parent (where \fBnuxwdog\fR is the parent)\&. \fBnuxwdog\fR checks the process ID for any client which sends a request to the Unix domain socket and drops any message where the client is not a descendant of the \fBnuxwdog\fR process\&. To allow any request, set this to \fB0\fR; to allow only parent or ancestor requests, sets this to \fB1\fR\&. .RE .PP ExeOut .RS 4 Gives the file to write stdout for the server to be started\&. .RE .PP ExeErr .RS 4 Gives the file to write stderr for the server to be started\&. .RE .PP ExeBackground .RS 4 Sets whether to run the server and the \fBnuxwdog\fR processes in the background in daemon mode after the watchdog is initialized\&. Setting this to \fB1\fR enables daemon mode, while \fB0\fR keeps this in the foreground\&. .RE .PP PidFile .RS 4 Gives the PID file to use to store the \fBnuxwdog\fR PID\&. .RE .PP ChildPidFile .RS 4 Gives the PID file to use to store the PID of the server process managed by \fBnuxwdog\fR\&. .RE .PP ExeContext .RS 4 Sets the SELinux context in which to start the server process\&. .RE .PP \fBnuxwdog\fR can be used to manage many types of server processes\&. For Dogtag PKI, it manages Java, Tomcat, and Apache servers\&. For the Dogtag PKI Certificate Authority, a Java\-based subsystem with a Tomcat web service, the configuration file identifies the appropriate JRE and class paths, along with setting the output, error, and PID files\&. (The \fIExeArgs\fR argument should be all on one line\&.) .sp .if n \{\ .RS 4 .\} .nf ExeFile /usr/lib/jvm/jre/bin/java ExeArgs /usr/lib/jvm/jre/bin/java \-Djava\&.endorsed\&.dirs=/usr/share/tomcat5/common/endorsed \-classpath :/usr/lib/jvm/jre/lib/rt\&.jar :/usr/share/java/commons\-collections\&.jar :/usr/share/tomcat5/bin/bootstrap\&.jar :/usr/share/tomcat5/bin/commons\-logging\-api\&.jar :/usr/share/java/mx4j/mx4j\-impl\&.jar :/usr/share/java/mx4j/mx4j\-jmx\&.jar :/usr/share/tomcat5/common/lib/nuxwdog\&.jar \-Dcatalina\&.base=/var/lib/pki\-ca2 \-Dcatalina\&.home=/usr/share/tomcat5 \-Djava\&.io\&.tmpdir=/usr/share/tomcat5/temp org\&.apache\&.catalina\&.startup\&.Bootstrap start TmpDir /var/lib/pki\-ca2/logs/pids ChildSecurity 1 ExeOut /var/lib/pki\-ca2/logs/catalina\&.out ExeErr /var/lib/pki\-ca2/logs/catalina\&.out ExeBackground 1 PidFile /var/lib/pki\-ca2/logs/wd\-pki\-ca2\&.pid ChildPidFile /var/run/pki\-ca2\&.pid .fi .if n \{\ .RE .\} .PP For Dogtag PKI, the Token (smart card) Processing System uses an Apache\-based server\&. This example also sets the SELinux context, \fBpki_tps_t\fR, used by the TPS subsystem processes\&. .sp .if n \{\ .RS 4 .\} .nf ExeFile /usr/sbin/httpd\&.worker ExeArgs /usr/sbin/httpd\&.worker \-f /etc/pki\-tps1/httpd\&.conf TmpDir /var/lib/pki\-tps1/logs/pids PidFile /var/lib/pki\-tps1/logs/wd\-pki\-tps1\&.pid ExeContext pki_tps_t .fi .if n \{\ .RE .\} .SH "ADDITIONAL RESOURCES" .PP There is a more detailed how\-to article, including information on available client calls for \fBnuxwdog\fR, at \m[blue]\fBhttps://fedorahosted\&.org/nuxwdog/wiki/HOWTO\fR\m[]\&. .PP The \fBnuxwdog\fR server works in conjunction with the Dogtag PKI subsystems\&. The Dogtag PKI project wiki is at \m[blue]\fBhttp://pki\&.fedoraproject\&.org/wiki/\fR\m[]\&. .PP For information specifically about \fBnuxwdog\fR, the \fBnuxwdog\fR project wiki is located at \m[blue]\fBhttps://fedorahosted\&.org/nuxwdog/wiki/\fR\m[]\&\s-2\u[1]\d\s+2\&. The \fBnuxwdog\fR relates directly to \fBnuxwdog\fR code changes and releases, rather than all PKI\-related updates\&. .PP Mailing lists: pki\-devel@redhat\&.com and pki\-users@redhat\&.com .PP IRC: Freenode at #dogtag\-pki .SH "AUTHORS" .PP The PKI tools were written and maintained by developers with Netscape and now with Red Hat\&. .PP Authors: Ade Lee , Deon Lackey \&. .SH "COPYRIGHT" .PP (c) 2010, Red Hat, Inc\&. Licensed under the GNU Public License version 2\&. .SH "NOTES" .IP " 1." 4 https://fedorahosted.org/nuxwdog/wiki/ .RS 4 \%https://fedorahosted.org/nuxwdog/wiki .RE