[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: rsync и forced-commands-only



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 remoteuser@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" root@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'  root@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: peter@jabber.mcicb.ru
>
>
> -- 
> To UNSUBSCRIBE, email to debian-russian-REQUEST@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
>


Reply to: