manpagedescription()
The rsyncd.conf file is the runtime configuration file for rsync when
-run with the -daemon option. When run in this way rsync becomes a
+run with the --daemon option. When run in this way rsync becomes a
rsync server listening on TCP port 873. Connections from rsync clients
are accepted for either anonymous or authenticated rsync sessions.
Any line beginning with a hash (#) is ignored, as are lines containing
only whitespace.
-Any line ending in a \e is "continued" on the next line in the
+Any line ending in a \ is "continued" on the next line in the
customary UNIX fashion.
The values following the equals sign in parameters are all either a string
rsync. The daemon must run with root privileges.
You can launch it either via inetd or as a standalone daemon. If run
-as a daemon then just run the command "rsync -daemon" from a suitable
+as a daemon then just run the command "rsync --daemon" from a suitable
startup script.
When run via inetd you should add a line like this to /etc/services:
- rsync 873/tcp
+quote(rsync 873/tcp)
-and a line something like this to /etc/inetd.conf:
+and a single line something like this to /etc/inetd.conf:
- rsync stream tcp nowait root /usr/bin/rsync rsyncd --daemon
+quote(rsync stream tcp nowait root /usr/bin/rsync rsyncd --daemon)
You will then need to send inetd a HUP signal to tell it to reread its
config file.
Note that you should not send the rsync server a HUP signal to force
-it to reread the /etc/rsyncd.conf. The file is re-read on each client
+it to reread the tt(/etc/rsyncd.conf). The file is re-read on each client
connection.
manpagesection(GLOBAL OPTIONS)
dit(bf(lock file)) The "lock file" option specifies the file to use to
support the "max connections" option. The rsync server uses record
locking on this file to ensure that the max connections limit is not
-exceeded. The default is /var/run/rsyncd.lock
+exceeded. The default is tt(/var/run/rsyncd.lock).
dit(bf(syslog facility)) The "syslog facility" option allows you to
specify the syslog facility name to use when logging messages from the
local1, local2, local3, local4, local5, local6 and local7. The default
is daemon.
+dit(bf(socket options)) This option can provide endless fun for people
+who like to tune their systems to the utmost degree. You can set all
+sorts of socket options which may make transfers faster (or
+slower!). Read the man page for the setsockopt() system call for
+details on some of the options you may be able to set. By default no
+special socket options are set.
+
enddit()
dit(bf(path)) The "path" option specifies the directory in the servers
filesystem to make available in this module. The rsync server will
chroot to this path before starting the file transfer with the
-client. You must specify this option for each module in /etc/rsyncd.conf.
+client. You must specify this option for each module in tt(/etc/rsyncd.conf).
dit(bf(read only)) The "read only" option determines whether clients
will be able to upload files or not. If "read only" is true then any
file transfers to and from that module should take place as. This
complements the "uid" option. The default is the group "nobody".
+dit(bf(exclude)) The "exclude" option allows you to specify a space
+separated list of patterns to add to the exclude list. This is
+equivalent to the client specifying these patterns with the --exclude
+option. Note that this option is not designed with strong security in
+mind, it is quite possible that a client may find a way to bypass this
+exclude list. If you want to absolutely ensure that certain files
+cannot be accessed then use the uid/gid options in combination with
+file permissions.
+
+dit(bf(exclude from)) The "exclude from" option specifies a filename
+on the server that contains exclude patterns, one per line. This is
+equivalent to the client specifying the --exclude-from option with a
+equivalent file. See also the note about security for the exclude
+option above.
+
dit(bf(auth users)) The "auth users" option specifies a comma
and space separated list of usernames that will be allowed to connect
to this module. The usernames do not need to exist on the local
bf(You should make sure that the secrets file is not readable by anyone
other than the system administrator.) There is no default for the
"secrets file" option, you must choose a name (such as
-/etc/rsyncd.secrets).
+tt(/etc/rsyncd.secrets)).
dit(bf(hosts allow)) The "hosts allow" option allows you to specify a
list of patterns that are matched against a connecting clients
enddit()
+manpagesection(AUTHENTICATION STRENGTH)
+
+The authentication protocol used in rsync is a 128 bit MD4 based
+challenge response system. Although I believe that no one has ever
+demonstrated a brute-force break of this sort of system you should
+realise that this is not a "military strength" authentication system.
+It should be good enough for most purposes but if you want really top
+quality security then I recommend that you run rsync over ssh.
+
+Also note that the rsync server protocol does not currently provide any
+encryption of the data that is transferred over the link. Only
+authentication is provided. Use ssh as the transport if you want
+encryption.
+
+Future versions of rsync may support SSL for better authentication and
+encryption, but that is still being investigated.
+
manpagesection(EXAMPLES)
A simple rsyncd.conf file that allow anonymous rsync to a ftp area at
-/home/ftp would be:
+tt(/home/ftp) would be:
verb(
[ftp]
- path = /home/ftp
- comment = ftp export area
+ path = /home/ftp
+ comment = ftp export area
)
A more sophisticated example would be:
-verb(
-uid = nobody
-gid = nobody
-max connections = 4
-syslog facility = local5
+uid = nobody nl()
+gid = nobody nl()
+max connections = 4 nl()
+syslog facility = local5 nl()
-[ftp]
+verb([ftp]
path = /var/ftp/pub
comment = whole ftp area (approx 6.1 GB)
The /etc/rsyncd.secrets file would look something like this:
-verb(
-tridge:mypass
+tridge:mypass nl()
susan:herpass
-)
manpagefiles()