.\" Automatically generated by Pod::Man version 1.15 .\" Fri Dec 20 09:52:45 2002 .\" .\" Standard preamble: .\" ====================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Ip \" List item .br .ie \\n(.$>=3 .ne \\$3 .el .ne 3 .IP "\\$1" \\$2 .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used .\" to do unbreakable dashes and therefore won't be available. \*(C` and .\" \*(C' expand to `' in nroff, nothing in troff, for use with C<> .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr .\" for titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and .\" index entries marked with X<> in POD. Of course, you'll have to process .\" the output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it .\" makes way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. .bd B 3 . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ====================================================================== .\" .IX Title "sfssd_config 5" .TH sfssd_config 5 "SFS 0.7.2" "2002-12-20" "SFS 0.7.2" .UC .SH "NAME" sfssd_config \- meta-server configuration .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIsfssd_config\fR configures \fBsfssd\fR, the server that accepts connections for \fBsfsrwsd\fR and \fBsfsauthd\fR. \&\fIsfssd_config\fR can be used to run multiple ``virtual servers'', or to run several versions of the server software for compatibility with old clients. .PP Directives are: .Ip "BindAddr \fIip-addr\fR [\fIport\fR]" 4 .IX Item "BindAddr ip-addr [port]" Specifies the \s-1IP\s0 address and port on which \fBsfssd\fR should listen for \s-1TCP\s0 connections. The default is \fB\s-1INADDR_ANY\s0\fR for the address and port 4. .Ip "RevocationDir \fIpath\fR" 4 .IX Item "RevocationDir path" Specifies the directory in which \fBsfssd\fR should search for revocation/redirection certificates when clients connect to unknown (potentially revoked) self-certifying pathnames. The default value is \&\fI/var/sfs/srvrevoke\fR. Use the command \fBsfskey revokegen\fR to generate revocation certificates. .Ip "HashCost \fIbits\fR" 4 .IX Item "HashCost bits" Specifies that clients must pay for connections by burning \s-1CPU\s0 time. This can help reduce the effectiveness of denial-of-service attacks. The default value is 0. The maximum value is 22. .Ip "Server {* | @\fILocation\fR[,\fIHostID\fR]}" 4 .IX Item "Server {* | @Location[,HostID]}" Specifies a section of the file that applies connection requests for the self-certifying pathname @\fILocation\fR\fB,\fR\fIHostID\fR. If \&\fB,\fR\fIHostID\fR is omitted, then the following lines apply to any connection that does not match an explicit \fIHostID\fR in another \&\fBServer\fR. The argument \fB*\fR applies to all clients who do not have a better match for either \fILocation\fR or \fIHostID\fR. .Ip "Release {* | \fIsfs-version\fR}" 4 .IX Item "Release {* | sfs-version}" Begins a section of the file that applies to clients running \s-1SFS\s0 release \&\fIsfs-version\fR or older. \fB*\fR signifies arbitrarily large \s-1SFS\s0 release numbers. The \fBRelease\fR directive does not do anything on its own, but applies to all subsequent \fBService\fR directives until the next \fBRelease\fR or \fBServer\fR directive. .Ip "Extensions \fIext1\fR [\fIext2\fR ...]" 4 .IX Item "Extensions ext1 [ext2 ...]" Specifies that subsequent \fBService\fR directives apply only to clients that supply all of the listed extension strings (\fIext1\fR, \&...). \fBExtensions\fR applies until the next \fBExtensions\fR, \&\fBRelease\fR or \fBServer\fR directive .Ip "Service \fIsrvno\fR \fIdaemon\fR [\fIarg\fR ...]" 4 .IX Item "Service srvno daemon [arg ...]" Specifies the daemon that should handle clients seeking service number \&\fIsrvno\fR. \s-1SFS\s0 defines the following values of \fIsrvno\fR: .Sp 1. File server 2. Authentication server 3. Remote execution 4. \s-1SFS/HTTP\s0 (not yet released) .Ip "Service \fIsrvno\fR \-u \fIpath\fR" 4 .IX Item "Service srvno -u path" Operates as the above syntax of \fBService\fR, only instead of spawning a daemon, connects to the unix-domain socket specified by \&\fBpath\fR to communicate with an already running daemon. This option may be useful when debugging \s-1SFS\s0 servers, as the server for a particular service on a particular self-certifying pathname can be run under the debugger and receive connections on the usual \s-1SFS\s0 port without interfering with other servers on the same machine. .Ip "Service \fIsrvno\fR \-t \fIhost\fR [\fIport\fR]" 4 .IX Item "Service srvno -t host [port]" Specifies that \fBsfssd\fR should act as a ``\s-1TCP\s0 proxy'' for this particular service, relaying any incoming connections to \s-1TCP\s0 port \&\fIport\fR on \fIhost\fR. If unspecified, \fIport\fR is the default \&\s-1SFS\s0 \s-1TCP\s0 port 4. .Sp This syntax is useful in a NATted environment. For instance, suppose you have two \s-1SFS\s0 servers with addresses 10.0.0.2 and 10.0.0.3 on a private network, and one machine 10.0.0.1 with an externally visible interface 4.3.2.1. You can use this proxy syntax to export the internal file systems. The easiest way is to pick two \s-1DNS\s0 names for the new servers, but point them at your outside server. For example: .Sp .Vb 2 \& server-a.mydomain.com. IN A 4.3.2.1 \& server-b.mydomain.com. IN A 4.3.2.1 .Ve Then, on your outside machine, you might have the following \&\fIsfssd_config\fR file: .Sp .Vb 10 \& Server server-a.mydomain.com \& Release * \& Service 1 -t 10.0.0.2 \& Service 2 -t 10.0.0.2 \& Service 3 -t 10.0.0.2 \& Server server-b.mydomain.com \& Release * \& Service 1 -t 10.0.0.3 \& Service 2 -t 10.0.0.3 \& Service 3 -t 10.0.0.3 .Ve Then on each of the internal machines, be sure to specify \&\fBHostname server-A.mydomain.com\fR and \fBHostname server-B.mydomain.com\fR in \fIsfsrwsd_config\fR. .PP The default contents of \fIsfssd_config\fR is: .PP .Vb 5 \& Server * \& Release * \& Service 1 sfsrwsd \& Service 2 sfsauthd \& Service 3 rexd .Ve To disable the file server, you can copy this file to \&\fI/etc/sfs/sfssd_config\fR and comment out the line \fBService 1 sfsrwsd\fR. To disable the remote login server, comment out the line for \fBrexd\fR. .PP To run a different server for sfs-0.6 and older clients, you could add the lines: .PP .Vb 2 \& Release 0.6 \& Service 1 /usr/local/lib/sfs-0.6/sfsrwsd .Ve .SH "FILES" .IX Header "FILES" .Ip "\fI/etc/sfs/sfssd_config\fR" 4 .IX Item "/etc/sfs/sfssd_config" .PD 0 .Ip "\fI/usr/local/share/sfs/sfssd_config\fR" 4 .IX Item "/usr/local/share/sfs/sfssd_config" .PD meta-server configuration .PP (Files in \fI/etc/sfs\fR supersede default versions in \fI/usr/local/share/sfs\fR.) .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIdirsearch\fR\|(1), \fInewaid\fR\|(1), \fIrex\fR\|(1), \fIsfsagent\fR\|(1), \fIsfskey\fR\|(1), \fIssu\fR\|(1), \fIsfs_config\fR\|(5), \fIsfs_srp_params\fR\|(5), \fIsfs_users\fR\|(5), \fIsfsauthd_config\fR\|(5), \fIsfscd_config\fR\|(5), \fIsfsrwsd_config\fR\|(5), \fIfunmount\fR\|(8), \fIsfsauthd\fR\|(8), \fIsfscd\fR\|(8), \fIsfsrwsd\fR\|(8), \fIsfssd\fR\|(8), \fIvidb\fR\|(8) .PP The full documentation for \fB\s-1SFS\s0\fR is maintained as a Texinfo manual. If the \fBinfo\fR and \fB\s-1SFS\s0\fR programs are properly installed at your site, the command \fBinfo \s-1SFS\s0\fR should give you access to the complete manual. .PP For updates, documentation, and software distribution, please see the \fB\s-1SFS\s0\fR website at \fIhttp://www.fs.net\fR. .SH "AUTHOR" .IX Header "AUTHOR" sfsdev@redlab.lcs.mit.edu