1ª Jornada Tecnologica Vallfogona del Ripolles
Este año se organizan las primeras jornadas tecnologicas de Vallfogona de Ripollés, los días 12, 13 y 14 de octubre.
Se ofrecerán talleres, charlas, pases de películas, sesiones de música a cargo de dj’s, etc… Este evento se hará gracias a la colaboración de diferentes personas y asociaciones, como la gente de Ziberzone, la fundación Televall, La fundación SISOSCAT, el equipo de desarrolladores de eyeOS, la escuela del pueblo, el Ayuntamiento , La societat de pescadors que es la promotora (roro es el presi xD), JKL Systems, diferentes particularidades, la secretaria de accio ciutadana y el consell comarcal.
Todos los actos son gratuitos, el programa aun no esta cerrado del todo ya que aun quedan unos días para terminar de concretar diferentes aspectos.
Para mas información podéis acceder a la pagina de las Jornadas.
Para los mas aventureros tenemos a su disposición los vestuarios de la zona polideportiva, que se habilitaran para dormir. habría que traer saco de dormir o similar.
Los ponentes confirmados disprondran de una casa de turismo rural para su alojamiento y un ticket para la comida.
A todos los asistentes se les obsequiara con una liveCD
Cabe la posibilidad de hacer una visita guiada a la Font de la Tosca y al Torrent de la Masica, de una belleza espectacular, ubicado
entre un bosque de hayas y pinos rojos virgen.
Multi Ping con fping
Fping es una herramienta que me ha llamado la atención por el hecho que te permite enumerar una red en poco tiempo.
fping es una mezcla entre mtr y ping , hace pings constantemente a un rango de ips
Usando fping
Si no tienes fping instalado lo mas probable es que este en los repositorios de tu distribucion favorita
En Ubuntu por ejemplo está instalada de serie de todos modos
$ apt-cache search fping
fping – sends ICMP ECHO_REQUEST packets to network hosts
Muestra claramente que existe en los repos para instalar como siempre.
# apt-get install fping
Ejemplos:
~$ fping -s -g 192.168.1.1 192.168.1.200
192.168.1.1 is alive
192.168.1.33 is alive
ICMP Host Unreachable from 192.168.1.33 for ICMP Echo sent to 192.168.1.2
. . .
200 targets
2 alive
198 unreachable
0 unknown addresses
0 timeouts (waiting for response)
100 ICMP Echos sent
2 ICMP Echo Replies received
50 other ICMP received
1.54 ms (min round trip time)
1.79 ms (avg round trip time)
2.05 ms (max round trip time)
3.424 sec (elapsed real time)
Yo este comando lo veo muy util si ponemos una impresora en la red y no sabemos la ip puede , reducirnos mucho el campo de búsqueda.
Estresando a Apache

Cuando instalamos un apache en determinadas maquinas nos preguntamos cuanto aguantara , para eso existe la utilidad ab
Instalando ab
# apt-get install apache2-utils
Usando ab
En este caso realizaremos un benchmark de google.es
cesar@cesar-laptop:~$ ab -n 100 google.es/
This is ApacheBench, Version 2.0.40-dev <$Revision: 1.146 $> apache-2.0
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright 2006 The Apache Software Foundation, http://www.apache.org/
Benchmarking google.es (be patient).....done
Server Software: gws
Server Hostname: google.es
Server Port: 80
Document Path: /
Document Length: 218 bytes
Concurrency Level: 1
Time taken for tests: 24.610383 seconds
Complete requests: 100
Failed requests: 0
Write errors: 0
Non-2xx responses: 100
Total transferred: 55700 bytes
HTML transferred: 21800 bytes
Requests per second: 4.06 [#/sec] (mean)
Time per request: 246.104 [ms] (mean)
Time per request: 246.104 [ms] (mean, across all concurrent requests)
Transfer rate: 2.19 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 100 104 1.8 104 113
Processing: 108 141 82.0 112 541
Waiting: 108 140 81.9 111 540
Total: 211 245 82.1 216 644
Percentage of the requests served within a certain time (ms)
50% 216
66% 218
75% 226
80% 236
90% 329
95% 457
98% 598
99% 644
100% 644 (longest request)
Unix TimeLine
Nuevo Dominio
Hola , aprovechando las Ofertas que hace la gente de 1and1 he decidido crear un dominio replicando este blog este blog segira actualizandose y creare una copia en
www.tuxed.es
de manera que si wordpress fallase tendriais disponible una copia en el otro blog.
Un saludo y Viva la redundancia.
Integración de Clamav y DSPAM a nuestro postfix
En un articulo anterior concretamente
Servidor de Correo Postfix con Courier y soporte Mysql
Instale un Servidor de correo Integrado en una Base de Datos Mysql , en este articulo quiero ampliar las funcionalidades del servidor con un filtro antispam que el mismo usuario podra controlar , y el antivirus Clamav.
Instalación de DSPAM
Para instalar dspam necesitaremos los repositorios de Volatile
# echo deb http://volatile.debian.org/debian-volatile etch/volatile main contrib non-free >> /etc/apt/sources.list
Una vez instalados los sources autenticamos el repositorio.
# wget http://www.debian.org/volatile/etch-volatile.asc -O- | apt-key add –
Actualizamos los repositorios
# apt-get update
Instalando el Software
# apt-get install dspam dspam-doc libdspam7-drv-mysql
Nota:
- Cuando te pregunte por libdspam7-drv-mysql = YES
- Si te pregunta password para libdspam7-drv-mysql le das a OK
Configurando DSPAM
/etc/dspam/dspam.conf
Cambialo para que quede así:
StorageDriver /usr/lib/dspam/libmysql_drv.so DeliveryHost 127.0.0.1 DeliveryPort 10026 DeliveryIdent localhost DeliveryProto SMTP Preference "spamSubject=SPAM" Opt out TrackSources spam virus ParseToHeaders on ChangeModeOnParse on ChangeUserOnParse off ServerPID /var/run/dspam.pid ServerMode auto ServerPass.Relay1 "secret" ServerParameters "--deliver=innocent" ServerIdent "localhost.localdomain" ServerDomainSocketPath "/var/spool/postfix/var/run/dspam.sock" ClientHost /var/spool/postfix/var/run/dspam.sock ClientIdent "secret@Relay1"
Activando la configuración para todos los Usuarios
/var/spool/dspam/group
Tiene de quedar así:
dspam:shared:*.domain.com
Donde Pone domain.com lo remplazaremos por nuestro dominio.
Activando DSPAM
Para activar DSPAM modificaremos el fichero /etc/default/dspam
cambiando START=no por START=yes
Una vez hecha la modificación iniciamos DSPAM
# /etc/init.d/dspam start
Configurando Postfix
Ahora configuraremos Postfix de manera que integre dspam
modificamos el archivo /etc/postfix/master.cf
Antes:
smtp inet n - - - - smtpd
Despues:
smtp inet n - - - - smtpd
-o content_filter=lmtp:unix:/var/run/dspam.sock
Configurando postfix para reinjeccion a DSPAM
127.0.0.1:10026 inet n - - - - smtpd -o content_filter= -o receive_override_options=no_unknown_recipient_checks,no_header_body_checks -o smtpd_helo_restrictions= -o smtpd_client_restrictions= -o smtpd_sender_restrictions= -o smtpd_recipient_restrictions=permit_mynetworks,reject -o mynetworks=127.0.0.0/8
-o smtpd_authorized_xforward_hosts=127.0.0.0/8
Una vez configurado reiniciamos postfix
# /etc/init.d/postfix restart
Comprobando si Postfix carga los modulos
# telnet localhost 25
Trying 127.0.0.1…
Connected to localhost.localdomain.
Escape character is ‘^]’.
220 debian.domain.com ESMTP Postfix (Debian/GNU)
ehlo localhost
250-debian.domain.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
quit
Creando nuesto primer usuario.
Es mentira ya que lo creemos en el anterior articulo x’D
# mysql -u root -p
mysql>USE mail;
mysql> INSERT INTO `domains` (`domain`) VALUES (‘domain.com’);
INSERT INTO `users` (`email`, `password`, `quota`) VALUES (‘test@example.com’, ENCRYPT(‘userpassword’), 10485760);
Probando DSPAM
Si no tienes bzip2 instalado normalmente esta en la distro pero por si acaso
# apt-get install bzip2
Descargamos train-mails:
# cd /tmp
# wget http://spamassassin.apache.org/publiccorpus/20050311_spam_2.tar.bz2
# wget http://spamassassin.apache.org/publiccorpus/20030228_easy_ham_2.tar.bz2
# tar xvfj 20050311_spam_2.tar.bz2
# tar xvfj 20030228_easy_ham_2.tar.bz2
# dspam_train test spam_2/ easy_ham_2/
Con esto probamos con una lista de spams si es efectivo dspam.
Instalando y configurando ClamAV
# apt-get install clamav-daemon
Una vez instalado pasamos ha modificar el archivo de configuración
/etc/clamav/clamd.conf
Comentamos la linia que pone
LocalSocket /var/run/clamav/clamd.ctl
quedando así :
# LocalSocket /var/run/clamav/clamd.ctl
Una vez comentado añadimos la linia:
TCPSocket 3310Reiniciamos Clamav para que los cambios tengan efecto:
# /etc/init.d/clamav-daemon restart
Integrando ClamAV en DSPAM
Modificamos el archivo /etc/dspam/dspam.conf añadiendo la siguiente directiva:
ClamAVPort 3310
ClamAVHost 127.0.0.1
ClamAVResponse reject
Reiniciamos DSPAM
# /etc/init.d/dspam restart
Integrando DSPAM WebUI en Apache
Con el fin de que los usuarios puedan manejar el spam configuraremos un pequeño portal, que podran administrar nuestros usuarios.
Instalamos la administracion web.
# apt-get install dspam-webfrontend
También es necesario mod_auth_mysql de esta manera podran manejar los usuarios almacenados en la base de datos su propio espam.
# apt-get install mod_auth_mysql
Creamos el Fichero de accesso .htaccess con soporte para auth_mysql
# cd /var/www/dspam
Justo aqui creamos el fichero .htaccess con el siguiente contenido:
AuthName "DSPAM Authentication" AuthType Basic AuthBasicAuthoritative Off Auth_MySQL_Host localhost AuthMySQL_User usuario
AuthMySQL_Password Contraseña
AuthMySQL_DB mail AuthMySQL_Password_Table users AuthMySQL_Username_Field email AuthMySQL_Password_Field password AuthMySQL_Encrypted_Passwords on AuthMySQL on AuthMySQL_Authoritative On require valid-user
Las partes que he puesto en negrita son el usuario y pass de acceso a la base de datos.
Creamos un Vhost /etc/apache2/apache2.conf
<VirtualHost>
DocumentRoot “/var/www/dspam”
ServerName dspam.domain.com
SuexecUserGroup dspam dspam
<Directory /var/www/dspam>
Options ExecCGI
Options -Indexes
Addhandler cgi-script .cgi
DirectoryIndex dspam.cgi
</Directory>
</VirtualHost>
Lógicamente modificaremos el Dominio por el nuestro.
Nota:Para activar el suexec haremos lo siguiente.
# cd /etc/apache2/mods-enabled
# ln -s ../mods-available/suexec.load
Reiniciamos Apache2
# /etc/init.d/apache2 restart
ahora ya podremos entrar en el dominio:
http://dspam.domain.com en el qual podremos administrar el spam.
Captura:

Espero que os haya gustado.
AjaxTerm la consola web
AjaxTerm es una aplicación escrita en Python que proporciona una shell web en Ajax a un puerto dado , lo que nos permite acceso remoto a una shell desde cualquier lugar que haya un navegador.
Instalación
# apt-get install ajaxterm
Cambiando el Puerto
para cambiar el puerto modificaremos el script de inicio /etc/init.d/ajaxterm
la variable PORT=
por ejemplo en nuestra red esta chapado el puerto 22 de ssh , nos encontramos en un cibercafe y nos llaman que se ha estropeado el servidor de turno.
Podriamos modificar con PORT=8022 apuntaríamos a la ip y voila
Servidor de Correo Interno con DeskNow

Desknow , es un sistema de Correo Colaborativo capaz de remplazar microsoft Exchange , de hecho es bastante facil de implantar y da muchas mas funcionalidades:
- Calendario compartido
- Foros
- Chat Corporativo
- Carpetas Compartidas
- Antispam
- Posibilidad de Configurar una cuenta externa
- Conexion Wap
- Soporte para Active Directory y Ldap
- Contactos Locales y Compartidos
- Grupos y permisos
- Listas de Correo
- Antivirus
I algunas Cosas mas que puedes consultar en Features
Instalación de Desknow
Dependencias:
- Mysql
- Java J2SE SDK
- mysql-connector-java-5.0.7
Instalando Mysql
# apt-get install mysql-server
Instalando J2SE SDK
# mkdir /usr/java && cd /usr/java
# wget http://www.hshsoft.de/XMeld/jdk-1_5_0_08-linux-i586.bin
# chmod +x jdk-1_5_0_08-linux-i586.bin ; ./*.bin
Instalando Desknow
# cd /opt ; wget http://www.desknow.com/downloads/desknow.tar.gz
# tar -xvf desknow.tar.gz ; cd desknow_server
Moviendo Ficheros
# mv desknow /var
# mv desknowdata /var
# mv etc/desknow.conf /etc
# mv etc/init.d/desknow /etc/init.d
Ahora editamos /etc/desknow.con y modificamos la Variable.
JAVA_HOME=” “
Por la ruta donde instalemos JDK en nuestro caso quedando asi:
JAVA_HOME=”/usr/java/jdk1.5.0_08″
Copiamos las Librerias a Jre
# cd /opt/desknow_server
# cp -f jce/150/*.jar /usr/java/jdk1.5.0_08/jre/lib/security
Creando la Configuración
En mi caso lo hago en modo texto ya que normalmente los servidores los monto en modo texto.
#/var/desknow/bin/configconsole.sh
1: All
2: 0:0:0:0:0:0:0:1%1
3: 127.0.0.1
4: 192.168.1.34
5: fe80:0:0:0:20c:29ff:fe8b:8294%2
IP address [1]: 4
Seleccionamos 4 para que funcione en nuestra red
Select what HTTP ports the server will be using. Web browsers will use these ports to connect to DeskNow.
HTTP [81]: 8080
Aquí Indicamos el Puerto por ejemplo 8080 .
HTTPS [443]:
Si no hay ningun servidor Web con SSL corriendo En esa maquina se puede dejar tal qual.
Do you want to enable instant messaging?
Enable instant messaging [yes]:
Le decimos Yes si queremos funciones de Chat Interno.
Port for unencrypted instant messaging [5222]: [ENTER]
Port for encrypted (SSL) instant messaging [5223]: [ENTER]
Enable instant messaging over HTTP (to traverse firewalls) [yes]: [ENTER]
Instalando Conector Mysql – Java
# wget -c ftp://ftp.ntua.gr/mirror/mysql/Downloads/Connector-J/mysql-connector-java-5.0.7.tar.gz
# tar zxfv mysql-connector-java-5.0.7.tar.gz
# cd mysql-connector-java-5.0.7/
# cp *.jar /var/desknowdata/lib
Preparando la Base de Datos
# mysql -u root -p
mysql>update user set Password=PASSWORD(‘nueva_pass’) where user=’root’;
mysql> FLUSH PRIVILEGES;
mysql> quit
Ahora pasamos a Crear
Asi Crearemos una password para el usuario Root
Creacion de la base de datos Desknow
#mysql -u root -p
Enter Password: (aquí va la password que cambiemos)
mysql> create database desknow character set utf8;
Creamos Usuario desknowserver y le damos permisos.
mysql> grant all privileges on desknow.* to desknowserver@localhost identified by ‘la_password’;
mysql> grant all privileges on desknow.* to desknowserver@’%’ identified by ‘la_password’;
Donde la la_password es la contraseña que le asignemos
Muy Bien , ahora ya tenemos Todo preparado es hora de iniciar sesion
abrimos nuestro navegador favorito y apuntamos ha https://ip_servidor
Nos pedira el Nombre de usuario de la DB la password y la base de datos
BD:desknow
usuario:desknowserver
password: la que hayas puesto en identified by ‘la_password’;
Ahora nos cargara el desknow el usuario es Admin y la password de la DB
En este momento podremos crear usuarios etc.
Capturas:
Pues hasta aquí el articulo ya se ha acabado si teneis alguna duda no olvidéis postear en el foro muy amablemente os puedo aconsejar.
Transferir archivos desde consola via web
Quizas sea la ley de Murphi , pero siempre que tienes de recuperar un sistema te encuentras que el cd de rescate que usas no tiene samba , que el servidor no te tiene en hots.allow o simplemente si te gusta experimentar tecnicas nuevas .
En este tip os enseñare a montar un servidor web usando unas instrucciones de la consola podeis guardarlo en un archivo y llevarlo en el pendrive es realmente util para recuperacion de archivos.
#!/bin/bash
:;while [ $? -eq 0 ];do nc -vlp 8080 -c'(r=read;e=echo;$r a b c;z=$r;while [ ${#z} -gt 2 ];do $r z;done;f=`$e $b|sed 's/[^a-z0-9_.-]//gi'`;h="HTTP/1.0";o="$h 200 OK\r\n";c="Content";if [ -z $f ];then($e $o;ls|(while $r n;do if [ -f "$n" ]; then $e "<a href=\"/$n\">`ls -gh $n`</a><br>";fi;done););elif [ -f $f ];then $e -e "$o$c-Type: `file -ib $f`\n$c-Length: `stat -c%s $f`\n";cat $f;else $e -e "$h 404 Not Found\n\n404\n";fi)';done
Ahora simplemente nos conectariamos a la ip del host que se esta ejecutando al puerto 8080
Screenshot:
Descargar script
Configuración de un sistema de Video Vigilancia

En esta ocasión nos valdremos de Apache2 + una Cámara de vídeo vigilancia concretamente la C54NETCAM de Conceptronic (es la que está en la imagen de arriba.
Puesto que la interface de la camara da accesso a la configuracion y no nos interesa usaremos apache y una pequeña pagina en html que cargara el applet de la camara.
Cargar la Camara desde Apache2
Para hacer que la camara salga en apache.
- Crear directorio en /var/www/seccam ( # mkdir /var/www/seccam)
- nano /var/www/seccam/index.html
- Copiamos en index.html:
<html>
<body bgcolor=”black”>
<center><h1><font color=”white”>Security System</font></h1></center>
<center><h3><font color=”white”>Entrada Principal</font></h3></center>
<br/>
<center>
<TABLE>
<tr>
<td>
<APPLET name=”cvcs” CODEBASE=”http://192.168.1.246:80/” CODE=”xplug.class” WIDTH=640 HEIGHT=480>
<param name=”RemotePort” value=80>
<param name=”Timeout” value=5000>
<param name=”RotateAngle” value=0>
<param name=”PreviewFrameRate” value=2>
<param name=”DeviceSerialNo” value=”YWRtaW46aGV4YWRlY2k=”>
</APPLET>
</td>
</tr>
</TABLE>
</center>
</body>
</html>
La opción marcada en rojo tendriamos de cambiar por ip y puerto
Pantalla Generada

Autenticación del Directorio
Ahora que tenemos la pagina colgada es el momento de protegerla con Password.
Crearemos la siguiente directiva en /etc/apache2/apache2.conf
<Directory /var/www/seccam>
AllowOverride All
</Directory>
Creando el User y Pass
# cd /var/www/seccam
# htpasswd -c .htpasswd Admin
Este comando nos pedirá la password que usaremos en la web.
Creando .htaccess
Creamos el fichero /var/www/seccam/.htaccess con el siguiente contenido:
AuthName “Autentification Required”
AuthType Basic
AuthUserFile /var/www/seccam/.htpasswd
require valid-user
Una vez acabado reiniciamos apache2
# /etc/init.d/apache2 restart
Si todo a Salido bien al intentar acceder a /seccam nos pedirá autenticación

Creando un Dominio para la ip Dinamica
Puesto que la mayoría de mortales tenemos ip dinamica
Crearemos una cuenta en no-ip , una vez tengamos cuenta instalamos no-ip
# apt-get install no-ip
Una vez instalado , activamos no-ip
# no-ip -C
El siguiente comando nos pide los datos de nuestra cuenta correo , password y nombre de host.
Una vez acabado y tras mapear el puerto 80 de apache en el router podremos acceder a la camara de la siguiente manera http://host.no-ip.org/seccam
donde host es el nombre que le dimos.
Espero que sea de vuestra utilidad.





