Configuración de un Cliente Linux de BackupPC

Puede utilizar el script de bash shell que proveemos (tiene que añadir la clave SSH pública de su servidor al mismo):

O hágalo manualmente como debajo.

Primero debe crear el usuario de BackupPC para que el servidor pueda copiar los archivos.

# Cree el Usuario de BackupPC
adduser backuppc --disabled-password
# Asegúrese de que no tiene acceso con contraseña (solo con Clave SSH)
passwd -l backuppc

Si no tiene las siguientes dependencias instaladas, instálelas.

apt update -y && apt install sudo rsync

Añada su usuario backuppc al sudoers (solo permita rsync)

# Cree el archivo
touch /etc/sudoers.d/backuppc

# Utilice los permisos correctos sobre el archivo
chmod 440 /etc/sudoers.d/backuppc

# Añada el comando a su sudoers
echo -e "backuppc ALL=NOPASSWD: /usr/bin/rsync * \n" > /etc/sudoers.d/backuppc

# Verifique que parsea correctamente
visudo -c

Ahora creamos el directorio .ssh en /home/backuppc y copiamos la clavepública de SSH del servidor.

En el servidor:

# Haga un cat de la clave pública
cat /var/lib/backuppc/id_rsa.pub

En el cliente:

# Cree el directorio
mkdir /home/backuppc/.ssh

# Copie su clave al archivo authorized_keys
key="your_pubkey"
echo $key > /home/backuppc/.ssh/authorized_keys

# Asegúrese que existe known_hosts
touch /home/backuppc/.ssh/known_hosts

# Asegúrese de tener los permisos correctos
chown -R backuppc:backuppc /home/backuppc/.ssh
chmod 700 /home/backuppc/.ssh
chmod 600 /home/backuppc/.ssh/*

# Haga un keyscan del servidor
backuppc_server_ip="127.0.0.1" # Use la IP que tiene su servidor
ssh-keyscan "$backuppc_server_ip" >> /home/backuppc/.ssh/known_hosts

También necesitará asegurarse que su Servidor de SSH en el Cliente permita autenticación con clave pública.

# Si desea puede poner esto en un script bash y ejecutarlo
# o hacerlo manualmente.
sshd_config_path="/etc/ssh/sshd_config"

if [[ $(grep "#AuthorizedKeysFile" "$sshd_config_path") ]]; then
    echo "Enabled the AuthorizedKeysFile parameter in $sshd_config_path"
    sed -i "s/^#\(AuthorizedKeysFile.*\)$/\1/g" "$sshd_config_path"
fi

Luego vuelva a su servidor y haga lo siguiente:

# Use su IP de cliente aquí
client_ip="127.0.0.1"
sudo -u backuppc ssh $client_ip

# Debería haber iniciado sesión en el cliente, puede salir inmediatamente
# escribiendo "exit" o apretando CTRL+D

¡Luego vaya a la GUI de su BackupPC y añada el host!