Я пытаюсь использовать rsync через SSH, сервер запускает rsync в режиме демона, клиент подключается к:
rsync -options user@server::folder /local/copy
Это прекрасно работает. Проблема в том, что SSH работает на порте сервера, отличном от порта по умолчанию, следующее не работает:
$rsync -options -e 'ssh -p 1234' user@server::folder /local/copy
#######################################
# Access to this server is prohibited #
########## Disconnect NOW! ############
#######################################
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(463) [receiver=2.6.8]
Но SSH работает (использует ключи):
[user@client ~]$ ssh -p 1234 user@server
#######################################
# Access to this server is prohibited #
########## Disconnect NOW! ############
#######################################
Last login: Thu Mar 31 09:18:08 2011 from 1.2.3.4
[user@server ~]$
Как я могу решить эту проблему? SSH работает, rsync работает вместе, но не работает. Я отключил iptables, и, как мы видим выше, он подключается, но rsync не может подключиться к указанной папке?
Вы используете синтаксис ::, который используется для демона rsyncd. Если вы собираетесь копировать через порт alt ssh, используйте следующие опции:
$ rsync -options -e 'ssh -p 1234' пользователь @ сервер: / папка / локальный / копия