rsync 的 auth failed 错误排查

  1. @ERROR: auth failed on module input
  2. rsync error: error starting client-server protocol (code 5) at main.c(1506) [Receiver=3.0.7]
 
rsync出现这个问题,说明前期的rsync服务搭建已经没问题了,
 
客户端已经可以连接上服务器
 
先贴上我自己一个rsync测试模块的配置文件
 
  1. [input]
  2. path = /home/user/input
  3. comment = PROGRAM INPUT DIR
  4. read only = no
  5. write only = yes
  6. list = no
  7. auth users = upload
  8. secrets file = /home/user/test/rsync/etc/test.pass
 
上传到rsync服务端input模块,可以使用下面的命令:
 
rsync -avSH ./testfile upload@192.168.1.100::input
 
---------------------------------
关于这个auth失败的问题,有以下可能的情况:
 
1、密码输入错误:
请再次确认你登录用户的密码无误
 
2、secrets file格式错误:
secrets file的文件格式是  upload:123456
表示upload用户的rsync密码是123456
 
3、配置文件写错:
最坑爹的一个,看看自己模块配置下面的auth users、secrets file有没写错
 
4、secrets file权限问题
服务端的secrets file权限必须是600,
可以使用chmod 600 /home/user/test/rsync/etc/test.pass
 
5、secrets file文件拥有者与rsync运行者
服务端rsync服务是以什么用户运行,则必须保证secrets file文件拥有者必须是同一个
假设root运行rsync --daemon,则secrets file的owner也必须是root
 
6、如果是以--password-file=file的方式附带密码
确保客户端密码文件格式无误,与服务端的密码文件不同,
客户端的不用加上用户名,即直接是  123456
 
7、以上都不行,可以尝试使用本地存在的用户名作为auth users
实测,这个可行。
密码不要跟本地用户的系统密码一样就行了。
 
-----------------------------
最后如果还搞不清是什么问题,可以尝试从下面的思路去摸索:
 
1、在rsync模块的配置文件里,把strict modes设置为no,禁用文件mode检验
 
2、ssh、telnet登录rsync服务端,查看服务器端的rsync日志,这个通常会比客户端的信息多
 
 
-------------------------
 
 
posted @ 2021-06-18 13:34  30岁再次出发  阅读(725)  评论(0编辑  收藏  举报