Як налаштувати і використовувати rsyncd?


6

У мене сервер налаштований для запуску rsync як демон /etc/rsyncd.conf:

log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock

[documents]
   path = /home/user/work
   comment = User's Documents folder
   uid = user
   gid = user
   read only = no
   auth users = user
   secrets file = /etc/rsyncd.secrets

/etc/rsyncd.secrets файл:

user:more

на стороні клієнта я запускаю:

rsync my_file user@ip_address::documents

і я отримую таку помилку:

@ERROR: auth failed on module documents
rsync error: error starting client-server protocol (code 5) at main.c(1524) [sender=3.0.7]

На сервері у мене є користувач root з ім'ям користувача з іншим паролем. З боку клієнта Я спробував обидва паролі з однаковими результатами.

Що я роблю неправильно?


Для того, щоб використовувати rsync як демон я використовую [documents] path = / home / user / work comment = Папка для документів користувача тільки для читання = немає. Без користувача та аутентифікації.
telebog

Чи існує конкретна причина, через яку ви бажаєте використовувати rsyncd? Набагато простіше та безпечніше використовувати rsync через ssh, як це: rsync -avP /source user@host:/destination
UtahJarhead

@UtahJarhead Я не знаю про ОП, але в моєму випадку, передача 5-10 2TB шматки стиснуті файли через заглушку мережі означає, що я не дбаю про безпеку передачі. Я хочу, щоб кожен доступний байт йшов по дроту. Додаткові накладні витрати та шифрування трафіку, які мені не потрібні. Кілька кілограмів у минулому означають кілька годин на кінці роботи. rsync генерує на контрольній суми fly, що перевіряє передачу, яка є окремою від опції -c для порівняння існуючих файлів.
Rowan Hawkins

@RowanHawkins Зовсім правильно, товариш! Це єдина причина використовувати rsyncd над rsync + ssh. Однак накладні витрати від ssh, швидше за все, не вплинуть на швидкість передачі даних, якщо не будуть задіяні слабкі процесори. Шифрування + слабкі процесори = bleh.
UtahJarhead

Відповіді:


7

Я отримую таку ж помилку, і коли я переглядаю файл журналу, я отримую це повідомлення:

Файли секретів не повинні бути доступними для інших

Тому, напевно, вам доведеться змінити дозвіл файлу.


chmod -o /etc/rsyncd.conf
Neil McGuigan

5

Подивіться в /var/log/rsyncd.log. Можливо, у вашій "/etc/rsyncd.secrets." "файл занадто широкий.


2011/03/01 11:49:07 [13367] connect from user2.local (192.168.0.196) 2011/03/01 11:49:10 [13367] auth не вдалося на модуль роботи з user2.local (192.168.0.196) : неавторизований користувач у файлі /etc/rsyncd.secrets Додав: user2: passwd user2.local: passwd Але той же результат.
telebog

3

Відповідь схеми є правильною, однак у вас є можливість вимкнути строгі режими в rsyncd.conf, не видаляючи дозволу читання з файлу секретів від інших користувачів.

у ваш /etc/rsyncd.conf додайте:

strict modes = false

і нарешті перезапустіть демон rsync.


2

Проблемою може бути пробіл перед паролем:

  • Неправильно: user: password

  • Праворуч: user:password

Як сказали інші, ви також повинні переконатися, що дозволи правильно встановлені ( chmod o-rwx ), але це інше питання.


2

Я видалив запис з rsync.conf для "auth user = user" і перезапустив rsyncd. Використання "auth" примушує ввести пароль запиту, незважаючи на використання файлу секретів. І хоч у файлі таємниці я мав такий самий пароль у паролі користувача та пароля, він все ще не вдався до вказаної вами помилки. Видалення "користувача для авторизації" було моїм рішенням. Дозволи на мій файл секретів: "500". Cronjob на клієнті виконується як root.


0

Ще одна річ, яку потрібно шукати, і це те, що вбивало мою установку.

НЕ використовуйте: rw після імені користувача в рядку авторизації користувачів, якщо ваша версія rsync не підтримує її. Сторінка man для 3.1.2, яку я знайшов на download.samba.org, має опцію: rw для користувачів у рядку 'auth users', однак версія 3.0.9, яку я мав на старому Mint, ще немає . Я витратив багато часу, намагаючись отримати rsyncd для роботи - зняв ': rw' і bang! Це спрацювало відмінно. (Звичайно, краще рішення було б оновити цей комп'ютер - який планується ..)

Крім того, у моєму випадку, якщо я не мав лінії користувачів для авторизації, не було б запитано пароля, який неприйнятний для моєї установки. Мені цікаво, як він працював для @ mthebie99 для отримання пароля. Якщо, звичайно, @ mthebie99 використовував версію, в якій він працює правильно (або принаймні, як я очікував).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.