Cómo configurar un servidor de respaldos con BackupPC en CentOS 5

BackupPC es un sistema de respaldos y restauración para entornos Unix/Linux y MS Windows, basado sobre Perl y con una interfaz HTTP potente y relativamente sencilla para su administración. BackupPC funciona a través de los protocolos SMB y SSH+rsync.
Resulta una solución menos robusta que Bacula, pero definitivamente es mucho más sencilla y fácil de administrar, configurar y mantener.
La versión estable más reciente de BackupPC es la 3.1.0, y es la recomendada para sistemas en producción.
URL. http://backuppc.sourceforge.net/.
Instalación del equipamiento lógico necesario.
Fedora 9 en adelante incluye el paquete BackupPC en sus depósitos YUM, por lo que solo es necesario instalarlo desde la terminal a través del mandato yum. El siguiente procedimiento solo es necesario para CentOS 5 y Red Hat Enterprise Linux 5, para 32bit o 64bit.
Instalación en CentOS 5.
Como el usuario root, desde una terminal, crear el fichero /etc/yum.repos.d/AL-Server.repo, utilizando cualquier editor de texto. En el siguiente ejemplo se utiliza vi.
vi /etc/yum.repos.d/AL-Server.repo |
Añadir a este nuevo fichero el siguiente contenido:
[AL-Server] name=AL Server para Enterprise Linux $releasever mirrorlist=http://www.alcancelibre.org/al/el$releasever/al-server gpgcheck=1 gpgkey=http://www.alcancelibre.org/al/AL-RPM-KEY |
Importar la firma digital de Alcance Libre ejecutando lo siguiente desde la terminal:
rpm --import http://www.alcancelibre.org/al/AL-RPM-KEY |
Instalar el equipamiento lógico (software) necesario, que consiste en los paquetes RPM de BackupPC, Apache, mod_perl y samba-client:
yum -y install BackupPC httpd mod_perl samba-client |
Lo anterior creará automáticamente el usuario backuppc e instalará los ficheros necesarios con los permisos correspondientes.
Procedimientos.
Configuración de Apache.
Si es la primera vez que se inicia el servicio httpd (Apache), iniciar éste y agregarlo a los servicios de arranque del sistema:
/sbin/service httpd start /sbin/chkconfig httpd on |
Si el servicio httpd ya estaba funcionado antes de los procedimientos descritos en este documento, reiniciar éste:
/sbin/service httpd restart |
La instalación de el paquete BackupPC incluye el fichero /etc/httpd/conf.d/BackupPC.conf. Este viene configurado para solo permitir conexiones hacia la herramienta de administración de BackupPC desde la interfaz de retorno del sistema (loopback, 127.0.0.1). Conviene editar este fichero y definir que se permita el acceso a otros equipos a fin de permitir la administración remota de BackupPC. añada justo después de allow from 127.0.0.1 la dirección IP del equipo desde el cual se realizará la administración de BackupPC, o bien la red y máscara de subred (en formato de bits) correspondiente. En el siguiente ejemplo, se permitirá el acceso desde cualquier equipo en 192.168.1.0/24:
<Directory /usr/share/BackupPC/sbin/> # BackupPC requires valid authentication in order for the web interface to |
Recargue la configuración en el servicio httpd, a fin de que surtan efecto los cambios:
/sbin/service httpd reload |
Configuración de BackupPC.
Se deben asignar los contextos correspondientes para SELinux a fin de que éste permita operar normalmente a BackupPC:
chcon -R -t httpd_sys_content_t /etc/BackupPC chcon -R -t httpd_sys_content_rw_t /etc/BackupPC/pc |
Antes de iniciar el servicio, es importante crear un usuario administrador para la interfaz HTTP. Utilice el mandato htpasswd para cerrar el fichero /etc/BackupPC/apache.users y crear un usuario virtual que realizará las funciones de administrador. En el siguiente ejemplo, se creará el fichero /etc/BackupPC/apache.users y el usuario denominado administrador:
htpasswd -c /etc/BackupPC/apache.users administrador |
Lo anterior devolverá un diálogo para asignar la clave de acceso para el usuario denominado administrador, misma que deberá confirmar para continuar.
Utilizando cualquier editor de texto, modifique el fichero /etc/BackupPC/config.pl:
vim /etc/BackupPC/config.pl |
De este fichero solo es necesario localizar y modificar los siguientes parámetros:
-
$Conf{ServerHost}: Se localiza en la línea 44 del fichero /etc/BackupPC/config.pl. Sirve para definir el nombre de anfitrión (hostname) del sistema.
-
$Conf{CgiAdminUsers}: Se localiza en la línea 1918 del fichero /etc/BackupPC/config.pl. Sirve para definir el usuario administrador.
-
$Conf{CgiURL}: Se localiza en la línea 1923 del fichero /etc/BackupPC/config.pl. Sirve para definir el URL de la herramienta de administración.
-
$Conf{Language}: Se localiza en la línea 1934 del fichero /etc/BackupPC/config.pl. Sirve para definir el idioma a utilizar en la interfaz de la herramienta de administración.
Considerando como ejemplo que el servidor tiene una dirección IP 192.168.1.1, que hay un DNS en la red local que resuelve esta dirección IP con el nombre servidor.redlocal.net, y que se va a utilizar el idioma español para la interfaz HTTP de la herramienta de administración, establezca los siguientes valores para los parámetros mencionados arriba:
$Conf{ServerHost} = servidor.redlocal.net
$Conf{CgiAdminUsers} = administrador
$Conf{CgiURL} = http://servidor.redlocal.net/BackupPC
$Conf{Language} = es |
Si se carece en la red local de un servidor DNS que resuelva el nombre servidor.redlocal.net, puede establecerse el valor del parámetro $Conf{CgiURL} como http://dirección-ip-servidor/BackupPC. En el siguiente ejemplo, considerando como ejemplo que el servidor tiene una dirección IP 192.168.1.1, se puede utilizar lo siguiente:
$Conf{ServerHost} = servidor.redlocal.net
$Conf{CgiAdminUsers} = administrador
$Conf{CgiURL} = http://192.168.1.1/BackupPC
$Conf{Language} = es |
Iniciar y agregar a los servicios de arranque del sistema al servicio backuppc:
/sbin/service backuppc start /sbin/chkconfig backuppc on |
Ingresar con cualquier navegador hacia http://servidor.redlocal.net/BackupPC, o bien http://192.168.1.1/BackupPC, y autenticar como el usuario administrador. Hacer clic en Edit hosts (Editar anfitriones) e ingresar algunas direcciones IP de equipos GNU/Linux o Windows a respaldar.

Añadiendo anfitriones para respaldar en BackupPC.
Configuración de los sistemas GNU/Linux a respaldar.
Desde la interfaz de administración de BackupPC, edite la configuración del anfitrión remoto con GNU/Linux a respaldar y confirme que se ha definido como método rsync. Defina también el directorio a respaldar en el equipo remoto.

Configurando anfitrión GNU/Linux para respaldar en BackupPC.
Los respaldos se realizan a través de el mandato rsync en combinación con el mandato ssh. Para poder realizar cualquier operación es necesario generar una firma digital (id_dsa.pub), sin clave de acceso, para el usuario backuppc del servidor que hospeda BackupPC, la cual se copia en la cuenta del usuario root del equipo remoto a respaldar, en el fichero ~/.ssh/authorized_keys, fichero que deberá tener permisos de solo lectura para el usuario propietario.
Cambie al usuario backuppc especificando /bin/bash como intérprete de mandatos.
su -s /bin/bash -l backuppc |
Genere el directorio ~/.ssh, con permisos de acceso exclusivos para el usuario:
mkdir -m 0700 ~/.ssh/
Genere la firma digital utilizando el siguiente mandato:
ssh-keygen -t dsa |
Cuando se solicite una clave de acceso, simplemente pulsar la tecla ENTRAR (ENTER) sin ingresar dato alguno.
Un ejemplo de la salida de lo anterior sería como la siguiente:
Generating public/private dsa key pair. Enter file in which to save the key (/home/usuario/.ssh/id_dsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/usuario/.ssh/id_dsa. Your public key has been saved in /home/usuario/.ssh/id_dsa.pub. The key fingerprint is: 2c:73:30:fe:52:21:a5:82:78:49:57:cd:37:af:36:df usuario@cliente |
Cambia los permisos de todos los ficheros recién creados a solo lectura y escritura para root:
chmod 600 ~/.ssh/{id_dsa,id_dsa.pub} |
Crear en la cuenta del usuario root del equipo remoto a respaldar el directorio ~/.ssh y el fichero ~/.ssh/authorized_keys, con premisos de solo lectura y escritura para root.
ssh root@equipo mkdir -m 0700 ~/.ssh ssh root@equipo touch ~/.ssh/authorized_keys ssh root@equipo chmod 600 ~/.ssh/authorized_keys |
Copiar el contenido de ~/.ssh/id_dsa.pub dentro del fichero ~/.ssh/authorized_keys de la cuenta del usuario root del equipo a respaldar:
cat ~/.ssh/id_dsa.pub | ssh root@equipo "cat >> ~/.ssh/authorized_keys" |
A partir de este punto, solo bastará seleccionar al equipo remoto a respaldar desde la interfaz de administración de BackupPC e iniciar un primer respaldo haciendo clic en el botón Comenzar copia de seguridad completa.
Configuración de los sistemas Windows a respaldar.
El método más simple es realizar los respaldos de BackupPC a través de el protocolo SMB. Ingresar a Windows como administrador y configurar el sistema para compartir carpetas e impresoras. Al terminar, compartir la carpeta a respaldar o bien el disco duro completo (C:).
Desde la interfaz de administración de BackupPC, edite la configuración del anfitrión remoto con Windows a respaldar y defina como método smb. Defina también el nombre del recurso compartido a respaldar en el equipo remoto y el nombre del usuario y clave de acceso del administrador del equipo Windows remoto.

Configurando anfitrión Windows para respaldar en BackupPC.
A partir de este punto, solo bastará seleccionar al equipo remoto a respaldar desde la interfaz de administración de BackupPC e iniciar un primer respaldo haciendo clic en el botón Comenzar copia de seguridad completa.
fuente: www.alcancelibre.org | Autores: Joel Barrios Dueñas y Jhon Grados



Enviar un comentario nuevo