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!