martes, 25 de mayo de 2010

OpenLDAP: Backup en formato ldif

Vamos a ver de una forma rápida y sencilla como hacer un backup de un ldap.

Exportaremos los datos en formato ldif y en caso de necesitar este backup veremos como importar el archivo ldif.

1. Exportar ldap completo.

[root@srv]#: slapcat -l backup.ldif

Con esto tenemos todos los datos de nuestro ldap en un solo archivo en texto plano.

Podemos añadir este comando al crontab del root modificando el nombre del archivo con la fecha, de esta forma "backup$(date +%y%m%d%H%M).ldif", para que cada vez que genere una copia no sobrescriba la anterior.

Aunque si queremos fiabilidad y seguridad lo mejor es montar un servidor de replica que puede que veamos más adelante.

2. Importar archivo .ldif

[root@srv]#: slapadd -c -l backup.ldif

De esta forma importamos backup.ldif en nuestro ldap.

Así de fácil podemos tener una copia de nuestro ldap por lo que pueda pasar.

martes, 18 de mayo de 2010

Herramientas Web (I): robtex.com : swiss army knife internet tool

Si en un post anterior os hablé de la navaja suiza del informático (net cat), hoy vamos a ver una web a mi parecer interesante y definida por sus creadores como swiss army knife internet tool.

La web en cuestión es robtex.com, nos proporcionará mucha información de nuestra red o de cualquier otra que se nos ocurra.

Podremos ver información de registros DNS, IP, whois, blacklists, etc... bastante interesante y que nos puede ayudar a entender como nos ven desde fuera de nuestra organización.


ejemplo dns robotex
Ejemplo de información DNS

Desde la web podemos construir un gráfico de nuestra infraestructura de red.

ejemplo dns robotex
Ejemplo de grafico

lunes, 10 de mayo de 2010

Máquinas Virtuales(I): VMware Virtual Appliances

Navegando por internet he encontrado esta web Virtual Appliances Marketplace de VMware bastante interesante. En esta web podemos encontrar alrededor de 1400 máquinas virtuales de todo tipo.

Básicamente son Linux, ubuntu, suse, centos.. con configuraciones de servidores, como puede ser desde un simple Apache hasta una centralita telefónica con Asterisk (voz ip) totalmente configurado.

Está organizado en categorías:

Top 10 Solution CategoriesOperating Systems
Networking
IT Administration
VMware Ready
ERP and CRM
Applications Infrastructure
Storage
Collaboration and Communication
Systems Infrastructure
Content Applications

Esto nos puede servir para bajarnos una distribución con algún servidor que nos haga falta, lo que nos ahorrara tiempo y quebraderos de cabeza.


(1): VMware Virtual Appliances

miércoles, 5 de mayo de 2010

Fail2Ban: configurar para sshd

1. ¿Qué es un IDS?.

Definición: Un sistema de detección de intrusos (o IDS de sus siglas en inglés Intrusion Detection System) es un programa usado para detectar accesos no autorizados a un computador o a una red. Estos accesos pueden ser ataques de habilidosos hackers, o de Script Kiddies que usan herramientas automáticas

2. Instalación Fail2ban

En este caso solo hemos tenido que ejecutar:

[root@sol10]: yum install fail2ban

3. Configuración

Vamos a configurar fail2ban solo para sshd, pero podríamos hacerlo para Apache, postfix, sendmail, etc… por lo que omitiremos los archivos de configuración que no sean para ssh.

Esquema de directorios

/etc/fail2ban/
├── action.d
│ ├── dummy.conf
│ ├── hostsdeny.conf
│ ├── iptables.conf
│ ├── mail-whois.conf
│ ├── mail.conf
│ └── shorewall.conf
├── fail2ban.conf
├── filter.d
│ ├── apache-auth.conf
│ ├── apache-noscript.conf
│ ├── couriersmtp.conf
│ ├── postfix.conf
│ ├── proftpd.conf
│ ├── qmail.conf
│ ├── sasl.conf
│ ├── sshd.conf
│ └── vsftpd.conf
└── jail.conf

Viendo el esquema de directorios podemos imaginar que primero filtra los datos que coge de los logs y luego en función de lo que obtenga ejecuta la acción correspondiente.

3.2 fail2ban.conf

Este archivo es el principal del programa, podemos ver el nivel de log y demás. En principio no hay que tocar nada.

Si quisiéramos cambiar el nivel de log para que cree un archivo más detallado lo podemos hacer con:

[root@sol10]: fail2ban-client set loglevel 1

3.3 sshd.conf

Aquí pongo parte del archivo con las modificaciones que hemos hecho:

# Fail2Ban configuration file
#
# Author: Cyril Jaquier
#
# $Revision: 617 $
#

# The DEFAULT allows a global definition of the options. They can be override
# in each jail afterwards.

[DEFAULT]

# "ignoreip" can be an IP address, a CIDR mask or a DNS host. Fail2ban will not
# ban a host which matches an address in this list. Several addresses can be
# defined using space separator.

ignoreip = 192.168.1.0/24

# "bantime" is the number of seconds that a host is banned.
bantime = 36000

# A host is banned if it has generated "maxretry" during the last "findtime"
# seconds.
findtime = 6000

# "maxretry" is the number of failures before a host get banned.
maxretry = 3

# "backend" specifies the backend used to get files modification. Available
# options are "gamin", "polling" and "auto". This option can be overridden in
# each jail too (use "gamin" for a jail and "polling" for another).
#
# gamin: requires Gamin (a file alteration monitor) to be installed. If Gamin
# is not installed, Fail2ban will use polling.
# polling: uses a polling algorithm which does not require external libraries.
# auto: will choose Gamin if available and polling otherwise.
backend = auto

# This jail corresponds to the standard configuration in Fail2ban 0.6.
# The mail-whois action send a notification e-mail with a whois request
# in the body.

[ssh-iptables]

enabled = true
filter = sshd
action = iptables[name=SSH, port=ssh, protocol=tcp]
sendmail-whois[name=SSH, dest=root, sender=fail2ban@mail.com]
logpath = /var/log/secure <-LO MAS IMPORTANTE maxretry = 3 En este caso lo hemos configurado para que no tenga en cuenta los ataques provenientes de nuestra red con el parámetro ignoreip. Otro parámetro interesante es el bantime, que es el tiempo en segundos que baneará una ip. A continuación pasamos a habilitar la auditación de los logs de ssh y para eso ponemos el enable a true y le indicamos el path de los logs que tiene que mirar para saber quien está atacando al equipo. 3.4 filter.d/sshd.conf

Una vez que tenemos configurado el servicio para que vigile el ssh ahora vamos a ver el filtro que aplica (no tenemos que cambiar nada):

failregex = ^%(__prefix_line)s(?:error: PAM: )?Authentication failure for .* from \s*$
^%(__prefix_line)sFailed [-/\w]+ for .* from (?: port \d*)?(?: ssh\d*)?$
^%(__prefix_line)sROOT LOGIN REFUSED.* FROM \s*$
^%(__prefix_line)s[iI](?:llegalnvalid) user .* from \s*$
^%(__prefix_line)sUser \S+ from not allowed because not listed in AllowUsers$
^%(__prefix_line)srefused connect from \S+ \(\)\s*$
^%(__prefix_line)sAddress .* POSSIBLE BREAK-IN ATTEMPT\s*$


Aquí vemos, entre otras, que en los logs busca cadenas como: “Authentication failure” ó “sROOT LOGIN REFUSED”.

Si queremos añadir nuevas reglas podemos hacerlo con el comando fail2ban-regex:

[root@sol10]: fail2ban-regex 'Jul 18 12:13:01 [1.2.3.4] authentication failed' 'authentication failed'

[root@sol10]: fail2ban-regex '18-07-2008 12:13:01 [1.2.3.4] authentication failed' '\[\] authentication failed'

3.5 action.d/iptables.conf

En este archivo se definen las reglas que se van a llevar a cabo según el tipo de servicio, para ssh que es nuestro caso agregará en iptables unas reglas (no hay que tocar nada).

# Option: actionban
# Notes.: command executed when banning an IP. Take care that the
# command is executed with Fail2Ban user rights.
# Tags: IP address
# number of failures
#

fail2ban bloqueando ip ssh

Aquí vemos como fail2ban ha agregado una regla a iptables y ha bloqueado una ip tras 3 intentos de logeo fallidos.

martes, 13 de abril de 2010

Netcat + tar: Copiando datos entre hosts

En este post vamos a ver como pasar información de un equipo a otro por red. Tenemos muchas opciones como scp, ftp, etc.. pero en este caso lo haremos con nc (netcat).

Netcat es conocida como la navaja suiza del informático por los muchos usos que podemos hacer con esta pequeña aplicación. Está aplicación nos ayuda básicamente a abrir puertos tcp y udp rápidamente.

Pues como digo vamos a usarla junto con el comando tar que está orientado para usarlo en local.
.
Los pasos a seguir son:

1º - Nos iremos al equipo que va a recibir la información y lo dejaremos a la escucha en un puerto cualquiera:

[root@localhost]: nc -l 192.168.0.1 333 l tar -x
.
con esto abrimos un puerto en la máquina cliente redireccionado a la entrada standard del comando tar, que está esperando para desempaquetar lo que reciba.

2º - No vamos a la máquina que va a mandar la información y nos situamos en la carpeta que vamos a enviar y escribimos:

[root@localhost]: tar -c * l nc 192.168.0.1 333
.
con esto enviamos a la máquina cliente (192.168.0.1) por el puerto 333 lo que el tar está empaquetando para que el equipo cliente lo reciba y desempaquete.

tar con netcat
La transferencia de información de esta forma es muy rápida.

lunes, 22 de marzo de 2010

Xming: Magia con las X11

¿Que pensaríais si os digo que se pueden ejecutar aplicaciones con front-end desde una consola conectada a una máquina linux por ssh?, con Xming es posible.

A continuación vamos a ver como podemos configurar PuTTY para que haga una redirección de las X11, Xming pueda recibirlo y nos muestre los programas en el propio windows.

Una vez que tenemos instalado xming y en ejecución, ejecutamos PuTTY y vamos a Connection -> SSH y marcamos "Enable compression" (Fg.1)
configuracion putty xming
Fg.1 PuTTY - Enable compression

Ahora pinchamos en X11 y marcamos la opción de "Enable X11 forwarding" (Fg.2), una vez hecho esto salvamos los cambios y ya tenemos todo listo, solo falta conectarnos a la máquina remota.

configuracion putty x11
Fg.2 - Enable X11 forwarding

Para ejecutar cualquier aplicación gráfica solo tenemos que llamarla desde la consola.

X11 xming con putty

Contando experiencias

Bienvenidos a mi blog.

En este blog hablaré acerca de administración de sistemas con todo lo que ello conlleva, configuración de so, utilidades de gestión y en general todo lo que tenga ver la administración de máquinas linux y windows (puede que algo de macos server también).

Me gusta dar a conocer utilidades que pienso que son útiles y no muy conocidas, así que, iré poniendo review y algún que otro howto.
Related Posts Plugin for WordPress, Blogger...