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

  • neosheoOP
    link
    fedilink
    arrow-up
    3
    ·
    10 months ago

    Because i don’t like have passphraseless keys on my devices, i may just be being paranoid.

    • matcha_addict@lemy.lol
      link
      fedilink
      arrow-up
      8
      ·
      10 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
      link
      fedilink
      English
      arrow-up
      3
      ·
      10 months ago

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

    • ElderWendigo@sh.itjust.works
      link
      fedilink
      arrow-up
      1
      ·
      10 months ago

      As long as you restrict the user of those keys access to an interactive shell and limit access to only the directories rsync needs for backup, it’s more like giving the pool boy keys to the pool rather than allowing access to the whole house.

      • neosheoOP
        link
        fedilink
        arrow-up
        1
        ·
        10 months ago

        Well i gave it readonly access to / because i am trying to sync /etc /home and /root. Is there a way to give access to multiple locations?

    • taladar@sh.itjust.works
      link
      fedilink
      arrow-up
      1
      arrow-down
      1
      ·
      10 months ago

      It is still many times more secure than using something unencrypted.

      If you are truly paranoid you could also use something like borg in append only mode though and put that into a chroot with just the necessary tools on the server side.

      • neosheoOP
        link
        fedilink
        arrow-up
        2
        ·
        10 months ago

        Yeah, i think im gonna look into rrsync and try to set up a user with a password-less key