3 .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
4 .\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
6 .\" Manual: Netatalk 2.2
7 .\" Source: Netatalk 2.2
10 .TH "AFPD\&.CONF" "5" "15 Aug 2011" "Netatalk 2.2" "Netatalk 2.2"
11 .\" -----------------------------------------------------------------
12 .\" * set default formatting
13 .\" -----------------------------------------------------------------
14 .\" disable hyphenation
16 .\" disable justification (adjust text to left margin only)
18 .\" -----------------------------------------------------------------
19 .\" * MAIN CONTENT STARTS HERE *
20 .\" -----------------------------------------------------------------
22 afpd.conf \- Configuration file used by afpd(8) to determine the setup of its file sharing services
26 is the configuration file used by
28 to determine the behavior and configuration of the different virtual file servers that it provides\&.
30 Any line not prefixed with # is interpreted\&. The configuration lines are composed like: server name [ options ] If a
32 is used instead of a server name, the default server is specified\&. Server names must be quoted if they contain spaces\&. They must not contain ":" or "@"\&. The path name must be a fully qualified path name, or a path name using either the ~ shell shorthand or any of the substitution variables, which are listed below\&.
39 .nr an-no-space-flag 1
47 Each server has to be configured on a
49 line\&. Though, using "\e" character, newline escaping is supported\&.
52 The possible options and their meanings are:
53 .SH "APPLEVOLUMES FILES"
55 \-defaultvol \fI[path]\fR
57 Specifies path to AppleVolumes\&.default file (default is
58 :ETCDIR:/AppleVolumes\&.default)\&.
61 \-systemvol \fI[path]\fR
63 Specifies path to AppleVolumes\&.system file (default is
64 :ETCDIR:/AppleVolumes\&.system)\&.
69 Enables or disables reading of the users\' individual volumes file entirely\&.
74 Enables or disables reading of the users\' individual volumes file before processing the global
75 AppleVolumes\&.default
78 .SH "AUTHENTICATION METHODS"
80 \-uamlist \fI[uams list]\fR
82 Comma separated list of UAMs\&. (The default is uams_dhx\&.so,uams_dhx2\&.so)\&.
84 The most commonly used UAMs are:
93 (uams_pam\&.so or uams_passwd\&.so) Allow logins with passwords transmitted in the clear\&. (legacy)
98 allows Random Number and Two\-Way Random Number Exchange for authentication (requires a separate file containing the passwords, either :ETCDIR:/afppasswd file or the one specified via
99 \fB\-passwdfile\fR\&. See
101 for details\&. (legacy)
106 (uams_dhx_pam\&.so or uams_dhx_passwd\&.so) Allow Diffie\-Hellman eXchange (DHX) for authentication\&.
111 (uams_dhx2_pam\&.so or uams_dhx2_passwd\&.so) Allow Diffie\-Hellman eXchange 2 (DHX2) for authentication\&.
116 Allow Kerberos V for authentication (optional)
120 \-uampath \fI[path]\fR
122 Sets the default path for UAMs for this server (default is :ETCDIR:/uams)\&.
125 \-k5keytab \fI[path]\fR, \-k5service \fI[service]\fR, \-k5realm \fI[realm]\fR
127 These are required if the server supports the Kerberos 5 authentication UAM\&.
130 \-ntdomain, \-ntseparator
132 Use for eg\&. winbind authentication, prepends both strings before the username from login and then tries to authenticate with the result through the availabel and active UAM authentication modules\&.
138 \fB\-adminauthuser root\fR
139 whenever a normal user login fails, afpd will try to authenticate as the specified
140 \fBadminauthuser\fR\&. If this succeeds, a normal session is created for the original connecting user\&. Said differently: if you know the password of
141 \fBadminauthuser\fR, you can authenticate as any other user\&.
143 .SH "CODEPAGE OPTIONS"
145 With OS X Apple introduced the AFP3 protocol\&. One of the big changes was, that AFP3 uses Unicode names encoded as Decomposed UTF\-8 (UTF8\-MAC)\&. Previous AFP/OS versions used codepages like MacRoman, MacCentralEurope, etc\&.
147 To be able to serve AFP3 and older clients at the same time,
149 needs to be able to convert between UTF\-8 and Mac codepages\&. Even OS X clients partly still rely on codepages\&. As there\'s no way,
151 can detect the codepage a pre AFP3 client uses, you have to specify it using the
153 option\&. The default is MacRoman, which should be fine for most western users\&.
157 needs to interact with unix operating system as well, it need\'s to be able to convert from UTF8\-MAC/MacCodepage to the unix codepage\&. By default
159 uses the systems LOCALE, or ASCII if your system doesn\'t support locales\&. You can set the unix codepage using the
161 option\&. If you\'re using extended characters in the configuration files for
162 \fBafpd\fR, make sure your terminal matches the
163 \fB\-unixcodepage\fR\&.
165 \-unixcodepage [\fICODEPAGE\fR]
167 Specifies the servers unix codepage, e\&.g\&. "ISO\-8859\-15" or "UTF8"\&. This is used to convert strings to/from the systems locale, e\&.g\&. for authenthication, server messages and volume names\&. Defaults to LOCALE if your system supports it, otherwise ASCII will be used\&.
170 \-maccodepage [\fICODEPAGE\fR]
172 Specifies the mac clients codepage, e\&.g\&. "MAC_ROMAN"\&. This is used to convert strings and filenames to the clients codepage for OS9 and Classic, i\&.e\&. for authentication and AFP messages (SIGUSR2 messaging)\&. This will also be the default for the volumes maccharset\&. Defaults to MAC_ROMAN\&.
174 .SH "PASSWORD OPTIONS"
176 \-loginmaxfail [\fInumber\fR]
178 Sets the maximum number of failed logins, if supported by the UAM (currently none)
181 \-passwdfile [\fIpath\fR]
183 Sets the path to the Randnum UAM passwd file for this server (default is :ETCDIR:/afppasswd)\&.
186 \-passwdminlen [\fInumber\fR]
188 Sets the minimum password length, if supported by the UAM
193 Enables or disables the ability of clients to save passwords locally
198 Enables or disables the ability of clients to change their passwords via chooser or the "connect to server" dialog
200 .SH "TRANSPORT PROTOCOLS"
204 Enables or disables AFP\-over\-Appletalk\&. If
206 is specified, you must instead use
208 to prevent DDP connections from working\&. (default is \-noddp)
213 Enables or disables AFP\-over\-TCP (default is \-tcp)
220 .SH "TRANSPORT OPTIONS"
224 Allows Mac OS X clients (10\&.3\&.3\-10\&.4) to automagically establish a tunneled AFP connection through SSH\&. If this option is set, the server\'s answers to client\'s FPGetSrvrInfo requests contain an additional entry\&. It depends on both client\'s settings and a correctly configured and running
226 on the server to let things work\&.
232 .nr an-no-space-flag 1
239 Setting this option is not recommended since globally encrypting AFP connections via SSH will increase the server\'s load significantly\&. On the other hand, Apple\'s client side implementation of this feature in MacOS X versions prior to 10\&.3\&.4 contained a security flaw\&.
244 \-ddpaddr \fI[ddp address]\fR
246 Specifies the DDP address of the server\&. The default is to auto\-assign an address (0\&.0)\&. This is only useful if you are running AppleTalk on more than one interface\&.
249 \-fqdn \fI[name:port]\fR
251 Specifies a fully\-qualified domain name, with an optional port\&. This is discarded if the server cannot resolve it\&. This option is not honored by AppleShare clients <= 3\&.8\&.3\&. This option is disabled by default\&. Use with caution as this will involve a second name resolution step on the client side\&. Also note that afpd will advertise this name:port combination but not automatically listen to it\&.
254 \-hostname\fI [name]\fR
256 Use this instead of the result from calling hostname for dertermening which IP address to advertise, therfore the hostname is resolved to an IP which is the advertised\&. This is NOT used for listening and it is also overwritten by
260 \-ipaddr \fI[ip address]\fR
262 Specifies the IP address that the server should advertise
264 listens to\&. The default is advertise the first IP address of the system, but to listen for any incoming request\&. The network address may be specified either in dotted\-decimal format for IPv4 or in hexadecimal format for IPv6\&. This option also allows to use one machine to advertise the AFP\-over\-TCP/IP settings of another machine via NBP
265 when used together with the
269 \fBExample.\ \&afpd.conf onfiguration line\fR
275 fluxxus \-hostname afp\&.example\&.org \-ipaddr 192\&.168\&.0\&.1 \-fqdn www\&.example\&.com
285 (UTF8) Server name: fluxxus, Listening and advertised network address: 192\&.168\&.0\&.1, Advertised network address: www\&.example\&.com, hostname is not used\&.
288 \-port \fI[port number]\fR
290 Allows a different TCP port to be used for AFP\-over\-TCP\&. The default is 548\&.
295 Runs an AppleTalk proxy server for the specified AFP\-over\-TCP server\&. If the address and port aren\'t given, then the first IP address of the system and port 548 will be used\&. If you don\'t want the proxy server to act as a DDP
297 \fB\-uamlist ""\fR\&.
300 \-server_quantum \fI[number]\fR
302 This specifies the DSI server quantum\&. The default value is 303840\&. The maximum value is 0xFFFFFFFFF, the minimum is 32000\&. If you specify a value that is out of range, the default value will be set\&. Do not change this value unless you\'re absolutely sure, what you\'re doing
305 \-dsireadbuf \fI[number]\fR
307 Scale factor that determines the size of the DSI/TCP readahead buffer, default is 12\&. This is multiplies with the DSI server quantum (default ~300k) to give the size of the buffer\&. Increasing this value might increase throughput in fast local networks for volume to volume copies\&.
308 \fINote\fR: This buffer is allocated per afpd child process, so specifying large values will eat up large amount of memory (buffer size * number of clients)\&.
311 \-tcprcvbuf \fI[number]\fR
313 Try to set TCP receive buffer using setsockpt()\&. Often OSes impose restrictions on the applications ability to set this value\&.
316 \-tcpsndbuf \fI[number]\fR
318 Try to set TCP send buffer using setsockpt()\&. Often OSes impose restrictions on the applications ability to set this value\&.
323 Disable automatic Zeroconf
324 service registration if support was compiled in\&.
329 Register this server using the Service Location Protocol (if SLP
330 support was compiled in)\&.
332 .SH "MISCELLANEOUS OPTIONS"
334 \-admingroup \fI[group]\fR
336 Allows users of a certain group to be seen as the superuser when they log in\&. This option is disabled by default\&.
339 \-authprintdir \fI[path]\fR
341 Specifies the path to be used (per server) to store the files required to do CAP\-style print authentication which papd will examine to determine if a print job should be allowed\&. These files are created at login and if they are to be properly removed, this directory probably needs to be umode 1777\&.
347 .nr an-no-space-flag 1
355 will only work for clients connecting via DDP\&. Almost all modern Clients will use TCP\&.
362 With this switch enabled, afpd won\'t advertise that it is capable of server notifications, so that connected clients poll the server every 10 seconds to detect changes in opened server windows\&.
363 \fINote\fR: Depending on the number of simultaneously connected clients and the network\'s speed, this can lead to a significant higher load on your network!
369 .nr an-no-space-flag 1
376 Do not use this option any longer as Netatalk 2\&.x correctly supports server notifications, allowing connected clients to update folder listings in case another client changed the contents\&.
383 Immediately unmount volumes removed from AppleVolumes files on SIGHUP sent to the afp master process\&.
386 \-cnidserver \fI[ipaddress:port]\fR
388 Specifies the IP address and port of a cnid_metad server, required for CNID dbd backend\&. Defaults to localhost:4700\&. The network address may be specified either in dotted\-decimal format for IPv4 or in hexadecimal format for IPv6\&.\-
391 \-dircachesize\fI entries\fR
393 Maximum possible entries in the directory cache\&. The cache stores directories and files\&. It is used to cache the full path to directories and CNIDs which considerably speeds up directory enumeration\&.
395 Default size is 8192, maximum size is 131072\&. Given value is rounded up to nearest power of 2\&. Each entry takes about 100 bytes, which is not much, but remember that every afpd child process for every connected user has its cache\&.
398 \-fcelistener \fIhost[:port]\fR
400 Enables sending FCE events to the specified
403 is 12250 if not specified\&. Specifying mutliple listeners is done by having this option once for each of them\&.
406 \-fceevents \fIfmod,fdel,ddel,fcre,dcre,tmsz\fR
408 Speficies which FCE events are active, default is
409 \fIfmod,fdel,ddel,fcre,dcre\fR\&.
412 \-fcecoalesce \fIall|delete|create\fR
414 Coalesce FCE events\&.
417 \-fceholdfmod \fIseconds\fR
419 This determines the time delay in seconds which is always waited if another file modification for the same file is done by a client before sending an FCE file modification event (fmod)\&. For example saving a file in Photoshop would generate multiple events by itself because the application is opening, modifying and closing a file mutliple times for every "save"\&. Defautl: 60 seconds\&.
422 \-guestname \fI[name]\fR
424 Specifies the user that guests should use (default is "nobody")\&. The name should be quoted\&.
429 [Don\'t] Use the platform\-specific icon\&. Recent Mac OS don\'t display it any longer\&.
434 Enable "Continuous AFP Service"\&. This means the ability to stop the master afpd process with a SIGQUIT signal, possibly install an afpd update and start the afpd process\&. Existing AFP sessions afpd processes will remain unaffected\&. Technically they will be notified of the master afpd shutdown, sleep 15\-20 seconds and then try to reconnect their IPC channel to the master afpd process\&. If this reconnect fails, the sessions are in an undefined state\&. Therefor it\'s absolutely critical to restart the master process in time!
437 \-loginmesg \fI[message]\fR
439 Sets a message to be displayed when clients logon to the server\&. The message should be in
441 and should be quoted\&. Extended characters are allowed\&.
444 \-mimicmodel \fImodel\fR
446 Specifies the icon model that appears on clients\&. Defaults to off\&. Examples: RackMac (same as Xserve), PowerBook, PowerMac, Macmini, iMac, MacBook, MacBookPro, MacBookAir, MacPro, AppleTV1,1, AirPort\&.
451 Don\'t map filesystem ACLs to effective permissions\&.
456 Disables debugging\&.
459 \-sleep \fI[number]\fR
463 hours before disconnecting clients in sleep mode\&. Default is 10 hours\&.
466 \-signature { user:<text> | auto }
468 Specify a server signature\&. This option is useful while running multiple independent instances of afpd on one machine (eg\&. in clustered environments, to provide fault isolation etc\&.)\&. Default is "auto"\&. "auto" signature type allows afpd generating signature and saving it to
469 :ETCDIR:/afp_signature\&.conf
470 automatically (based on random number)\&. "host" signature type switches back to "auto" because it is obsoleted\&. "user" signature type allows administrator to set up a signature string manually\&. The maximum length is 16 characters\&.
472 \fBExample.\ \&Three server definitions using 2 different server signatures\fR
478 first \-signature user:USERS
479 second \-signature user:USERS
480 third \-signature user:ADMINS
487 First two servers will appear as one logical AFP service to the clients \- if user logs in to first one and then connects to second one, session will be automatically redirected to the first one\&. But if client connects to first and then to third, will be asked for password twice and will see resources of both servers\&. Traditional method of signature generation causes two independent afpd instances to have the same signature and thus cause clients to be redirected automatically to server (s)he logged in first\&.
490 \-volnamelen \fI[number] \fR
492 Max length of UTF8\-MAC volume name for Mac OS X\&. Note that Hangul is especially sensitive to this\&.
498 73: limit of Mac OS X 10\&.1
499 80: limit for Mac OS X 10\&.4/10\&.5 (default)
506 Mac OS 9 and earlier are not influenced by this, because Maccharset volume name is always limitted to 27 bytes\&.
508 .SH "LOGGING OPTIONS"
510 \-setuplog "\fI<logtype> <loglevel> [<filename>]\fR"
512 Specify that any message of a loglevel up to the given
514 should be logged to the given file\&. If the filename is ommited the loglevel applies to messages passed to syslog\&.
516 By default (no explicit
518 and no buildtime configure flag
519 \fB\-\-with\-logfile\fR) afpd logs to syslog with a default logging setup equivalent to
520 \fB"\-setuplog default log_info\fR"\&.
523 \fB\-\-with\-logfile\fR
525 \fI/var/log/netatalk\&.log\fR) or
526 \fB\-\-with\-logfile=somefile\fR
527 afpd defaults to a setup that is equivalent to "\fB\-setuplog default log_info [\fR\fB\fInetatalk\&.log|somefile]\fR\fR"\&.
529 logtypes: Default, AFPDaemon, Logger, UAMSDaemon
531 loglevels: LOG_SEVERE, LOG_ERROR, LOG_WARN, LOG_NOTE, LOG_INFO, LOG_DEBUG, LOG_DEBUG6, LOG_DEBUG7, LOG_DEBUG8, LOG_DEBUG9, LOG_MAXDEBUG
537 .nr an-no-space-flag 1
544 The config is case\-ignoring
548 \fBExample.\ \&Useful default config\fR
554 \- \-setuplog "default log_info /var/log/afpd\&.log"
560 \fBExample.\ \&Debugging config\fR
566 \- \-setuplog "default log_maxdebug /var/log/afpd\&.log"
572 \fBExample.\ \&afpd logging to different files\fR
578 \- \-setuplog "default log_info /var/log/afpd\&.log" \e
579 \-setuplog "UAMSDaemon log_maxdebug /var/log/uams\&.log"
586 \-unsetuplog "\fI<logtype> [<filename>]\fR"
590 specifying any string as filename is sufficient for the config parser to distinguish between requests to disable syslog logging or file\-logging\&.
592 \fBExample.\ \&Disable afpd logging set at build-time from configure\fR
598 \- \-unsetuplog "default \-"
606 These options are useful for debugging only\&.
608 \-tickleval \fI[number]\fR
610 Sets the tickle timeout interval (in seconds)\&. Defaults to 30\&.
613 \-timeout \fI[number]\fR
615 Specify the number of tickles to send before timing out a connection\&. The default is 4, therefore a connection will timeout after 2 minutes\&.
619 \fBExample.\ \&afpd.conf default configuration\fR
625 \- \-tcp \-noddp \-uamlist uams_dhx\&.so,uams_dhx2\&.so \-nosavepassword
631 \fBExample.\ \&afpd.conf MacCyrillic setup / UTF8 unix locale\fR
637 \- \-maccodepage mac_cyrillic \-unixcodepage utf8
643 \fBExample.\ \&afpd.conf setup for Kerberos V auth with newline escaping\fR
649 \- \-uamlist uams_dhx\&.so,uams_dhx2\&.so,uams_guest\&.so,uams_gss\&.so \e
650 \-k5service afpserver \-k5keytab /path/to/afpserver\&.keytab \e
651 \-k5realm YOUR\&.REALM \-fqdn your\&.fqdn\&.namel:548
657 \fBExample.\ \&afpd.conf letting afpd appear as three servers on the net\fR
663 "Guest Server" \-uamlist uams_guest\&.so \-loginmesg "Welcome guest!"
664 "User Server" \-uamlist uams_dhx2\&.so \-port 12000
665 "special" \-ddp \-notcp \-defaultvol <path> \-systemvol <path>
674 \fBAppleVolumes.default\fR(5),
675 \fBafp_signature.conf\fR(5),