martes, 23 de febrero de 2010

Amanda Centos 5

En este manual veremos como controlar nuestros respaldos remotamente con amanda.
en mi caso tengo 2 servidores importantes que tengo información la cual la guardare en 3ro para evitar perdida de información por algún incidente de seguridad .

Paso1 instalar amanda .
como lo hemos venido haciendo utilizaremos yum para instalarlo

# yum -y install amanda*

paso 2

habilitamos amanda, este paquete se agrega en el xinetd.d asi que tendremos que cambiar el parametro Disable = yes a Disable = no


# vi /etc/xinetd.d/amanda
# vi /etc/xinetd.d/amandaidx
# vi /etc/xinetd.d/amidxtape

paso 4:

Copiamos los archivos /etc/amanda/DailySet1 a /etc/amanda/intra

# cp -r /etc/amanda/DailySet1 /etc/amanda/intra


editamos el archivo de configuración para hacerlo en tapes virtuales


# vi /etc/amanda/intra/amanda.conf

en este archivo los parametros que debemos modificar son los siguientes

======================

org "Configuration name"
mailto "email"
netusage 600 Kbps

dumpcycle 1 weeks # semanas para hacer full bk
runspercycle 10
tapecycle 15 tapes

tpchanger "chg-disk" #

changerfile "/etc/amanda/intra/changer"


tapedev "file:/backup/intra/slots" # especifica donde se guardara el bk

tapetype HARDDISK
define tapetype HARDDISK {
comment “Backup to Virtual Tape”
length 3072 mbytes # each tape is 3 Gigs
}

amrecover_changer "changer"


infofile "/var/log/amanda/intra/curinfo" # database DIRECTORY
logdir "/var/log/amanda/intra" # log directory
indexdir "/var/log/amanda/intra/index" # index directory

===========================

editamos el archivo de /etc/amanda/intra/disklist y agrrgamos el listado de directorios que requerimos respladar ( borramos la linea localhost /etc al final del archivo )

# vi /etc/amanda/intra/disklist

==========================

macro /usr/macropro/EMP01 comp-amanda-tar
macro /usr/macropro/EMP02 comp-amanda-tar
macro /usr/macrorpo/EMP03 comp-amanda-tar
macro /usr/local/PeticionesMPLinea comp-amanda-tar
web /var/www comp-amanda-tar
========================


creamos el directorio de respaldo

# mkdir -p -m 770 /backup/intra/slots
# chown -R amanda:disk /backup


creamos la lista de cintas

# touch /etc/amanda/intra/tapelist
# chown –R amanda:disk /etc/amanda/intra

entramos al usuario de amanda

# su -l amanda

creamos los directorios de cintas virtuales

# cd /backup/intra/slots
# for ((i=1; $i<=15; i++)); do mkdir slot$i; done
# ln -s slot1 data

hacemos una prueba de las cintas virtuales de respaldo

# /usr/sbin/ammt -f file:/backup/intra/slots status
file:/backup/intra/slots status: ONLINE

etiquetamos las cintas virtuales

# for ((i=1; $i<=15; i++)); do /usr/sbin/amlabel intra intra-$i slot $i; done

changer: got exit: 0 str: 1 file:/backup/intra/slots
labeling tape in slot 1 (file:/backup/intra/slots):
rewinding, reading label, not an amanda tape (Read 0 bytes)
rewinding, writing label intra-1, checking label, done.

reseteamos las cintas

# /usr/sbin/amtape intra reset

changer: got exit: 0 str: 1
amtape: changer is reset, slot 1 is loaded.

editamos el archivo /var/lib/amanda/.amandahosts para permitir comunicacion a los clientes y agregamos los nombres que configuramos en el hosts

#vi /var/lib/amanda/.amandahosts

salimos del usuario amanda y reiniciamos el xinetd

# exit
# service xinetd restart

verificamos que el proceso este corriendo

# lsof | grep amanda

xinetd 27247 root 5u IPv4 20076390 UDP *:amanda
xinetd 27247 root 6u IPv4 20076391 TCP *:amandaidx

con esto tenemos configurado el servidor .. ahora configuraremos el cliente


descargamos la aplicacion cliente en nuestro cliente utilizando yum

# yum -y install amanda-client

editamos el archivo de acceso al cliente /var/lib/amanda/.amandahosts

# vi /var/lib/amanda/.amandahosts

=======================
servidor amanda
=======================

habilitamos amandan en el xinetd.d

# vi /etc/xinetd.d/amanda

=====================
service amanda
{
socket_type = dgram
protocol = udp
wait = yes
user = amanda
group = disk
server = /usr/lib64/amanda/amandad
disable = no
}

=====================

reiniciamos el servicio o verificamos que este funcionando amanda

# service xinetd start
# lsof | grep amanda

xinetd 24713 root 5u IPv4 58195223 UDP *:amanda

agregamos al cron los respaldos a la hora que requerimos que se realizen

vi /etc/crontab

======================

0 16 * * 1-5 amanda /usr/sbin/amcheck -m intra
45 0 * * 2-6 amanda /usr/sbin/amdump intra

======================


recuperamos información de amanda

preparamos la cinta a ser leida

# cd /tmp
# /usr/sbin/amtape intra slot 1
# /usr/sbin/ammt -t file:/backup/intra/slots rewind

para restaurar todo lo respaldado ejecutamos lo siguiente

# /usr/sbin/amrestore file:/backup/intra/slots

para restaurar solo una parte en especifico

# /usr/sbin/amrestore file:/backup/intra/slots web /var/www

domingo, 7 de febrero de 2010

Analizar Vulnerabilidades con Openvas

Open vas es un escaner de vulnerabilidades de red, es muy util cuando estamos realizando un análisis de riesgo , dentro de los analisis de riesgo tenemos que incluir  las debilidades logicas .

paso 1 :  instalar  Openvas

para instalar openvas podemos bajar el taz.gz directo del sitio oficial o ayudarnos de algún repositorio oficial reconocido por el sitio, en nuestro caso lo instalaremos via repositorio, ya que en mi persepcion los paquetes deben tener 1 sola forma de administrarse, en el caso que no exista  algún repositorio oficial recomiendo nosotros mismos construir nuesto rpm, el cual no es el objetivo de este manual.


Instalamos la PGP del sitio autorizado.

# rpm --import http://www.atomicrocketturtle.com/RPM-GPG-KEY.art.txt

instalamos  los archivos del deposito .


# lynx -source http://www.atomicorp.com/installers/atomic.sh | sh
============================
Atomic Archive installer, version 1.1
Configuring the [atomic] yum archive for this system

Installing the Atomic GPG key: OK
Downloading atomic-release-1.0-11.el5.art.noarch.rpm: OK

Would you like to add the Plesk yum repository to the system?

Enable Plesk repository? (y/n) [Default: n]: y

Plesk 8.6 and 9.2 repositories are available:
NOTE: Plesk 9 repos are only available for rhel/centos 4 and 5

Enable Plesk 8.6 or 9.2? (8/9) [Default: 8]: 9


The Atomic Rocket Turtle archive has now been installed and configured for your system
The following channels are available:
  atomic          - [ACTIVATED] - contains the stable tree of ART packages
  atomic-testing  - [DISABLED]  - contains the testing tree of ART packages
  atomic-bleeding - [DISABLED]  - contains the development tree of ART packages
================================

Instalamos los paquetes necesarios para openvas.

# yum -y install openvas-libraries openvas-libnasl openvas-server openvas-plugins openvas-client openvas-scanner

al  terminar la instalacion , corremos el siguiente comando.

# openvas-mkcert

===========================================
-------------------------------------------------------------------------------
                        Creation of the OpenVAS SSL Certificate
-------------------------------------------------------------------------------

This script will now ask you the relevant information to create the SSL certificate of OpenVAS.
Note that this information will *NOT* be sent to anybody (everything stays local), but anyone with the ability to connect to your OpenVAS daemon will be able to retrieve this information.


CA certificate life time in days [1460]:
Server certificate life time in days [365]:
Your country (two letter code) [DE]: mx
Your state or province name [none]: bc
Your location (e.g. town) [Berlin]: ens
Your organization [OpenVAS Users United]: na

-------------------------------------------------------------------------------
                        Creation of the OpenVAS SSL Certificate
-------------------------------------------------------------------------------

Congratulations. Your server certificate was properly created.

/etc/openvas/openvassd.conf updated
The following files were created:

. Certification authority:
   Certificate = /var/lib/openvas/CA/cacert.pem
   Private key = /var/lib/openvas/private/CA/cakey.pem

. OpenVAS Server :
    Certificate = /var/lib/openvas/CA/servercert.pem
    Private key = /var/lib/openvas/private/CA/serverkey.pem

Press [ENTER] to exit

===========================================

Agregamos un usuario  para nuestro analizador 

# openvas-adduser

Nota:  para agregar reglas a los usuarios podemos leer el manual  con
# man openvas-adduser


=============================
Using /var/tmp as a temporary file holder.

Add a new openvassd user
---------------------------------


Login : enduser
Authentication (pass/cert) [pass] : pass
Login password :
Login password (again) :
Passwords do not match!
Login password :
Login password (again) :

User rules
---------------
openvassd has a rules system which allows you to restrict the hosts that enduser has the right to test.
For instance, you may want him to be able to scan his own host only.

Please see the openvas-adduser(8) man page for the rules syntax.

Enter the rules for this user, and hit ctrl-D once you are done:
(the user can have an empty rules set)
Login             : enduser
Password          : ***********

Rules             :


Is that ok? (y/n) [y] y
user added.

===========================

El siguiente paso es actualizar los plugins, correrá un alista muy grande. así que tengan paciencia  

# openvas-nvt-sync
===========================
sent 514645 bytes  received 66691961 bytes  327039.45 bytes/sec
total size is 64891003  speedup is 0.97
[i] Checking dir: ok
[i] Checking MD5 checksum: ok
===========================

Ya actualizados todos los plugins , procedemos a correr el server de openvas

# openvassd
All plugins loaded

este proceso puede demorar algunos segundos dependiendo de la capacidad del equipo.

y el paso final . correr el cliente .

entramos en una terminarl vnc o podemos utilizar xterm para correr sesiones remotas .

# OpenVAS-Client

y comenzamos a trabajar .. 

lunes, 1 de febrero de 2010

Como Configurar VirtualBox en centos 5

Virtual box es un desarrollo para virtualizaciones en paralelo desarrollada por SunMicrositem ( creo que ahora es oracle ) por fortuna para todos nosotros esta en un constante evolución, asi que tendremos que estar al pendiente de las  versiones mas recientes .

Para tener mayor domino de Virtualbox recomiendo leer el manual de sitio, virtualbox es un producto similar a Xen, así que yo lo recomiendo como una alternativa sencilla de utilizar en fase experimental, no con fines de virtualizar servidores de misión critica. Sin embargo es mi opinion personal, pero sin duda es una aplicacion tan robusta  como  la antes mencionada

entrando ya en materia podemos visitar el sitio oficial para verificar la ultima versión.

Paso 1:

descargar la firma digital de la aplicacion e instalarla

# rpm --import http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc

Descargamos el deposito destinado para nuestra distribución.

# cd /etc/yum.repo.d/
# wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo

Instalamos la paqueria necesaria para que Virtualbox modifique la informacion del Kernel .

# yum -y update gcc glibc-devel kernel kernel-devel SDL qt

Nota: en este paso debemos asegurarnos que los fuentes y el Kernel sean las mismas versiones, existen versiones PAE, en el cual tenemos que cambiar la linea de comando

# yum -y update gcc glibc-devel kernel kernel-PAE-devel SDL qt

En una instalación me toco el caso que no encontraba las fuentes y me di cuenta que habia una diferencia en el folder y lo solucione escribiendo lo siguiente.

#export KERN_DIR=/usr/src/kernels/`uname -r`-i686

existen algunos casos mas graves que deberan seguir las siguientes instrucciones . y resarle a su mejor santo

Instalamos VirtualBox

# yum -y VirtualBox-3.1

cada vez que se actualiza el Kernel debemos de  bajar los devel , y recompilar de nuevo ( también me ocurría   con VMWare asi que ya estarán algunos acostumbrados  ).  Para hacer este proceso,  debemos correr el siguiente comando.

# /etc/init.d/vboxdrv setup

el sistema devolvera algo como esto

==========================

Stopping VirtualBox kernel module                          [  OK  ]
Recompiling VirtualBox kernel module                     [  OK  ]
Starting VirtualBox kernel module                            [  OK  ]
=========================

Paso 2:

Instalar nuestro sistema operativo huesped. Podemos hacer uso de vnc  para instalar  en una xterm ejecutamos el comando .

# VirtualBox

correra un wizard sencillo de instalación de nuestro sistema operativo huesped.

o podemos utilizar comandos para instalarlo de modo texto

# VBoxManage createvm --name "Windows8k" --register
# VBoxManage modifyvm "Windows8k" --memory 1024 --acpi on --boot1 dvd --nic1 bridged --bridgeadapter1 eth0
# VBoxManage createhd --filename /home/user/Windows8k.vdi --size 20000 --register
# VBoxManage storagectl "Windows8k" --name "IDE Controller" --add ide
# VBoxManage storageattach "Windows8k" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium Windows8k.vdi
# VBoxManage storageattach "Windows8k" --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/user/W8k.iso

Nota para hacer un iso apartir de un cd o dvd hacemos lo siguiente

# dd if=/dev/hdX of=/home/user/W8k.iso

Paso 3: la red

En el wizard tenemos la opcion de instalar interfaz de red con nuestra maquina virtual .  la cual se muestran de la sig manera .

# ifconfig

==================


vboxnet0  Link encap:Ethernet  HWaddr 0A:00:27:00:00:00
          inet addr:10.10.1.34  Bcast:10.10.1.255  Mask:255.255.255.0
          inet6 addr: fe80::800:27ff:fe00:0/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:17 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:5606 (5.4 KiB)

===================

y con esto podemos tener acceso , a nuestro sistema huesped de cualquier parte de nuestra red .

paso 4: Autostart

en muchas ocasiones es necesario poner nuestro sistema huesped en producion y que este no tenga ninguna intervención humana para correr ,  para virtualbox he visto varias formas de hacer que esto ocurra ( como en las matemáticas muchos métodos pueden llegar a el mismo resultado) la forma mas sencilla es coloconado un comando en los rc.local

editamos el archivo rc.local

#vi  /etc/rc.local

=================================

#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local
VBoxManage startvm "Nombre de la secion" -type vrdp
============================

pero aqui les comparto una liga donde indica como hacer funcionar mas de 1 maquina virtual con virtualbox