Как стать автором
Обновить

Использование cwRsync для резервного копирования данных с Windows на Linux сервер

Задача:
Резервное копирование файлов с windows сервера на Linux сервер выступающий в роли хранилища.

Инструменты:
Для windows:
CopSSH_3.1.4
cwRsyncServer_4.0.3
Для Linux:
rsyncd
ssh
Цель:
Использовать пакет rsync и ssh для организации безопасного тунелля передачи данных в ethernet сети между двумя серверами с разной ОС.

Инструкция:
На windows сервере:
Устанавливаем пакет CopSSH на windows сервер (жмем далее-далее).
Останавливаем службу OpenSSHD, если запущена, иначе не получится поставить пакет cwRsyncServer (связано с тем, что создается эмулируемая линукс среда и при работе службы OpenSSHD, используется библиотека необходимая для установки cwRsyncServer) — вылезет ошибка.
Ставим cwRsyncServer (жмем далее-далее).
В службах меняем запуск службы RsyncServer с ручного запуска на автоматический.
Проверяем службы OpenSSHD и RsyncServer запустив их. Если запустились — все хорошо, останавливаем их.
Если вылезет ошибка 1069 «Вход невозможен», то поменяйте пароли пользователям CWRSYNC и COPSSH в «Администрирование-Управление данных компьютером-Пользователи». Такое случается, если вы пере устанавливаете эти программы.
Затем, введите новые пароли в свойствах служб OpenSSHD и RsyncServer во вкладке «Вход в систему». Теперь службы должны запуститься.
Создайте нового пользователя (у меня это RSBService) и добавьте его в группу Администраторы.
Добавим пользователя RSBService в пользователи ssh. Выполните: Пуск-Программы-CopSSH-Activate User.
Там выбираем или вписываем имя нашего пользователя и кликаем «Далее»
В passphrase можете ввести что угодно.
Отредактируем конфиг rsyncd.conf
Для этого выполните: Пуск-Программы-cwRsyncServer-rsyncd.conf.
Там все довольно тривиально и идентично настройкам для unix rsync.
Распишу только стандартные опции.
use chroot = false   # Использовать не только диск С
strict modes = false # Проверка файла с паролем. Отключена так как его не использую.
hosts allow = 192.18.0.34 # Откуда подключаться разрешено по rsync
log file = rsyncd.log  # Лог файл

# Module definitions
# Remember cygwin naming conventions: c:\work becomes /cygwin/c/work
#
[backup]               # Название модуля
path = /cygdrive/c/_BackUp     # Путь до папки, путь всегда начинается с cygdrive
read only = yes  # разрешено только чтение
transfer logging = yes  # логировать перемещение

Все. Теперь запустим службы OpenSSHD и RsyncServer.
На windows сервера работы закончили.

На Linux сервере:
Создадим ключ для беспорольной авторизации на windows сервере под пользователем RSBService:
ssh-keygen -t rsa -b 2048 -N ''  # Создаем ключ rsa длиной 2048 байт без парольной фразы.

Скопируем публичный ключ на windows сервер:
ssh-copy-id RSBService@ip-адрес сервера

У вас запросят пароль на пользователя RSBService. Введите его.
Теперь проверим беспарольный вход:
ssh RSBService@ip-адрес сервера

Установите демон rsyncd на Linux сервер.
С помощью следующей команды мы скопируем данные с windows сервера.
rsync -a --delete RSBService@ip-адрес::backup /назначение куда класть данные


PROFIT

Использованные материалы:
Сайт производителя утилиты.
Здесь описано как запустить cwRsync в качестве демона, если вы не найдете версию 4.0.3, так как в 4.0.5 нет отдельного серверного пакета.
Запуск в качестве службы
3 видео мануала, но с использованием windows в качестве сервера и клиента.
1я часть.
2я часть.
3я часть.
Теги:
Хабы:
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.