У меня есть система Synology DS213 J Nas. Я пытаюсь синхронизировать папки с веб-сервера ubuntu 12.04 с NAS без запроса пароля. поэтому я вошел в nas через терминал с учетной записью root.
Создан каталог ssh /root/.ssh
$ mkdir /root/.ssh
создал ключи с
$ ssh-keygen
-> с пустым пересказом
Таким образом, ssh-copy-id не работает с синологией, поскольку я вручную скопировал id_rsa.pub на машину ubuntu.
$ cat id_rsa.pub
Скопируйте и вставьте его на сервер ubuntu в
$ ~/.ssh/nas.pub
и "поместил" файл в authorized_keys
$ cat ~/.ssh/nas.pub >> authorized_keys
/ etc / ssh / sshd_config установлен в
has RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
К сожалению, если я пробую rsync, меня просят ввести пустой пересказ и пароль для машины ubuntu. полезен для любой подсказки,
Тони
Вы наверное перепутали имена пользователей и авторизованные ключи.
Действительно ли 'cat ~ / .ssh / nas.pub >> authorized_keys' помещает ваш ключ в '~ / .ssh / authorized_keys', где он должен быть, а НЕ в '~ / authorized_keys'?
Вы пробовали использовать ssh (не rsync) на веб-сервере с вашего NAS? Какое имя пользователя вы используете для запуска rsync / ssh из rsync? Вы поместили свой ключ в .ssh / authorized_keys для ЭТОГО имени пользователя?
ПОДРОБНОСТИ:
У вас должен быть пользователь, который запускает команду rsync на NAS. Назовем его userNAS. Этот пользователь должен запускать ssh-keygen. Затем вам понадобится открытый ключ этого пользователя /home/userNAS/.ssh/id_rsa.pub.
Этот шаг, вероятно, сработал для вас, я полагаю, вы использовали для этого пользователя root. Однако из вашего вопроса не ясно, как вы выполнили '$ mkdir /root/.ssh', поскольку '$' показывает, что вы не являетесь пользователем root.
Затем вам необходимо войти в систему через ssh на веб-сервере. Для этого у вас должен быть другой пользователь на веб-сервере, назовем его userWeb. Теперь вам нужно скопировать открытый ключ «userNAS» с вашего NAS в «authorized_keys» пользователя «userWeb» на вашем веб-сервере. Например, в /home/userWeb/.ssh/authorized_keys.
Теперь у вас должна быть возможность запустить ssh userWeb@yourwebserver.com как userNAS на вашем NAS и войти на веб-сервер как пользователь userWeb. Однако, если ваш пользователь на веб-сервере также является пользователем root, ssh не позволит ему войти в систему. Отметьте отдельную опцию в конфигурации ssh, чтобы разрешить вход в систему root через ssh. Однако делать это не рекомендуется.
Наконец, у rsync должна быть опция, сообщающая ему, что он должен входить в систему как userWeb на веб-сервере. Что-то вроде '-e ssh userWeb@yourwebserver.com: / remote / dir'