RFC 5781

The rsync URI Scheme

πŸ“… published February 2010, from ietf

1. Introduction ✨

okay so URIs were first defined in RFC 2396, but that one got obsoleted by RFC 3986 [RFC3986] πŸ’…. The rules for registering new URI schemes live in RFC 4395 [RFC4395]. The rsync utility does fast incremental file transfer [rsync], and this doc is where we define a URI scheme for it πŸ¦‹.

2. rsync URI registration πŸŽ€

this section is the registration template for the rsync URI scheme, following RFC 4395 [RFC4395]. it's for the rsync protocol running over TCP as its transport. other transports, like rsync over SSH, are NOT covered by this scheme πŸ™ˆ.

  • URI scheme name: rsync
  • Status: provisional
  • URI scheme syntax: an rsync URI describes a source or destination for the rsync application, and it includes a hostname, a path, and optionally a user and a port. the generic form looks like this:
rsync://[user@]host[:PORT]/Source

the rsync URI follows the general syntax from RFC 3986 and gets defined with the following ABNF [RFC5234]:

rsyncuri        = "rsync:" hier-part
                  ; See RFC 3986 for the definition
                  ; of hier-part
  • URI scheme semantics: an rsync URI can be used as either a source or a destination for rsync. if you don't specify a port, it defaults to 873 ✨.
  • Encoding considerations: since rsync URIs are built out of standard RFC 3986 pieces, there are no special encoding considerations 🧚.
  • Applications/protocols that use this URI scheme name: the only app that uses rsync URIs is rsync πŸ’œ.
  • Interoperability considerations: only one application is expected to use these, so this scheme should have very few interop concerns 🌸.
  • Security considerations: Section 7 of RFC 3986 covers the general security stuff for URI schemes. the concerns about reliability and consistency, malicious construction, rare IP address formats, sensitive information, and semantic attacks ALL apply to rsync URIs 😭. the transcoding concerns don't apply. and given how rsync gets used in the wild, most apps won't mind if the data behind an rsync URI changes over time 🫢.
  • Contact: Russ Housley <housley@vigilsec.com>
  • Author/Change controller: Russ Housley <housley@vigilsec.com>
  • References: see Section 5.

3. IANA Considerations 🌈

IANA has registered the rsync provisional URI scheme using the template in Section 2 πŸ”₯.

4. Security Considerations πŸ’€

ngl this part is so important 😭. Section 7 of [RFC3986] has the big list of security considerations for URIs. the reliability and consistency, malicious construction, rare IP address formats, sensitive information, and semantic attack concerns ALL apply to rsync URIs. transcoding does not. honestly, the rsync URI scheme doesn't have any super unique security concerns of its own ✨.

the security considerations of the rsync protocol itself are NOT covered in this document. go look elsewhere for those, bestie πŸ™ˆ.

5. Normative References πŸ“š

[RFC3986]  Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform
           Resource Identifier (URI): Generic Syntax", STD 66, RFC
           3986, January 2005.

[RFC4395]  Hansen, T., Hardie, T., and L. Masinter, "Guidelines and
           Registration Procedures for New URI Schemes", BCP 35, RFC
           4395, February 2006.

[RFC5234]  Crocker, D., Ed., and P. Overell, "Augmented BNF for
           Syntax Specifications: ABNF", STD 68, RFC 5234, January
           2008.

6. Informative References 🧚

[rsync]  http://rsync.samba.org/.

Authors' Addresses πŸ¦‹

Samuel Weiler
SPARTA, Inc.
7110 Samuel Morse Drive
Columbia, Maryland  21046
US

EMail: weiler@tislabs.com


Dave Ward
Juniper Networks
1194 North Mathilda Avenue
Sunnyvale, California  94089-1206
US

EMail: dward@juniper.net


Russ Housley
Vigil Security, LLC
918 Spring Knoll Drive
Herndon, Virginia  20170
US

EMail: housley@vigilsec.com
πŸ“¦ where this page comes from