Резервные разрешения для всей fileовой системы

Вот тощий: у меня есть Linode VPS, который я хочу сделать резервным на свой локальный ноутбук через rsync. Я только что сгенерировал keyи ssh для связи и оставил пустую кодовую фразу для закрытого keyа, чтобы я мог rsync через cron, не беспокоясь о паролях.

Для дополнительной безопасности я также отказал в корневых inputах ssh. В идеале я хотел бы сделать резервное копирование всего из / вниз, но это просто невозможно с помощью обычного пользователя, если я не предоставил конкретный userский доступ rwx ко всему.

Каков наилучший способ резервного копирования всей fileовой системы через rsync, не допуская inputа в root?

Используйте учетную запись root: только uid 0 может читать все fileовые системы.

Теперь, когда вы хотите улучшить security, вот что вы можете сделать:

  • Запретить root для inputа с паролем через ssh (PermitRootLogin без пароля в sshd config).
  • Используйте аутентификацию keyа для резервного копирования.

Согласно человеку 5 sshd_config :

" PermitRootLogin Specifies whether root can log in using ssh(1). The argument must be ``yes'', ``without-password'', ``forced-commands-only'', or ``no''. The default is ``yes''. If this option is set to ``without-password'', password authentication is disabled for root. If this option is set to ``forced-commands-only'', root login with public key authentication will be allowed, but only if the command option has been specified (which may be useful for taking remote backups even if root login is normally not allowed). All other authentication methods are disabled for root. If this option is set to ``no'', root is not allowed to log in." 

Никогда не пробовал параметр «принудительные команды только», но он выглядит интересным.

Вы можете запустить rsync в режиме демона на удаленном serverе и создать резервную копию любого раздела / папки с помощью следующей команды на стороне клиента:

 rsync -au rsync://[email protected]:/folder /path/to/dest 

Однако вам необходимо следующее:

  1. Запустите rsync в режиме демона на удаленном serverе.
  2. Вам необходимо открыть порт 873 между вами и удаленным serverом.
  3. Вам необходимо определить module [folder] на удаленном serverе в /etc/rsyncd.conf .

Для обработки части защиты / шифрования вы можете настроить туннель или VPN. Например, вы можете настроить туннель SSH, используя следующую команду:

 sudo ssh -L 873:your.server.ip.addr:873 [email protected] 

Как только туннель установлен, вы можете использовать rsync локально, и connection будет перенаправлено на удаленный server через туннель.

 rsync -au rsync://[email protected]:/folder /path/to/dest 

В этом случае вам не нужно открывать порт 873 для публики, поскольку connection туннелируется через SSH на порте 22.

Как насчет ввода пользователя в корневую группу?

Я считаю, что корневая группа сможет читать другие fileы, похожие на root.

  • Веб-website сообщает о недопустимом https-certificateе SSL только на некоторых машинах
  • Свободное обеспечение Linux для студентов, чтобы учиться на
  • Ssh, telnet - время ожидания экземпляра AWS EC2
  • Случайно перемещен apache2
  • Уведомление по электронной почте о каждом подkeyении SSH к serverу Linux
  • с использованием ssh из cron
  • Не может SSH, но может TeamViewer
  • ssh "ПРЕДУПРЕЖДЕНИЕ: ИДЕНТИФИКАЦИЯ ДИСТАНЦИОННОГО ОБРАЗЦА ИЗМЕНЕНА!"
  • Вперед один SSH-key к данному хосту
  • Mac OS X: как запускать graphические приложения на безголовой машине
  • Установите по умолчанию umask для всего в Debian Squeese, вkeyая sftp
  • Давайте будем гением компьютера.