как использовать rsync (используя ssh без пароля), с sudo только на локальной стороне?

Эта команда отлично работает для меня без пароля ssh:

rsync -aqve ssh ${user}@${remote_host}:/etc/bind /tmp/etc/bind 

Поскольку я хотел бы rsync напрямую подключиться к своему локальному / etc / bind с правами root, я попытался:

  • «Nohup sudo ...» не запрашивает passwd и ничего не делает
  • Резервное копирование Windows-ПК на Linux-машину
  • Какова цель ssh-agent?
  • принудительное копирование поврежденного домашнего каталога
  • Удобнее ли подключаться к SSH с помощью пароля, потому что SSH-ключи необходимо хранить на каждом компьютере
  • Автоматически разблокировать ключи на удаленном узле, доступ к которому осуществляется через SSH
  •  sudo rsync -aqve ssh ${user}@${remote_host}:/etc/bind /etc/bind 

    Но теперь я получаю приглашение пароля (это плохо).

    Как исправить эту строку, чтобы скопировать непосредственно на локальный / etc / bind без подсказки пароля?

  • синхронизировать два zip-архива (с минимальным вводом-выводом)?
  • «Канал 3: сбой при открытии: административно запрещено: открыть сбой» при создании сеанса VNC в туннеле SSH
  • Почему мой сеанс winscp не отображается в Linux?
  • Какой смысл в протоколе рыб?
  • Запуск openvpn без привилегий root
  • Как узнать причину, по которой висят процессы ssh?
  • One Solution collect form web for “как использовать rsync (используя ssh без пароля), с sudo только на локальной стороне?”

    Когда вы делаете это со своим собственным пользователем, вы используете ключи SSH в своем собственном каталоге $HOME/.ssh/ . Когда вы делаете это как root, используя sudo , ssh будет выглядеть в домашнем каталоге root для каталога .ssh – и ваших ключей там нет.

    Вот четыре способа исправить это: любой из них должен работать:

    1. В качестве пользователя root создайте новые ключи ssh и добавьте открытую часть в authorized_keys для вашего пользователя на удаленном сервере
    2. Скопируйте собственные SSH-ключи в корневой .ssh . (Убедитесь, что вы не перезаписываете существующие ключи!)
    3. Предоставьте свой собственный пользовательский доступ для записи в целевой каталог. Рассмотрите последствия безопасности перед тем, как выбрать этот метод!
    4. Как говорит Крис Даун, используйте существующие ключи SSH, используя команду

       $ sudo rsync -aqve 'ssh -i ~user/.ssh/id_rsa' \ ${user}@${remote_host}:/etc/bind /etc/bind 
    Linux и Unix - лучшая ОС в мире.