Как аутентифицировать меня как корень по rsync+ssh в удаленный сервер?

Я пытаюсь использовать rsync команда, но я получаю "разрешение, отклоненное", потому что у пользователя пи нет разрешения записать без команды sudo

Я пытаюсь переместить свою apache2 папку от 10.0.2.2 до pi@10.0.2.21 с

sudo rsync -av /etc/apache2 pi@10.0.2.21:/etc/

Таким образом, большой вопрос, там должен так или иначе предоставить rsync команду sudo для пользователя пи? или что-то еще, не предоставляя пользовательский полный доступ пи

1
задан 12 July 2015 в 19:10

2 ответа

Дорогой downvoter, цель является пи малины, и поэтому у нас есть пользователь root.

<час>

можно использовать root пользователь вместо pi. Но перед необходимостью в пароле для root пользователь.

Открывают соединение SSH

ssh pi@10.0.2.21

И устанавливают root пароль

sudo su -
passwd

Теперь, можно использовать

rsync -av /etc/apache2 root@10.0.2.21:/etc/
1
ответ дан 7 December 2019 в 13:56

Самый легкий метод, когда корневой вход в систему доступен:

rsync -av /etc/apache2 root@10.0.2.21:/etc/

Примечание: нет никакой потребности в sudo rsync, если все конфигурационные файлы в /etc/apache2 читаемы миром.

, Если Вы не возражаете против некоторых дополнительных интерактивных команд, включающих sudo на пи, попробуйте этот подход:

  1. Пакет все файлы (файлы в /etc являются обычно маленькими, таким образом, это не должна быть проблема для упаковки всего):

    tar -czC /etc apache2 | ssh pi@10.0.2.21 'cat > /tmp/apache2.tar.gz'
    
  2. Распаковывают все файлы на пи:

    sudo tar -xzf /tmp/apache2.tar.gz -C /etc
    

существует третья возможность, которая включает конфигурирование rsync демона, но это требует большего усилия и могло бы быть менее безопасным, так как проводной протокол не шифруется и может предоставить доступ любому, кто может соединиться с демоном.

1
ответ дан 7 December 2019 в 13:56

Другие вопросы по тегам:

Похожие вопросы: