On 2009.05.07 at 19:13:16 +0400, Peter Teslenko wrote:

> Привет, коллеги.
>
> Что-то я не могу понять где грабли.
> Хочу с удалённого хоста скопировать rsync'ом /etc
>
> Делаю:
> (this_host) ssh-keygen -t rsa -f ~/.ssh/rsync
> (this_host) scp ~/.ssh/rsync.pub remoteu...@remotehost:/tmp/
> (remote_host) cat /tmp/rsync.pub >> /root/.ssh/authorized_keys
> (remote_host) rm /tmp/rsync.pub
>
> если на remote_host в /etc/ssh/sshd_config прописано PermitRootLogin yes
> то на this_host нормально выполняется вот такая команда
>
> (this_host) rsync -avuz -e "ssh -i /root/.ssh/rsync" r...@remotehost:/etc 
> /var/backups/remotehost/
>
> если же на remote_host в /etc/ssh/sshd_config прописываю
> PermitRootLogin forced-commands-only
>
> и правлю authorized_keys, прописывая
> command="rsync -auz -e 'ssh -i /root/.ssh/rsync'  r...@remotehost:/etc 
> /var/backups/remotehost/" ssh-rsa дальше_ключ
>
> То обваливается вот так
>
> Warning: Identity file /root/.ssh/rsync not accessible: No such file or 
> directory.
>
> Почему вдруг not accessible?

Потому что он на thishost, а authorized_keys - на remotehost.

Поэтому попытка выполнить на remotehost комаду в том виде, в каком она
написана в authorized_keys и приводит к этому сообщению. На remotehost в 
authorized_keys нужно записывать не ту команду, которую ты собираешься
выполнять на thishost, а ту, которую эта твоя команда попытается
запустить на remotehost.

Команда будет выглядеть примеро как 
rsync --server --sender что-то еще


> -- 
> Peter Teslenko
> Jabber: [email protected]
>
>
> -- 
> To UNSUBSCRIBE, email to [email protected]
> with a subject of "unsubscribe". Trouble? Contact [email protected]
>


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Ответить