I have 6 devices that i rsync to a central location to back them up. Ive been using ssh as the -e option. Problem is i use public key with passphrases, meaning to backup all six i need to go to each device and run the backup script. Since i typically backup /etc, /home, and /root this means entering sudo and the ssh passphrase 3x for each device.

I would much prefer a script that runs on back storage device that can pull the data from each device without having to use ssh (encryption is not necessary since all traffic is either local or going through a vpn connection).

I could then put this script in root's crontab or make it a systemd service running as root.

But i dont know how i can remote sync without ssh

    • matcha_addict@lemy.lol
      ·
      8 months ago

      You can create a key pair that is specifically just for this kind of backup transaction.

      To limit its affects, create a user and group on each of the devices that are highly restricted.

      This is actually the most secure solution that doesn't require an interactive password prompt. The passwordless key only serves this one purpose and has small attack surface.

    • lemmyvore@feddit.nl
      ·
      8 months ago

      Look into ssh agent. It's a program that runs in the background and "caches" ssh keys after you unlock them once.

      • neosheo@discuss.tchncs.de
        hexagon
        ·
        8 months ago

        I have tried but it doesn't really work in the script. You load the key into the agent but it still asks for the passphrase

        • lemmyvore@feddit.nl
          ·
          8 months ago

          Maybe these will help:

          • https://superuser.com/questions/1752313/starting-ssh-agent-from-a-script-for-use-in-multiple-scripts-invoked-by-git
          • https://www.ssh.com/academy/ssh/agent