zoukankan      html  css  js  c++  java
  • rsync 3.1.3

    rsyncd.conf

    2018年1月28日


     


    rsyncd配置(5)

     

    2018年1月28日

    姓名

    rsyncd.conf配置rsync守护进程的方式在file for

    概要

    rsyncd.conf

    描述

    的rsyncd.conf文件是rsync whenrun运行配置文件作为一个rsync守护进程。

    的rsyncd.conf文件控制认证、访问、测井和模块。

    文件格式

    The file consists of modules and parameters. A module begins with thename of the module in square brackets and continues until the nextmodule begins. Modules contain parameters of the form "name = value".

    该文件是基于行的--也就是说,每个换行符终止线representseither评论,模块的名称或参数。

    只有第一个等号在参数是重要的。空白之前或之后第一个等号是丢弃。领导、跟踪和internalwhitespace模块和参数名称是无关紧要的。领导andtrailing空格在参数值被丢弃。内部whitespacewithin参数值保留逐字。

    任何线开始与哈希(#)是不容忽视的,如线containingonly空白。(如果一个哈希时比其他任何leadingwhitespace,后被认为是线的一部分内容。)

    任何行结束在一个“继续”在下一行中常用的UNIX时尚。

    在等号后的参数值都是字符串(没有引号需要)或一个布尔值,它可作为是/否,0/1,或假。在布尔值的情况下不显著,但preservedin字符串值。

    启动rsync守护进程

    rsync守护进程启动指定——守护选择torsync

    守护进程必须以root权限运行如果您希望使用chroot,与端口编号在1024(这是默认的873),或setfile所有权。否则,它必须有权限读写相应的数据,日志和锁文件。

    你可以通过inetd,作为一个独立的守护进程,或从rsync客户端通过远程shell。如果运行作为一个独立的程序只运行命令”——rsync守护进程“从一个合适的启动脚本。

    通过inetd运行时你应该添加这样的线/等/服务:

      rsync           873/tcp
    

    一行像这样的东西/etc/inetd.conf:

      rsync   stream  tcp     nowait  root   /usr/bin/rsync rsyncd --daemon
    

    取代“/usr/bin/vi rsync”的路径,在你安装系统在rsync。你将需要发送一个信号告诉它HUP inetd的配置文件toreread。

    你应该注意把rsync守护进程一个hup信号削力重读rsyncd.conf文件文件重新阅读每clientconnection。

    全局参数

    文件中的第一个参数(在[模块]头)是全局参数。rsync也允许使用“[全球]“模块名称来表示一个或多个全局参数的一部分(名称必须是小写)。

    你还可以包括在所提供的值将覆盖默认配置文件参数的情况下,全球的任何模块参数。

    你可以使用引用环境变量的参数值。字符串参数将有% %参考VaR扩展尽可能晚(当字符串是在程序中使用),允许变量thatrsync套在连接时使用,如rsync_user_name。非字符串参数(如真/假设置)扩展阅读时从配置文件。如果变量不存在于环境中的,或如果一个字符序列不是有效的引用(如一个未成对的百分号),原就是通过不变。这有助于向后兼容性和安全(如扩大一个不存在的% Var%在非常不安全的路径,路径可能会导致一个空字符串)。插入文字成一个最安全的方法是使用%。

    公告文件
    此参数允许你指定一个“一天”的消息显示在每个连接的客户。这通常包含网站信息和任何法律声明。的defaultis没有motd文件。这可以被--dparam=motdfile=FILE命令行选项启动守护进程时。
    PID文件
    This parameter tells the rsync daemon to writeits process ID to that file. 如果文件已经存在,该rsyncdaemon将中止而不是覆盖文件。这可以被--dparam=pidfile=FILE命令行选项启动守护进程时。
    港口
    您可以重写默认端口守护进程将听由指定此值(默认为873)。这是如果守护进程是由inetd的忽视,并取代——端口命令行选项
    地址
    您可以重写默认的IP地址daemonwill侦听指定此值。This is ignored if the daemon isbeing run by inetd, and is superseded by the-地址命令行选项
    套接字选项
    这个参数可以为那些愿意调整他们的系统最大程度提供了无尽的乐趣。你可以设置各种套接字选项可以使传输得更快(齿轮!)阅读的手册页。setsockopt()系统调用的详细一些你可以设置选项。默认情况下没有特殊设置套接字选项。这些设置也可以specifiedvia的sockopts……命令行选项
    听积压
    您可以重写默认值时,thedaemon侦听连接积压。它的默认值为5。

    模块参数

    当你要定义一个模块的全局参数,每个模块的出口目录树作为一个象征性的名字。模块输出的方括号[模块指定模块名称]其次,模块的参数,模块名称不能包含斜线和右方括号。如果名称包含空格,每个内部的空白序列将会改变成一个单一的空间,而前导或尾随空格将被丢弃。另外,名称不能“全球”,确切的名字所表示的全局参数(见上文)。

    随着全球的参数,您可以使用引用环境变量的参数值。看到全局参数的更多细节部分。

    评论
    此参数指定一个描述stringthat旁边显示模块的名字时,客户获得一系列可用的模块。默认是没有评论。
    路径
    此参数指定的目录中daemon'sfilesystem提供这个模块。您必须指定这个参数,每个模块rsyncd.conf

    也许你基地的路径的值从一个环境变量的变量名%的迹象时。你甚至可以参考一variablethat设置rsync当用户连接。例如,这将使用授权用户的名称的路径:

        path = /home/%RSYNC_USER_NAME% 
    

    它是好的如果路径包括内部空间--他们将retainedverbatim(这意味着你不应该试图逃走)。如果你的finaldirectory有空格(这是不是你的愿望来解决),附加一个斜线的路径来避免失去trailingwhitespace。

    使用chroot
    如果“使用chroot”是真的,rsync守护进程将chrootto“路径”之前,从客户端的文件传输。这有好处的额外保护免受可能的实现securityholes,但它需要超级用户权限不足,无法跟踪符号链接是绝对的或在新的根路径,以及复杂的保存用户和组的名称(见下文)。

    作为一个额外的安全功能,您可以指定一个点的目录模块中的“路径”,指出在chroot应该发生。这让rsyncto运行在chroot与非”/“路径上的传输的层次。这样做防意外库加载(因为这些absolutepaths内不会转移层次除非你拥有一个unwisepathname),并让你建立图书馆,在传递。例如,指定“/无功/同步/。/ Module1”将chroot到/ var / rsync”目录和设置在chroot路径“/模块”。如果你有略点目录,chroot会用全路径,路径和内部chroot就“/”。

    当“使用chroot”和“守护chroot”是错误的,或在chroot路径的“使用chroot”不是“/”,rsync会:(1)显示链接的默认安全的原因(见“显示符号链接”的方式将thisoff,但只有当你信任你的用户),(2)替代领导斜线绝对路径模块的路径(所以选项如--备份目录——比较DeST解释,等一个绝对路径asrooted模块中的“路径”目录),和(3)装饰”..“路径元素fromargs如果rsync认为他们逃逸的模块层次结构。“使用chroot”是真正的默认,是更安全的选择(如果模块不是只读的)。

    当此参数启用,“数字标识”选项将默认被启用(禁用名称查找)。下面是chroot需要成功,名字查找。

    If you copy library resources into the module's chroot area, youshould protect them through your OS's normal user/group or ACL settings (toprevent the rsync module's user from being able to change them), and thenhide them from the user's view via "exclude" (see how in the discussion ofthat parameter). At that point it will be safe to enable the mapping of usersand groups by name using the "numeric ids" daemon parameter (see below).

    注意,你可以设置自定义的用户/组的信息thechroot地区,不同于正常的系统。例如,你可以将用户和组的列表。

    守护chroot
    此参数指定路径的守护willchroot开始前与客户沟通。模块路径(和任何“usechroot”设置)将这一相关。这让你选择,如果你想用整个守护进程(这个设置),只是将要用(“使用chroot”),或两者。记住,“守护chroot”地区可能需要不同的操作系统/ lib /等文件安装允许后台功能。默认情况下,程序运行没有任何chrooting。
    数字标识
    启用此参数禁用映射用户和组的名字为当前后台模块。这阻止恶魔试图加载任何用户/组的相关文件或库。这使使转移表现为如果客户通过了--数字标识命令行选项。默认情况下,此参数可用于交互模块和非交互模块禁用。记住UID / GID保存需要模块运行的根(见“uid”)或“假超”进行配置。

    chroot允许模块不应该有此参数启用除非you'vetaken步骤以确保模块具有必要的资源,它需要翻译的名字,并为用户改变这些资源是不可能的。这包括代码能够调用功能getpwuid()getgrgid()getpwname(),和getgrnam()你应该测试什么库和配置文件都需要你的操作得到那些设置在开始试验在rsync名称映射。

    显示符号链接
    这个参数告诉rsync modifyall符号链接的一样(非守护进程的影响)——显示链接命令行选项(使用方法见下文)。这将有助于保护您的文件从用户欺骗当你的后台模块是可写的。当“使用chroot”是以“/”里面的一个chroot路径默认是禁用的,或者“守护chroot”,否则是启用。

    如果禁用此参数在一个守护进程,不是只读的,有技巧,用户可以玩到accessdaemon上传链接排除的项目(如果你的模块有),和,如果“使用chroot”是关闭的,甚至可以欺骗rsync显示或更改数据是模块的路径之外(如访问权限允许)。

    路rsync禁用符号的使用是每一个字符串前缀与“/ rsyncd毁了/”。这可以防止链接被作为长期作为该目录不存在。当此参数启用,rsync将拒绝运行如果路径是一个目录或链接到目录。当使用“显示符号链接”参数在chroot环境方面有“/”里面的一个目录路径,你应该添加“/ rsyncd毁了/“排除设置模块,用户可以不去创造它。

    注:rsync不会尝试验证任何预先存在的符号链接的模块的层次是像你希望的那样安全(除非,当然,它只是复制整个层次结构)。如果你设置一个新的地区或局部添加一个rsyncdaemon符号链接,你可以手动保护yoursymlinks被滥用的前缀“/ rsyncd毁了/”开始每符号的价值。这是在支持一个Perl脚本directoryof源代码命名为“显示符号链接”可用于添加或从你removethis前缀符号。

    当禁用此参数在可写模块和“使用chroot”关闭(或在chroot路径不是“/”),输入符号链接将被修改掉一个斜杠和删除“..”路径元素,rsync认为将使链接的module'shierarchy逃跑。有棘手的工作方式在这,虽然,所以你最好相信你的用户,如果您选择此参数组合。

    字符集
    这指定设置在存储模块的文件名的字符的名称。如果客户端使用——iconv选项,守护进程将使用价值的“charset”参数无论人物设置客户端通过。这允许后台支持的字符集转换在chroot模块没有额外的文件thechroot地区,同时确保名称的翻译是一个consistentmanner做。如果“charset”参数没有设置,这——iconv选择isrefused,就像“iconv”已通过指定的“拒绝”选项。

    如果你想强迫用户总是使用——iconv一particularmodule,添加“没有iconv”到“拒绝选项”参数。记住,这将限制你的模块非常新的rsync客户。

    最大连接数
    此参数允许你指定你会允许同时连接的最大数目。任何客户端连接时已经达到允许的最大值会收到口信告诉他们稍后。默认值是0,这意味着没有限制。负值禁用模块。参见“锁定文件”参数。
    日志文件
    When the "log file" parameter is set to a non-emptystring, the rsync daemon will log messages to the indicated file ratherthan using syslog. This is particularly useful on systems (such as AIX)wheresyslog()对于用程序不工作。文件打开之前chroot()是所谓的,允许它被放置在转移。如果这个值被设置在每一个模块的基础上,而不是ofglobally,全局日志仍然会包含任何授权failuresor配置文件错误信息。

    如果守护进程无法打开指定的文件,它会回落居住的失败日志和输出一个错误。(注:无法打开指定的日志文件的应用是一个致命的错误。)

    这个设置可以被使用--log-file=FILE--dparam=logfile=FILE命令行选项。前overridesall守护进程的所有模块设置日志文件参数。后者为所有模块设置守护进程的日志文件,默认情况下,它仍然允许模块重写默认设置。

    系统日志工具
    此参数允许你指定syslog设施名称时要使用的测井信息thersync守护。你可以使用任何标准的syslog设施名称,定义你的系统。常见的名字认证,authpriv,cron守护进程,FTP,克恩,车牌识别,邮件、新闻、安全、日志、用户、UUCP,local0,近郊,分析,local3,local4,local5,local6和local7。的defaultis守护。这个设置没有效果,如果“日志文件”设置为非空字符串(可以设置在每个模块的设置,或继承于全局设置)。
    日志标签
    此参数允许您指定日志信息时使用rsync守护进程syslogtag。默认是“rsyncd”。这个设置没有效果,如果“日志文件”设置为非空字符串(可以设置在每个模块的设置,或继承于全局设置)。

    For example, if you wanted each authenticated user's name to beincluded in the syslog tag, you could do something like this:

        syslog tag = rsyncd.%RSYNC_USER_NAME%
    
    马克斯冗长
    此参数允许您控制最大数量的详细信息,你会允许后台生成(从信息到日志文件)。默认值是-1,它允许客户端请求一个级别的冗长。

    这也会影响用户的能力要求更高水平的信息——调试登录中.如果最大值是2,那么没有信息和/或调试的价值是高于所设定的- VVwill be honored by the daemonin its logging. To see how high of a verbosity level you need to accept for aparticular info/debug level, refer to "rsync --info=help" and "rsync --debug=help".For instance, it takes max-verbosity 4 to be able to output debug TIME2 and FLIST3.

    锁定文件
    此参数指定的文件使用支持“最大连接数”参数。The rsync daemon uses recordlocking on this file to ensure that the max connections limit is notexceeded for the modules sharing the lock file.The default is/var/run/rsyncd.lock
    只读
    这个参数决定了客户们也可以上传文件或不。如果“只读”是真的话,anyattempted上传失败。如果“只读”是假的,然后上传是可能的如果在守护身边的文件权限允许他们。所有模块都是只读的defaultis。

    注意“授权用户”可以重写此设置在每个用户的基础。

    write only
    这个参数决定了客户们也可以下载文件或不。如果“只写”是真的那么anyattempted下载会失败。如果“只写”是假的,然后downloadswill可能如果在守护身边的文件权限允许他们。这个参数默认是被禁用的。

    Helpful hint: you probably want to specify "refuse options = delete" for awrite-only module.

    列表
    此参数确定该模块的过程当客户端请求一个可用模块的列表。此外,如果这是假的,守护进程会假装的模块不existwhen客户端的主机允许”或“hosts deny”试图访问被拒绝。意识到如果“反向查找”被禁用全局而启用的模块,产生的反向查找一个潜在的客户可能仍然显示控制DNS客户端,打一个现有的模块,默认为模块被列在单子上。
    UID
    此参数指定要从模块应该发生在daemonwas运行root用户名或用户ID thatfile转移。结合“GID”参数决定whatfile权限是可用的。当由一个超级用户默认是切换到系统的“无人”的用户。对于一个非超级用户默认是不试图改变用户。又见“GID”参数。

    的rsync_user_name环境变量可用于请求rsync RUNAS授权用户。例如,如果你想要一个rsync运行为sameuser,收到rsync认证,这种设置是有用的:

        uid = %RSYNC_USER_NAME%
        gid = * 
    
    GID
    此参数指定一个或多个组名称/标识将用于访问模块时。第一个是默认组,任何额外的设置为补充组。你也可以指定一个“*”作为第一gid列表中,将所有正常组为转移的用户所取代(见“uid”)。当由一个超级用户默认是将你的操作系统的“人”(或“nogroup”)没有一些其它的辅助组。对于一个非超级用户默认是不改变团队的属性(事实上,你的操作系统可能不允许非超级用户尝试改变他们的组设置)。
    守护进程的UID
    此参数指定一个UID下守护进程运行。守护进程通常是作为root用户,当这是左不左不变的用户。又见“uid”参数。
    守护GID
    此参数指定一个GID下守护进程运行。守护进程通常运行组根,当这是左设置,集团保持不变。又见“GID”参数。
    假超
    Setting "fake super = yes" for a module causes thedaemon side to behave as if the——假-好的被指定的命令行选项。这允许一个文件的完整的属性是有后台程序实际运行的根storedwithout。
    滤波器
    守护进程都有自己的过滤器链,决定哪些文件可以让客户端访问。这个链不发送到客户端,客户端可以独立于任何筛选器指定。排除的文件过滤器链(由守护进程守护进程排除files) are treated as non-existentif the client tries to pull them, are skipped with an error message if theclient tries to push them (triggering exit code 23), and are never deleted fromthe module. You can use daemon filters to prevent clients from downloading ortampering with private administrative files, such as files you may add tosupport uid/gid name translations.

    守护过滤器链是建立从“过滤”、“包括”、“包含”、“排除”、“排除”参数,在优先顺序。anchoredpatterns锚定在该模块的根。为了防止访问整个子树,例如,“秘密”,你必须排除一切thesubtree;最简单的方法来做到这一点是有三星模式如“秘密”***”。

    “过滤器”参数以空格分隔的守护程序的过滤规则列表,但它是足够聪明,知道不分令牌在内部空间不规则(如“/富/酒吧”解析为两条规则)。您可以指定一个或多个文件的合并使用正常的语法规则。只有一个“过滤器”参数可以指定配置文件中的模块,所以把所有的规则,你想在一个单一的参数。请注意,每个目录文件的合并规则不提供尽可能多的保护作为全球规则,但它们可以用来使删除客户端下载操作过程中,如果每个目录合并在传输文件是和客户要求他们用于工作。

    排除
    此参数以空格分隔daemonexclude模式列表。作为与客户——排除选择,模式可以胜任“-”或“”明确表示排除/包括。只有一个“排除”参数可以适用于一个给定的模块。看到“过滤器”参数描述如何排除的文件影响的守护。
    包括
    使用“包括”覆盖效果的“排除”参数。只有一个“包括”参数可以适用于一个给定的模块。请描述如何排除的文件影响守护的“过滤器”参数。
    排除
    此参数指定一个文件一样包含进程排除模式的守护进程的名称,每行一个。只有一个“排除”参数可以适用于一个给定的模块;如果你有multipleexclude文件,您可以指定他们作为合并文件在“过滤器”参数。请描述如何排除filesaffect守护“过滤器”参数。
    包括从
    “排除”的一个守护进程includepatterns文件模拟。只有一个“包括”参数可以适用于一个给定的模块。看到“描述如何排除的文件影响thedaemon滤波器参数。
    输入chmod
    此参数允许你指定一套ofcomma分离chmod字符串,将影响allincoming文件权限(被守护进程接收的文件)。Thesechanges happen after all other permission calculations, and this willeven override destination-default and/or existing permissions when theclient does not specify——烫发看到的描述——chmodrsync选项和chmod(1)对字符串的格式信息的联机帮助页。
    即将离任的chmod
    此参数允许你指定一套ofcomma分离chmod字符串,将影响alloutgoing文件权限(即被发送从后台文件)。这些变化发生,使得发送权限似乎不同,那些存储在文件系统本身。例如,你coulddisable组写权限的服务器时,它似乎在给客户看的描述。——chmodrsync选项和chmod(1)对字符串的格式信息的联机帮助页。
    授权用户
    此参数指定一个逗号和/或授权规则的空间separatedlist。在其最简单的形式,你的usernamesthat列表将允许连接这个模块。用户不需要在本地系统的存在。规则可以包含通配符,壳就会在客户端提供的认证用户名。如果“授权用户”设置客户端然后将挑战连接到电源模块的ausername和密码。挑战-应答认证协议用于交换。平原textusernames和密码都存储在文件中指定的“秘密文件”参数。默认是所有用户可以连接无密码(这就是所谓的“匿名rsync”)。

    除了用户名匹配,您可以指定组名匹配通过“@ 'prefix。使用组匹配时,认证的用户名必须在系统区域的用户,也会被认为是无组织的成员。例如,指定“@ rsync”匹配的认证用户如果指定用户是rsync组成员。

    最后,选项可以指定后冒号(:)。该选项允许你“否认”的用户或组,设置访问“RO”(只读),或将进入“刻录”(读/写)。设置一个授权规则具体RO / RW设置overridesthe模块的“只读”设置。

    一定要把规则中的顺序来进行匹配,因为停在第一个匹配的用户或组,这是唯一的auththat检查。例如:

      auth users = joe:deny @guest:deny admin:rw @rsync:ro susan joe sam 
    

    在上面的规则,用户乔将被拒绝进入,无论什么。任何用户组中的“客人”也拒绝访问。在读/用户“admin”getsaccess写模式,但只有管理员用户不在集团的“客人”(因为管理员用户匹配规则将永远无法到达用户如果是圈内的“客人”)。是谁在集团“rsync”会只读访问其他用户。最后,用户苏珊,乔,和山姆,RO / RW设置,只要用户不匹配先前组匹配规则。

    如果你需要有一个空间指定一个用户或组的名称,开始你的listwith逗号显示列表应只Split(thoughleading和尾随空格也将被删除,和空项都忽略)。例如:

      auth users = , joe:deny, @Some Group:deny, admin:rw, @RO Group:ro 
    

    看到的秘密文件描述你如何可以每用户passwordsas以及每组密码。这也解释了用户如何authenticateusing用户密码或(适用时)的一组密码,这取决于什么样的规则是被认证。

    又见一节题为“使用rsync-daemon特征通过remoteshell连接”远程同步(1)对如何处理anrsyncd.conf-level用户名不同于当用遥控器外壳连接到一个远程shell levelusername rsync守护进程的信息。

    秘密文件
    此参数指定一个文件名包含用户名:密码和/或@组名:密码对用于authenticatingthis模块。本文件仅供参考如果“授权用户”参数指定。该文件是基于行包含一个名字:密码对珍珠岩。任何线都有一个哈希(#)作为线路上的第一个字符是一个评论,跳过。密码可以包含任何人物警告说,许多操作系统限制密码长度是可以在客户端类型的,所以你可能会发现密码超过8characters不工作。

    使用特定组的线只时的相关模块beingauthorized使用匹配”“GroupName”规则。当这种情况发生时,用户可授权通过“用户名:密码线”或“@组:用于触发认证组密码”。

    它是你的什么样的密码项你想包括,eitherusers,组,或两者。使用组规则中“授权用户”不需要你指定的一组密码,如果你不想使用sharedpasswords。

    没有默认的“秘密文件”参数,你必须选择一个名称(如/etc/rsyncd.secrets)。该文件必须通常不readableby“其他”;看到“严格模式”。如果文件找不到或是拒绝,一个“用户授权”模块将有可能nologins。

    严格的模式
    这个参数决定是否许可的秘密文件将被检查。如果“严格模式”的话,那么秘密文件不能被任何用户ID是可读的除了一个rsync守护进程下运行。如果“严格模式”是假的,不进行检查。默认的是真的。这个参数添加到容纳rsync运行于Windows操作系统。
    允许的主机
    该参数允许指定以逗号或空格分隔的模式,与connectingclient的主机名和IP地址。如果模式都不匹配,然后连接被拒绝。

    每一个模式可以有五种形式:

    • 一个虚线的形式ABCD十进制的IPv4地址,或一个IPv6地址的形成:B C D E F::::在这种情况下,输入机器的IP地址必须完全匹配。
    • 地址/掩码的形式ipaddr / N ipaddr是IP地址和子网掩码N是在一位数。与屏蔽的IP地址将被允许在所有的IP地址。
    • 地址/掩码的形式ipaddr / maskaddr哪里ipaddr是IP地址和maskaddr是十进制表示法用于IPv4子网掩码,或类似的协议,如:FFFF FFFF FFFF FFFF::::而不是/ 64。与屏蔽的IP地址将被允许在所有的IP地址。
    • 使用通配符的主机名模式。如果连接的IP地址的主机名(如通过反向查找确定)相匹配的通配符名称(使用相同的规则为正常的UNIX文件名匹配),允许客户端在。这只有当“反向查找”启用(默认)。
    • 一个主机名。一个普通的主机名是对连接的IP反向DNS匹配(如果“反向查找”功能),和/或给定的主机名的IP是对连接的IP地址匹配(如果“正向查找”功能,因为它是默认的)。一场比赛可以在。

    注意IPv6链路本地地址可以在地址规范有一个范围:

    fe80::1%link1
    fe80::%link1/64
    fe80::%link1/ffff:ffff:ffff:ffff::

    你也可以把“主人允许“单独”hosts deny”参数。如果指定两个参数将“允许的主机参数进行校核,比赛结果在客户端能够连接。“hosts deny”参数,然后检查和比赛意味着拒绝主机。如果主机不匹配的“允许登录”或“hosts deny”模式则允许连接。

    默认是不允许的主机参数,这意味着所有的主机都可以连接。

    hosts deny
    该参数允许指定以逗号或空格分隔的模式,与connectingclients主机名和IP地址。如果模式匹配,然后连接被拒绝。看到“允许登录”更多的信息参数。

    默认是没有“hosts deny”参数,这意味着所有的主机都可以连接。

    反查询
    控制是否守护进程执行反向把客户端的IP地址来确定它的主机名,这是用于“允许登录”/“hosts deny”检查和“%”日志逃脱。这是默认启用,但您可能希望禁用它,如果你知道查找不返回有用的结果,节省时间,在这种情况下,守护进程将使用“待定”代替。

    如果这个参数是全局启用(甚至默认),rsync执行thelookup当一个客户端连接,所以禁用这一模块将回避的查找。因此,您可能希望禁用它的全局和thenenable它需要的信息模块。

    正向解析
    控制是否执行了守护进程把在主机中指定的任何主机的允许/拒绝设置。默认情况下启用时,允许一个明确的主机名,就不会returnedby反向DNS连接IP的使用。
    忽略错误
    这个参数告诉rsyncd忽视I/O错误的守护在决定是否要运行的转移deletephase。通常rsync跳过删除步如果安义I/O错误时有发生为了防止灾难性的缺失由于临时资源短缺或其他I/O错误。在某些情况下,这是适得其反,所以你可以使用这个参数来关闭这一特性。
    忽略不可读
    这告诉rsync守护进程而言是不可读的用户文件。这是有用的公共档案,可能有一些不可读的文件中thedirectories,和系统管理员不希望这些文件能看到所有。
    传输日志
    此参数可以使每filelogging的下载和上传的格式有点类似于使用FTP守护程序。守护进程总是日志传输结束时,如果传输中止,没有提到将日志文件。

    如果你想自定义日志行,看到“日志格式”参数。

    日志格式
    此参数允许您指定的格式用于记录的文件传输时,传输启用了日志记录,格式是一个包含嵌入的单字符escapesequences前缀字符串字符(%)百分之一。一个可选的NumericField宽度也可以被指定的百分比和escapeletter之间(如“%-50n %8l %07p”)。此外,一个或多个撇号可以指定一个numericalescape之前显示的数值应更human-readable.the 3支持水平是相同的——人类可读的命令行选项,但默认是人类可读性被关闭。每个添加撇号水平增加(如“% % % F B酒店“)

    默认的日志格式是“‰% % % M H [一](%)f L”、和“%t [%P]”始终是前缀时使用“日志文件”参数。(一个Perl脚本,将总结这个默认的日志格式包括rsync源代码分布在“支持”的子目录:rsyncstats。)

    单字符转义,理解如下:

    • %的远程IP地址(只提供一个守护进程)
    • % b字节数实际转移
    • %B the permission bits of the file (e.g. rwxrwxrwt)
    • %的总大小的块校验收到的基础文件(仅当发送)
    • %的C完整的文件校验和如果它是已知的文件。年长的Rsync协议/版本、校验和腌了,因此是不是一个有用的价值(而不是显示在这种情况下)。用于文件输出校验,要么——校验选项必须在效果或文件必须被转移无咸校验和使用。看到-选择-校验一种选择算法选择
    • % f文件名(形式发送;无尾的“/”)
    • % G文件的GID(十进制)或“默认”
    • % h远程主机名(只提供一个守护进程)
    • 为我详细列表被更新
    • % L文件的字节长度
    • %L the string " -> SYMLINK", " => HARDLINK", or "" (where符号链接硬链接是一个文件名)
    • % m模块名称
    • %的M文件的最后修改时间
    • % N名(简称;尾”/“在目录)
    • %o the operation, which is "send", "recv", or "del." (the latter includes the trailing period)
    • %p the process ID of this rsync session
    • % P模块路径
    • %T当前日期时间
    • %的认证用户名或空字符串
    • %u文件的UID(十进制)

    For a list of what the characters mean that are output by "%i", see the--itemize-changes在manpage rsync的期权。

    值得注意的是,一些记录的输出变化与olderrsync版本说话的时候。例如,删除的文件只输出是rsync 2.6.4之前verbosemessages。

    超时
    此参数允许你覆盖客户选择I/O超时此模块。使用此参数可以确保rsync不会永远等待一个死了的客户。指定的秒timeoutis。值为零表示没有超时,默认。匿名rsync守护进程的一个很好的选择可能是600(赠送10分钟超时)。
    拒绝选项
    此参数允许你指定一个空间分隔的rsync命令行选项会被你拒绝,rsync守护进程列表。您可以指定完整的选项的名称,它的一个字母的缩写,或死卡字符串匹配多个选项。例如,这会拒绝——校验C)和所有的variousdelete选项:
    refuse options = c delete

    上述的理由拒绝所有删除的选项,选项意味着删除,和隐含期权拒绝就像明确的选择。作为一个额外的安全功能,拒绝“删除”,也不删除源文件当守护进程是发送者;如果你想latterwithout前者,而拒绝“删除”,拒绝一切删除模式无影响删除源文件

    When an option is refused, the daemon prints an error message and exits.To prevent all compression when serving files,you can use "dont compress = *" (see below)instead of "refuse options = compress" to avoid returning an error to aclient that requests compression.

    dont compress
    此参数允许你基于通配符的模式,不应该compressedwhen从恶魔拉文件selectfilenames(没有类似的参数存在治理推进文件到一个守护进程),在CPU使用率压缩是昂贵的,所以通常是好的不要压缩文件,不压缩,如已压缩文件。

    “不压缩”参数以空格分隔的列表不敏感的通配符模式案例。任何源文件名匹配一个模式不会被压缩在转移。

    看到我跳过compress参数在远程同步(一)对于未压缩的默认列表的文件后缀的联机帮助页。指定一个值“不压缩”参数变化时的守护是默认发件人。

    预转送exec后转送exec
    你可以指定一个命令是runbefore和/或转让后。如果预转送exec命令失败,才开始交易中止。任何输出从剧本到标准输出(到几KB)将显示给用户时终止,但NOTdisplayed如果脚本返回成功。任何输出的脚本在stderrgoes的守护进程的标准错误,这通常是被丢弃的(虽然看不拆的选择方式查看stderr输出,这可以帮助withdebugging)。

    下列环境变量将被设置,虽然一些针对预传输或传输环境后:

    • rsync_module_name:该模块所访问的名字。
    • rsync_module_pathThe Path构型:for the模块。
    • _ _ rsync的主机地址:访问的主机的IP地址。
    • _ _ rsync的主机名称:访问主机的名字
    • _使用rsync _ name:访问用户的名字(空如果没有用户)。
    • _ rsync PID:独特的number for this转移。
    • rsync _ request:(预传输只)由用户指定的模块/路径信息。值得注意的是,用户可以指定多个源文件中,所以请求可以像“模式/模式/ 1 2”,等等。
    • _ Arg # rsync: (pre-xfer only) The pre-request arguments are set in these numbered values. RSYNC_ARG0 is always "rsyncd", followed by the options that were used in RSYNC_ARG1, and so on. 将有价值的”,“表明选项和路径参数开始——这些包含类似的信息rsync_request,但与价值分离模块名称剥离。
    • rsync_exit_status:(后转送只)服务器端的出口价值。这将是0的成功运行,为一个错误,服务器生成一个正的值,或1如果rsync未能正常退出。注意,这发生在客户端错误目前不被发送到服务器端,所以这不是整体传递最终退出状态。
    • rsync_raw_status:(后转送只)原出口值waitpid()

    即使这个命令可以与一个特定的模块相关,它们运行的用户使用,开始了守护进程的权限(不是模块的UID和GID设置)没有任何chroot限制。

    配置指令

    There are currently two config directives available that allow a config file to incorporate the contents of other files: &include and &merge. Both allow a reference to either a file or a directory. They differ in how segregated the file's contents are considered to be.

    The &include directive treats each file as more distinct, with each one inheriting the defaults of the parent file, starting the parameter parsing as globals/defaults, and leaving the defaults unchanged for the parsing of the rest of the parent file.

    The &merge directive, on the other hand, treats the file's contents as if it were simply inserted in place of the directive, and thus it can set parameters in a module started in another file, can affect the defaults for other files, etc.

    When an &include or &merge directive refers to a directory, it will read in all the *.conf or *.inc files (respectively) that are contained inside that directory (without any recursive scanning), with the files sorted into alpha order. So, if you have a directory named "rsyncd.d" with the files "foo.conf", "bar.conf", and "baz.conf" inside it, this directive:

    // 目前有两个配置指令可用的配置文件与其它文件的内容:&include and &merge。Bothallow引用一个文件或一个目录。他们在不同的howsegregated文件的内容是。

    // 这个与包括指令将每个文件更加鲜明,每个oneinheriting的父文件的默认设置,启动参数parsingas globals/defaults,离开默认不变的解析,其余的父文件。

    // 这个与合并指令,另一方面,对文件的内容进行简单的插在阿西的指令,因此它可以在一个模块setparameters开始在另一个文件,可以影响其他文件的默认值,等等。

    // 当一个与包括与合并指令是指一个目录,它将记录所有* .conf*公司文件(分别),包含insidethat目录(不anyrecursive扫描),与文件分为α阶。所以,如果你有一个目

    // 录名为“rsyncd。D”和文件“foo conf”、“酒吧。会议”,和“巴兹conf”里面,这个指令:

        &include /path/rsyncd.d 

    将这套指令相同:

        &include /path/rsyncd.d/bar.conf
        &include /path/rsyncd.d/baz.conf
        &include /path/rsyncd.d/foo.conf 

    除了它调整的文件添加和从目录中删除。

    的优势与包括指令,你可以定义一个或moremodules在一个单独的文件,而不必担心副作用独立的模块文件。

    的优势与合并指令是可以加载配置snippetsthat可以分成多个模块的定义,你也可以设置 global值 会影响连接(如motd file),或 globals 会影响其他包含文件。

    例如,这是一个有效的/etc/rsyncd.conf文件:

        port = 873
        log file = /var/log/rsync.log
        pid file = /var/lock/rsync.lock
    
        &merge /etc/rsyncd.d
        &include /etc/rsyncd.d 

    这将合并任何 /etc/rsyncd.d/*.inc 文件(for global values that should stay in effect)包括任何 /etc/rsyncd.d/*.conf 文件(没有任何global-value cross-talk)。

    认证强度

    使用rsync的认证协议是一个128位的MD4 basedchallenge响应系统。这是相当弱的保护,虽然(至少一个强力的哈希算法公开的发现),如果你真的想要高质量的安全,那么我建议你runrsync ssh。(是的,未来版本的rsync将切换到更强的哈希方法。)

    Also note that the rsync daemon protocol does not currently provide anyencryption of the data that is transferred over the connection. Onlyauthentication is provided. 使用ssh作为运输如果你wantencryption。

    rsync的未来版本可能支持SSL更好的认证和加密,但仍在调查中。

    实例

    一个简单的rsyncd.conf文件,允许匿名rsync FTP区/home/ftp将:

    [ftp]
            path = /home/ftp
            comment = ftp export area

    一个更复杂的例子是:

    uid = nobody
    gid = nobody
    use chroot = yes
    max connections = 4
    syslog facility = local5
    pid file = /var/run/rsyncd.pid
    
    [ftp]
            path = /var/ftp/./pub
            comment = whole ftp area (approx 6.1 GB)
    
    [sambaftp]
            path = /var/ftp/./pub/samba
            comment = Samba ftp area (approx 300 MB)
    
    [rsyncftp]
            path = /var/ftp/./pub/rsync
            comment = rsync ftp area (approx 6 MB)
    
    [sambawww]
            path = /public_html/samba
            comment = Samba WWW pages (approx 240 MB)
    
    [cvs]
            path = /data/cvs
            comment = CVS repository (requires authentication)
            auth users = tridge, susan
            secrets file = /etc/rsyncd.secrets

    /etc/rsyncd.secrets 文件格式是这个样子:

    tridge:mypass
    susan:herpass

    配置文件

    /etc/rsyncd.conf or rsyncd.conf

    参见

    远程同步(1)

    诊断

    漏洞

    请报告错误!rsync的bug跟踪系统是在网上http://rsync.samba.org/

    版本

    这个是rsync 3.1.3的帮助文档。

    积分

    rsync是GNU通用公共许可证下发布。详细内容见filecopying。

    rsync主FTP站点是ftp://rsync.samba.org/pub/rsync.

    一个网站是可用的http://rsync.samba.org/

    我们会很高兴听到你,如果你喜欢这个程序。

    本程序使用zlib压缩让loupgailly和Mark Adler写的图书馆。

    感谢

    感谢Warren Stanley最初的想法和补丁的rsyncdaemon。感谢Karsten Thygesen为他的许多建议和文件!

    作者

    rsync是由Andrew Tridgell和Paul Mackerras写的。很多人后来促成了它。

    为支持和开发邮件列表可在http://lists.samba.org

  • 相关阅读:
    ArrayAdapter与SimpleAdapter的使用
    ThinkPHP之数据库操作
    android之显示数据库信息
    linux下定时任务的使用
    ThinkPHP中的跨控制器调用与框架执行流程
    android之SQLlite操作
    linux中的进程管理
    [技巧篇]16.MyEclipse2014安装SVN插件,在线安装
    [技巧篇]15.火狐浏览器缓存设置,提高开发效率!
    [技巧篇]14.据说SSH框架需要的监听器,IntrospectorCleanupListener
  • 原文地址:https://www.cnblogs.com/zhrngM/p/9962276.html
Copyright © 2011-2022 走看看