Назад | Перейти на главную страницу

rsync через vpn (не ssh)

Я хотел бы использовать rsync поверх openvpn для копирования некоторых файлов с правами root с одного сервера на другой, все в одной локальной сети (т. Е. Не через Интернет). Оба сервера работают под управлением Wheezy. Я мог бы сделать это через ssh, но я бы предпочел не делать этого, потому что я хочу, чтобы root-доступ ssh был отключен. VPN работает - например, с клиента я могу успешно пропинговать IP-адрес openvpn сервера (и я могу подключиться через Интернет, используя IP-адрес VPN и VNC, хотя, опять же, для этого варианта использования я хочу скопировать файлы в моей локальной сети за моим брандмауэром ). Однако когда я пробую rsync, я получаю сообщение об ошибке «соединение через порт 22 отклонено». Вопрос: проблема в моем синтаксисе rsync и какой синтаксис мне следует использовать, или при таком подходе мне нужно настроить демон rsync на сервере? Rsync без демона, похоже, предполагает использование ssh.

Спасибо!

На этой странице есть довольно приличное (и краткое) описание шагов, которые необходимо предпринять в Debian Wheezy.

http://www.server-world.info/en/note?os=Debian_7.0&p=rsync

Обратите внимание, что когда вы используете демон rsync (в отличие от rsync по ssh), вы используете синтаксис hostname :: sharename (в примере на этой странице общий ресурс rsync - «site»).

Так ты бы убежал rsync -avz hostname::sharename или аналогичный от клиента.

Вероятно, вы захотите использовать hosts.allow, чтобы разрешить только определенные IP-адреса. Если вы хотите, чтобы имя пользователя и пароль входили в систему, добавьте это в определение вашего общего ресурса в rsyncd.conf:

   auth users = user
   secrets file = /etc/rsyncd.secrets

а затем создайте /etc/rsyncd.secrets

имя пользователя Пароль

а потом

chmod 600 /etc/rsyncd.secrets

rsync - это программа клиент-сервер, поэтому клиент должен подключиться к чему-либо, запущенному на удаленном сервере, SSH или rsyncd. VPN - это только транспорт, а не служба, к которой нужно подключиться.

Я бы предложил:

  1. запустите демон rsync на host2 и подключитесь к нему с host1
  2. если вы не хотите использовать SSH, попробуйте смонтировать материал через NFS с host2 на host1, а затем используйте rsync или cp «локально» на host1, чтобы скопировать то, что вам нужно для общего ресурса host2, экспортированного через NFS