Windows Server Backup

En muchas ocaciones tenemos instalado Windows Server 2008 y desde alli repartimos servicios de red a muchas personas, almacenamos bases de datos, tenemos nuestro controlador de dominio, o nuestro servidor DNS hasta imagenes o fotos, videos, musica, entre muchas cosas mas.

Alli es cuando surge la pregunta, ¿Que pasaria si de repente (y como es de costumbre en windows) nuestro SO dejara de funcionar como lo venia haciendo? ¿Y si fuese una empresa con 500 empleados y un controlador de dominio corriendo siempre?

La solucion es Windows Server Backup (antes NTBACKUP) un servicio enfocado a realizar copias de seguridad de nuestro SO, el concepto es simple, ahora lo llevaremos a la practica.

Instalando Windows Server Backup

Contamos entonces con un equipo el cual es controlador de dominio y procedere entonces a instalar Windows Server Backup, para eso voy al administrador del servidor>caracteristicas> y agregaremos las siguientes caracteristicas.

-Caracteristicas de copias de seguridad de Windows Server
-Copias de seguridad de Windows Server
-Herramienta de linea de comandos
-Windows Powershell



Confirmamos entonces la instalación



Y corroboramos que la instalación haya estado correcta



En mi caso pretendo realizar una copia de seguridad y que esta se guarde en una carpeta compartida dentro de otro equipo en la red, entonces abrire el CMD y ejecutare el siguiente comando.

wbadmin start backup -backupTarget:\\(ip del servidor remoto)\(Carpeta que compartimos) -include:(Lugar al que le haremos backup en mi caso a todo el disco C:) -quiet



Como podemos observar en la imagen tengo mi consola y detras de esta un explorador apuntando a la carpeta compartida y en el instante en el que inicio el backup observamos que se crea una carpeta llamada WindowsImageBackup.



En esta imagen les muestro que la copia fue exitosa y que el tamaño de la carpeta de backup es 6,06GB y esta ubicada en \\192.168.30.41\compartida.

Ahora que tenemos el backup realizado propondre un escenario a manera de prueba, voy a eliminar el controlador de dominio y el servidor DNS que tengo instalado como si esto huviese sido un error, posteriormente les mostrare como el WindowsServerBackup recupera el estado de la maquina a la fecha a la que se hizo dicho backup.

Aqui podemos observar que tengo dichos servicios instalados.



Y aqui observamos que los acabo de desinstalar.



En este caso el proceso lo hice manualmente es decir que quite las funciones pero en cualquier caso de eliminacion del SO o de bases de datos de usuarios esto seria un problema bastante grave para una empresa.

Lo que hice posteriormente fue guardar mi backup en un disco duro y conectarlo a la maquina afectada, luego de eso procedere a bootear mi maquina desde el cd de instalacion de Windows Server 2008.

Iniciaremos como si fueramos a hacer una instalacion comun y corriente de Windows Server 2008, lo primero que haremos sera elegir nuestro idioma.



Cuando nos aparezca esta imagen le daremos donde dice reparar el equipo.



Nos pedira que seleccionemos el disco duro donde esta el sistema operativo que queremos reparar, en nuestro caso es el disco C:



Elegimos entonces la herramienta de restauración completa del pc



En este momento elegiremos una copia de seguridad diferente a la que nos elige predeterminadamente.



En esta imagen podemos  observar que el equipo busco copias de seguridad en nuestro sistema, si quisiéramos restablecer el equipo a partir de una copia de seguridad en otro equipo elegimos la opción opciones avanzadas, pero como en mi caso esta en el disco D: elegiré dicha ubicación.



Le damos siguiente.



En esta opción elegiré formatear y volver a particionar los discos.



Por ultimo elegimos finalizar.





Cuando reiniciemos el pc ya tendremos el equipo tal y como lo dejamos la ultima vez que hicimos la copia de seguridad.



Recuperando Archivos En Ext3 Con Ext3grep

Muchas veces me ha ocurrido que borro archivos accidentalmente desde la consola de Linux, lo que generalmente pasa es que le doy rm -rf a algun archivo y posteriormente me arrepiento de esto, en la documentacion oficial del sistema de archivos ext3 se dice que no es posible recuperar archivos eliminados en estas particiones sin embargo con ext3grep esto es posible.

Haremos entonces una prueba de esto, en mi caso tengo una maquina recien instalada de ubuntu en la que creare un archivo y lo borrare a proposito.

Comenzare creando el archivo.




Luego de creado y guardado procederemos a borrarlo.


En el momento del borrado se recomienda no utilizar mas el equipo para aumentar las probabilidades de recuperar la informacion ya que si lo seguimos utilizando los bloques con la informacion de nuestro archivo podrian ser sobreescritos ya que cuando borramos un archivo el sistema de archivos no lo elimina del disco sino que supone que el espacio en el que estaba quedo libre para escribir sobre este.

Lo siguiente a hacer despues de apagar el equipo es iniciar con un live cd, en mi caso utilizare uno de ubuntu.


Al iniciar en este procederemos a loguearnos como root y descargar desde la pagina el codigo para compilar el programa ext3grep, este es el link, en mi caso lo descargue con wget.




Para comenzar a compilarlo necesitamos unas dependencias  y desde los repositorios descargaremos los paquetes gcc build-essential y e2fslibs-dev


Descargados los paquetes, procederemos a compilar el ext3grep, iniciaremos descomprimiendo el .tar.gz con el comando tar zxvf.



Ahora que lo descomprimimos observamos que creo una carpeta llamada ext3grep nos meteremos en ella con el comando cd y procederemos a prepararlo para la compilacion con ./configure

Mas o menos asi aparece si queda bien, ahora procedemos a compilarlo con el comando make.

Si todo sale bien, lo instalamos con el comando make install.




Ahora contamos con ext3grep, verificaremos entonces la particion donde estaba nuestro archivo borrado, en mi caso estaba en /home, que es la raiz, es decir en mi caso era /dev/sda5


Le pediremos al programa que nos arroje los nombres de los archivos que se pueden recuperar, la sintaxis es ext3grep (osea el nombre del programa) /dev/sda5 (particion a buscar) --dump-names (arrojar nombres) > borrados.txt (archivo donde se guardaran los nombres).


Al final pueden salir algunos errores en bloques pero esto en realidad no influye mucho con nuestra finalidad, ahora observaremos el archivo que creo que en mi caso se llama borrados.txt




Si bajamos bien en el archivo ubicaremos nuestro sistema de archivos completo, y alli encontraremos el nombre de el archivo que borramos, saldremos de este entonces y procederemos a recuperarlo.




Para la recuperacion la sintaxis sera ext3grep (osea el nombre del programa) /dev/sda5 (particion a buscar) --restore-file (recuperar un archivo, home/prueba (la ruta que se menciona en el archivo borrados.txt.



Terminara un proceso y finalmente nos creara una carpeta llamada RESTORED_FILES, alli debemos encontrar nuestro archivo y si lo abrimos descubriremos que esta en perfecto estado.



Existe una opcion para recuperar todos los archivos posibles borrados, es la siguiente.

ext3grep --deleted --restore-all DISPOSITIVO



Instalando Mandriva Directory Server (MDS) en CentOS

Mandriva Directory Server es un servidor LDAP desarrollado por Mandriva similar a Fedora y a RedHat DS, cuenta con ventajas como autenticación de usuario y la gestión gracias a LDAP, una gestión Python dedicada API de LDAP, SAMBA y SQUID (núcleo del MDS y MMC), una interfaz web muy amigable, integración con SAMBA entre otras ventajas.

Requisitos.
En este momento cuento con:

Un servidor DNS instalado y resolviendo el dominio gnunick.com y la pagina mds.gnunick.com.
Un servidor apache para la instalación de la interfaz web.
Un servidor LDAP.

Si no tienen conocimiento de como instalar estos servicios les recomiendo visitar los siguientes links.




Instalando Mandriva DS
Lo  primero que debemos hacer es ir al ftp oficial de Mandriva DS y descargar la versión que queremos usar, en mi caso elegí la versión 2.3.2, ustedes pueden elegir la que quieran, en mi caso elegí esta ya que es la ultima versión que esta dividida en módulos ya que la estable esta todo en un solo paquete, la dirección del ftp es esta ftp://mds.mandriva.org/pub/mds/sources/ en mi caso descargare el agente que se comunicara con el ldap y la plataforma web desde la cual administraremos gráficamente el mandriva.



Luego de descargarlos nos dirigimos al lugar donde lo descargamos y verificaremos que existan los archivos descargados.


Iniciaremos desconfigurando el agente con el descompresor tar seguido por las opciones para descomprimir archivos con extension .tar.gz siendo estas jxvf.


Luego de descomprimir cumpliremos dependencias necesarias para instalar el agente, las podemos bajar desde los repositorios y son las siguientes.

python-twisted python-ldap python-libacl php python-twisted-web php-xmlrpc

 
Cumplidas las dependencias listaremos y verificamos entonces que existe la carpeta mmc-agent-x.y.z y nos meteremos a esta, si listamos veremos que hay unos archivos para compilar en python e iniciaremos la compilacion con el comando make install.


Cuando compile y si es exitoso aparecerá algo así.


El agente ya deberia estar instalado, entonces nos devolveremos un directorio y procederemos a instalar la interfaz web o mmc-web-base primero descomprimiendo el archivo .tar.gz con tar zxvf


Si listamos encontraremos ya la carpeta mmc-web-base y nos meteremos en ella, si listamos veremos que también son archivos para compilar y lo haremos con el comando make install HTTPDUSER=apache, esto para definir que apache es el usuario por defecto del mmc-web-base.


Ya finalizado nos saldremos del directorio.


Ahora copiaremos el archivo mmc.schema ubicado dentro del mmc-agent a la ruta /etc/openldap/schema


Ahora editaremos el archivo del Openldal en la ruta /etc/openldap/slapd.conf incluyendo en este la linea señalada a continuación, la cual es la ruta que acabamos de definir anteriormente para el mmc.schema.

Ahora para configurar la interfaz web en el servidor apache copiaremos el archivo mmc.conf ubicado dentro de la carpeta mmc-web-base y lo pegaremos en la ruta de hosting virtuales del apache que regularmente es /etc/httpd/conf.d/

Ahora editaremos el archivo que acabamos de copiar, agregando las lineas que señalo a continuacion las cuales indican:

<Virtualhost *:80> : Indica la apertura de un hosting virtual.
DocumentRoot /usr/local/share/mmc : Es la ruta donde se instala la interfaz web
ServerName mds.gnunick.com : Es la manera como ingresaremos a la pagina.
DirectoryIndex index.php : Es la declaracion del index.
</VirtualHost> : Cerramos la declaración del hosting virtual.

Aun no tengo el servidor web configurado, lo haremos rápidamente ingresando al siguiente archivo.



En este descomentaremos la siguiente linea.



Y al final de este incluiremos la ruta donde copiamos el archivo de virtualhost mmc.conf de la siguiente manera.


Ahora reiniciaremos nuestro servidor web.


Y procederemos a configurar el agente para que se comunique con la interfaz web y con el openldap para esto editaremos el archivo /etc/mmc/agent/config.ini y en este cambiaremos el login y el password que utilizara el agente para comunicarse con la interfaz web.


Luego configuraremos el web-base desde el archivo /etc/mmc/mmc.ini para que se comunique con el agente, en este ingresaremos los mismos parámetros de login y password que usamos el la configuración del agente.


Finalmente configuraremos el plugin del agente para que se comunique con el openldap, la configuracion esta en el archivo /etc/mmc/plugins/base.ini y agregaremos el dn de root configurado en el openldap (en mi caso es dc=gnunick, dc=com) un usuario administrador del ldap y un password.

Finalmente ejecutaremos el agente con mmc-agent, en mi caso salio este error que decia que el directorio de backup /home/archives no existía, entonces yo procedi a crearlo y finalmente volvi a ejecutar el comando mmc-agent.
Si aparece al final Listening to XML-RPC requests significa que el agente esta iniciado y esperando para ser utilizado.

Nos dirigimos entonces a un navegador y al digitar la URL de la pagina nos deberia aparecer esto.


Tan solo basta loguearnos y comenzar a utilizarlo.


 
Licencia Creative Commons
Este obra está bajo una licencia Creative Commons Atribución-NoComercial-SinDerivadas 2.5 Colombia.