Protegiendose contra UnixCoD Scanner ssh

Mayo 16, 2008

Últimamente he estado lidiando con servidores de algunas empresas que tenían el ssh dando la cara a internet (es decir abiertos), y algunos hasta hakeados , esto me imagino a la simplicidad con la que actualmente se puede implementar un servidor web o de correo en la actualidad , pero como siempre la seguridad es lo ultimo en que se piensa como en estos casos.

bueno debido a esto me tope con ese programa UnixCoD al parecer esta de moda debido su simplicidad y eficiencia a la hora hacer su trabajo , es un scanner que ataca al puerto 22 ssh mediante fuerza bruta ( diccionario de usuarios y contrasenas)  ¨ojo no es el unico¨ ,  así que si ven en su /var/log/auth.log muchos intentos extraños por ssh , no duden de que tarde o temprano van a poder entrar a su sistema.

Esta explicacion es con fines didacticos ya que hay que aprender a usar la herramienta para poder bloquearla:

descomprimir
tar zxvf unixcod.tar.gz
cd unixcod

scanear todo el rango (203.130.x.x)
./unix 203.130

de encontrar alguna maquina vulnerable, el hack estará en
cat vuln.txt

Como prevenir esto, bueno simple protegiendo el ssh y no dejarlo de manera estandar
# vi /etc/ssh/sshd_config

- cambiar el puerto por defecto ( por ejemplo este)
Port 22  por Port 475992

- Desabilitar logeo como root
PermitRootLogin no

- Banear entradas recurrentes , esto lo hacemos con fail2ban

# apt-get install fail2ban
# vi /etc/fail2ban/jail.local

Creacion de directica
[ssh]enabled = true
port = 475992
filter = sshd
logpath = /var/log/auth.log
maxretry = 3  # maximo 3 entradas erronas

Finalmente reiniciamos fail2ban y ssh

# /etc/init.d/fail2ban restart
# /etc/init.d/ssh restart
Con esto incrementaremos la seguridad en nuestro equipo aunque lo ideal seria pensar en acceder via vpn,  claves privadas o algun metodo parecido.


Test Linux , cuanto sabes ??

Mayo 16, 2008

navegando me tope con este test bastante simpático , eso si preparence una buena taza de café y pongan se cómodos que son 45 preguntas a todo nivel , aunque no es un termómetro de cuanto sabemos de Linux ya que nunca usamos absolutamente todo del sistema, pero puede servir para distraernos un rato y aprender algunas cosas que no manejamos.

Aqui esta espero que les sirva:

http://www.daypo.com/test-gnu-linux-2007.html


Ubuntu Hardy y los problemas con la BCM94311MCG de broadcom

Mayo 5, 2008

Hace una semana que se lazo la nueva vercion de ubuntu , 8.04 Hardy y no me aguante de probarla ni bien salio , despues de estos dias de personalizacion y ajustando el entorno a mi gusto :) , y encontrado con felicidad las actualizaciones de la mayoria de los programas que uso , pero sin embargo encontre el mismo trauma con la famosa tarjeta wifi de broadcom ( BCM94311MCG Wlan mini-PCI ) hasta cuando broadcom lanzara sus drivers oficiales , como lo han echo Ati , Nvidia ..etc.

Lamentablemente con el drivers que trae hardy no funciona :(  , sin embargo googleando ya algien lo habia solucionado y tubo la genial idea de compartir su experiencia  ,ok  vamos a dividirlo en 2 partes

1.- con este tutorial instalan y configuran la tarjeta y funciona sin reiniciar  :) , sin embargo , cuando reinician no carga correctamente el driver. para lo cual usamos esta correccion publicado por Luis Guitierrez en la misma pagina.

2.- Crear un archivo ejem. iniciar-wifi.sh con el siguiente contenido

#!/bin/bash
cd /home/juan/compat-wireless-2008-04-27   #esto depende donde hallan descargado el driver
sudo make load
exit 0
#Fin del archivo

- Darle permisos de ejecucion /  copiarlo a las siguientes ubicaciones y crear enlaces para su carga en el arranque del sistema.

chmod a+x iniciar-wifi.sh
sudo cp iniciar-wifi.sh /bin
sudo cp iniciar-wifi.sh /etc/init.d
sudo ln -s /etc/init.d/iniciar-wifi.sh /etc/rcS.d/S62wifi

Con esto se soluciona el problema de la broadcom con Hardy



Backups incrementales con Tar

Abril 30, 2008

Despues de probar una serie de scrips con varias herramientas como rsync,cipo etc.  al final consolide este que funciona bastante bien  :

ARCHIVO : backupfull.sh

#!/bin/sh
DATA=/backup/correo
DEST=$DATA/full.tgz
SOURCE=/home
LOG=/opt/backup/log
TODAY=`date “+%Y-%m-%d %a”`

# Borrar copia existente
/bin/rm -f $DEST

# Crear respaldo local
/bin/tar -chzf $DEST $SOURCE

# Borrar los respaldos incrementales
/bin/rm -f $DATA/i*

#### fin del archivo

ARCHIVO : backupincremental.sh

#!/bin/sh
DATA=/backup/correo
LASTFULL=$DATA/full.tgz
SOURCE=/home
TODAY=`date “+%Y-%m-%d_%a”`
LASTDATE=`stat -c %y $LASTFULL`
DEST=$DATA/i$TODAY.tgz

# Borrar el incremental existente (si existe)
/bin/rm -f $DATA/i*

# Crear incremental
/bin/tar -chz –newer “$LASTDATE” -f $DEST $SOURCE

### fin del archivo

CONFIGURACION DEL CRON

00 22 * * 6 /root/backupfull.sh
00 22 * * * /root/backupincremental.sh

FUNCIONAMIENTO

1.- Archivo backupfull.sh , genera un comprimido de la carpeta /home/  , y lo guarda en /backup/correo, esto se ejecuta los sabados a las 11pm.
2.- Archivo backupincremental.sh , la primera vez genera un comprimido  omitiendo los archivos contenidos en full.tgz , cuando lo hace por segunda vez primero elimina el incremental generado anteriormente y lo vuelve a crear nuevamente, esto se realiza todos los dias a las 11pm.


FLISOL 2008 PERU

Abril 30, 2008

El sabado 21 abril se realizo el flisol 2008 en el Peru , para lo cual tuve el gusto de poder participar con una ponencia sobre aula virtuales con java y postgresql en la sede de la Universidad Nacional de Ingenieria , aqui algunas fotos de lo que fue el evento.

flisol2008


Linux convierte lo imposible en posible

Abril 12, 2008

Imagina un lugar,
donde todo es posible;
Donde todo el mundo,
puede volar.
Sé Linux.


Howto Instalación Postgresql 8.3.0 sobre debian

Marzo 6, 2008

Hace tiempo que no posteaba nada por andar un poco atareado ( solo un poco jejee) , bueno ahora posteo la instalación de postgresql 8.3.0 sobre debian etch r1 , espero que le sirva a mas de uno.

1.- Instalando dependencias generales

Desde Apt

apt-get install make gcc g++ bzip2

instalando zlib

tar -xjf zlib-1.2.3.tar.bz2
./configure
make
make install

vi /etc/locale

es_PE ISO-8859-1
es_ES ISO-8859-1
( Para mi caso, puede cambiar de acuerdo al País )2.- Instalación de postgresql 8.3.0 desde fuentes sin modulo readline

tar -xjvf postgresql-8.3.0.tar.bz2
./configure –without-readline
make
make install

Si todo salien bien hasta aqui , entonces ya temos echo lo mas dificil, ahora solo queda configurar el entorno de las bases de datos y levantar el servidor.

3.- Configuracion del entorno

- Creando usuario postgres
adduser postgres

- Creando carpetas para las bases
mkdir /usr/local/pgsql/data

- Inicializando el servidor postgresl
chown postgres /usr/local/pgsql/data
su - postgres
/usr/local/pgsql/bin/initdb -E LATIN1 -D /usr/local/pgsql/data

(Esto es muy importante si quieren inicializar las bd con formato LATIN1 , que soporta caracteres especiales)

/usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data >logfile 2>&1 &

- Cargando el lenguaje plpsql en el template1
/usr/local/pgsql/bin/createlang plpgsql template1

- Creando base de datos test
/usr/local/pgsql/bin/createdb test
/usr/local/pgsql/bin/psql test

- Configurando acceso local o remoto

vi /usr/local/pgsql/data/pg_hba.conf

# “local” is for Unix domain socket connections only
local   all         all                               trust
# IPv4 local connections:
#host    all         all         127.0.0.1/32          trust
# IPv6 local connections:
#host    all         all         ::1/128               trust
host    all         all          240.171.180.0 255.255.255.0     password # acceso a alguna red publica
host    all         all          10.10.4.0 255.255.255.0     password # acceso a alguna dmz
host    all         all          192.168.1.0 255.255.255.0     password # acceso a la lan
host    all         all          0.0.0.0 0.0.0.0     password # esto solo si quieren dar acceso a cualquier red
vi /usr/local/pgsql/data/postgresql.conf

listen_addresses = ‘IPADDESS’ #colocar la ip local
port = 5432
TIPS

- Iniciando el servicio
/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start

- Respaldo de base de datos , por ejemplo test
su - pgsql -c “pg_dump test > /usr/backups/testbd061206-1215.dump

- Restauración
/usr/local/pgsql/bin/psql -d test -f /usr/backups/testbd061206-1215.dump


Dia Debian 2007

Diciembre 29, 2007

El Sábado 15 de diciembre participe con una charla sobre Asterisk en el Dia Debian 2007, cuyo objetivo era difundir el uso de debian y en mi caso demostrar que es una alternativa muy buena para el trabajo con asterisk.

La pasamos muy bien !!

diadebian2007


Registrar Asterisk en Nokia N95

Diciembre 10, 2007

La semana pasada tuve el gusto de recibir mi regalo de navidad adelantado :) , mi esposa me regalo un N95 muchas gracias mi amor !!!!!  , es un smart phone de lo mejor con wifi y camara de 5 mp , con fring ,tengo skype , gtalk , msn.

Bueno se nota que me gusta no ?? :)

En fin lo único que me faltaba era unirlo a mi Asterisk, con fring no tuve mucha suerte pero googleando y gracias a la lista de asteirsk-es  llegue a este proceso que a continuación explico :

1.- Ir en el menú Herramientas / Config / Conexión / Configuracion
SIP

crear un nuevo perfil de la siguiente forma:

- Nombre de Perfil: Asterisk (puedes ponerle cualquier nombre)
- Peril de Servicio: IETF
- Pto. accceso predeterminado: Ninguno
- Nombre de usuario publico : 1010@192.168.1.50 (donde 1010 es mi
extension y 192.168.1.50 es la ip o dominio del servidor asterisk)
- Usar compresion: No
- Registro: Siempre activado
- Usar Seguridad: No

SERVIDOR PROXY : sin configuracion, dejamos todo por defecto.

SERVIDOR REGISTRAR:
- Direc. serv.registrar: 192.168.1.50
- Dominio de seguridad: asterisk ( tal y como se ve hay que poner asterisk)
- nombre de usuario: 1010 (donde 1010 es el nombre de usuario)
- contrasena: 1234 (donde 1234 es la contraseña del usuario 1010)
- tipo de transporte: UDP
- puerto: 5060

2.- Ir en el menú Herramientas / Config / Conexión / Telef. Internet

crear un nuevo perfil que deberá utilizar la configuración SIP creada
en los párrafos anteriores.

3.- Para probar el registro tienes jugar con las opciones de registro

Siempre activado o Solo si es necesario

si tienes algún problema puedes poner en debug el sip en la consola de asterisk con la opcion:

Astrisk> sip debug

Y a disfrutar, ahora solo quiero probar el rendimiento en modo remoto.


Ubuntu Install Party Lima 2007

Octubre 31, 2007

El Sábado 27 de Octubre participe de con una charla sobre virtualizacion de sistemas sobre ubuntu en el Ubuntu Install Party Lima 2007, cuyo objetivo era difundir y mostrar el uso de ubuntu  y en mi caso demostra que es una alternativa valida para el trabajo en entornos empresariales y por supuesto promocionar la nueva versión de Ubuntu “Gusty” (7.10)

Para ello desarrolle esta presentación