Feeds:
Entradas
Comentarios

Posts Tagged ‘Apache’

En el curro usamos bastante Apache Tomcat, un software porculizante donde los haya. Una de sus bonitas costumbres es dejar conexiones TCP “a medias” al bajar el servicio, las cuales impiden volver a levantarlo durante un tiempo que depende directamente del timeout de los estados de TCP.

Una solución es cambiar dicho valor de timeout, pero puede tener consecuencias imprevisibles en otros servidores. Otra solución es matar las conexiones TCP en un determinado puerto, sea cual sea su estado. Para ello, acudiremos a una orden del paquete dsniff: tcpkill.

Un ejemplo concreto, para conexiones a un Tomcat en su puerto por defecto (8080), sería el siguiente:

tcramiro@cormanthor:~$ sudo tcpkill -i eth0 port 8080
tcpkill: listening on eth0 [port 8080]

Read Full Post »

Parece que, ahora sí, el frío comienza a asomar tímidamente su necesaria y reconfortante presencia por la orografía de nuestro querido manchurrón en el mapa. La llegada del navideño y consumista mes de diciembre, además de alegrar a los comerciantes, hace que un nuevo número de la revista @rroba llegue a los kioscos, en este caso el 147. Y, como siempre, encontraréis dos artículos con la firma de un servidor.

El primero es la nueva entrega del Curso de Java Útil, decimoctava del curso y quinta dedicada a nuestro software de cifrado jWadalPasswd. En esta ocasión, veremos cómo podemos guardar la información privada de un usuario del sistema, cifrada y residente en memoria volátil, a un fichero persistente. Para ello, generaremos un fichero de texto codificado en Base64, y con una determinada estructura. Por supuesto, el proceso análogo consistirá en la recuperación de la información almacenada en dicho fichero.

El segundo artículo, titulado Implantación de un servidor Subversion, supone la evolución de aquel publicado en el número 124 sobre la implantación de un servidor CVS. En esta ocasión, en lugar del vetusto CVS, acudiremos al más moderno SVN; y en lugar de utilizar como entorno un sistema Windows, acudiremos a un entorno libre GNU/Linux. Veremos, no sólo como instalar el propio servidor Subversion, sino también cómo permitir su acceso mediante HTTP, gracias al servidor Web Apache y a la tecnología WebDAV.

Y por último, debo anunciar, con gran tristeza y dolor de corazón (y de ojos hogos), que en la portada de este mes aparece la palabra “encriptar“. Nooooooooooooo

@rroba 147

@rroba 147

Read Full Post »

En anteriores ocasiones ya hablé de cómo instalar un servidor CVSNT en Windows XP y en Windows 2008 Server, así que ya iba siendo hora de hablar de su relevo generacional, en varios sentidos. En esta ocasión, vamos a ver cómo instalar un servidor Subversion (también llamado SVN) bajo Ubuntu GNU/Linux. Además, vamos a hacer que su acceso sea mucho más sencillo, al utilizar como protocolo de acceso el propio HTTP, gracias a WebDAV.

  1. Obviamente, lo primero será instalar un servidor Web, en este caso Apache2: sudo apt-get install apache2
  2. Lo siguiente es instalar el software de Subversion: sudo apt-get install subversion
  3. A continuación hay que instalar el módulo de SVN para Apache: sudo apt-get install libapache2-svn
  4. Ahora debemos meternos con el propio repositorio SVN…
    1. Lo primero será crear el propio repositorio: sudo svnadmin create /svn
    2. Cambiaremos el propietario del repositorio al del servidor Web: sudo chown -R www-data.www-data /svn
    3. También cambiaremos los permisos de los archivos, para evitar problemas: sudo chmod -R 770 /svn
  5. Editamos el fichero de configuración “/etc/apache2/mods-enabled/dav_svn.conf” para retocar unos detalles:
    1. Descomentar las líneas “#<Location /svn>” (línea 13) y “#</Location>” (línea 54).
    2. Descomentar la línea “#DAV svn” (línea 16).
    3. Descomentar la línea “#SVNPath /var/lib/svn” (línea 19) y configurarla para que contenga la ruta al repositorio que creamos anteriormente, en nuestro caso “SVNPath /svn”.
    4. Descomentar las líneas 40, 41 y 42, que contienen los parámetros “AuthType”, “AuthName” y “AuthUserFile”.
    5. Añadir, tras las líneas anteriores, una nueva con el texto “Require valid-user”.
  6. Ahora debemos añadir los usuarios.
    1. El primero lo haremos con la siguiente orden: sudo htpasswd -cm /etc/apache2/dav_svn.passwd usuario
    2. Para todos los demás, utilizaremos esta variación: sudo htpasswd -m /etc/apache2/dav_svn.passwd otro_usuario
  7. Por último, reiniciamos el servidor Apache: sudo /etc/init.d/apache2 restart

¡Listo! Ya podemos acceder a nuestro repositorio SVN mediante la URL “http://servidor/svn&#8221;, tanto desde un navegador Web, como desde cualquier IDE de desarrollo.

Read Full Post »

Inmersos como estamos en esta época de vuelta al cole, asco y odio, vuelta al curro -con depresión postvacacional y otras gilipolleces incluidas- y demás; es bueno saber que hay cosas que permanecen inalterables, sin verse afectadas por esas anodinas vicisitudes de la vida diaria. Una de esas cosas, cómo no, es la publicación mensual del número correspondiente de la revista @rroba, que en esta ocasión concreta es el 132. También permanece inmutable el hecho de que podáis encontrar dos artículos míos.

En primer lugar, encontraréis el tercer artículo del Curso de Java Útil, que continúa dedicado al desarrollo de jWadalHash. En esta ocasión, comenzaremos a trabajar con librerías (bibliotecas para los puristas) externas al JDK, y más concretamente con la API GNU Crypto. Veremos cómo migrar el código que implementamos con el paquete java.security a la nueva librería, implementaremos 12 algoritmos de hash diferentes, hablaremos de factorías de objetos, y también trabajaremos con un nuevo e interesante tipo de objeto (los iteradores).

Por otro lado, y como ya hicimos en los números 130 y 129, vamos a trabajar con el servidor web Apache. Esta vez, hablaremos del alojamiento virtual en nuestro servidor favorito, metiéndonos de lleno con Virtual Hosts. Hablaremos de la necesidad que motiva la existencia de esta técnica, cuáles son las ventajas e inconvenientes que derivan de su utilización, el control de acceso y, por supuesto, cómo desplegar todo esto en un servidor Apache bajo Debain GNU/Linux.

También disponéis en este número de la habitual y sempiterna entrega del curso de Hack WiFi de NeTTinG, donde continúa el estudio de la inyección de tráfico para el craqueo del protocolo WEP.

@rroba 132

PD: Se nota que no me apetecía empezar la entrada como todos los meses, ¿eh? ;-)

Read Full Post »

Una vez más, y como cada mes, ya está disponible en los kioscos habituales la entrega correspondiente de la revista @rroba; en este caso el número 130, correspondiente al veraniego mes de julio. Los dos artículos que, en esta ocasión, encontraréis en la revista con la firma de un servidor, son los siguientes.

En primer lugar, y si el mes pasado trasteamos con el servidor web Apache y SSL, este mes seguiremos dando guerra también con Apache, pero en otro frente diferente: en esta ocasión llevamos a cabo la implantación de un aula virtual en un sistema GNU/Linux, estando realizado el proceso completo utilizando software libre. En concreto, el sistema operativo empleado es Debian, el servidor web Apache, el sistema gestor de bases de datos MySQL, el lenguaje PHP y el CMS dokeos.

Por otro lado, y como también anuncié el mes pasado, este mes comienza un nuevo curso en la revista @rroba: el Curso de Java Útil. ¿Por qué Java? Porque creo que es un lenguaje muy sencillo y versátil, que en la actualidad ofrece muy buenos resultados para casi cualquier tarea que deseemos realizar; a pesar de sus inconvenientes (que también tiene los suyos). ¿Por qué útil? Porque ya estamos todos un poco hartos de los típicos cursos o tutoriales que empiezan explicando con pelos y señales la sintaxis, y en los que cuando vamos a picar una línea de código ya no recordamos cómo se declaraba una variable.

Este nuevo curso intenta aplicar una arriesgada filosofía para realizar el acercamiento al lenguaje: en lugar de centrarnos en cómo es el lenguaje y qué podemos hacer con él, vamos a ver qué queremos hacer y cómo podemos hacerlo con el lenguaje. Así, iremos desarrollando aplicaciones que están muy vivas, sobre las que aplicaremos ampliaciones, modificaciones y demás, siempre según lo necesitemos. La primera de estas aplicaciones la he bautizado como jWadalHash, y va a permitirnos trastear con el mundo de los hashes en Java. Este primer artículo es una introducción al curso -declaración de intenciones incluida-, al trabajo que desarrollaremos de ahora en adelante, y a las herramientas que utilizaremos para ello.

También encontraréis en este número, como no podía ser de otra forma, la entrega habitual del curso de Hack WiFi de NeTTinG, donde ilustra el escenario de un hipotético ataque a una red privada.

@rroba 130

Read Full Post »

Ya podéis encontrar en vuestro kiosco favorito, como cada mes, la entrega pertinente de la revista @rroba, en este caso el número 129 correspondiente al mes de junio. Por supuesto, y como también es habitual, encontraréis nuevamente dos artículos míos en ella.

El primer texto trata un tema bastante oportuno, habida cuenta del reciente -y grave- fallo de seguridad del software OpenSSL en Debian. Se trata de un análisis del despliegue de un servidor web Apache, pero asegurando sus comunicaciones con criptografía fuerte (SSL), mediante el sistema OpenSSL. Paradójicamente, y dado que aún cuando el artículo acaba de ser publicado, fue entregado a la redacción un par de semanas antes del anuncio del bug; las claves que aparecen en el mismo son vulnerables, lo cuál podéis comprobar fácilmente mediante el método que ya comenté aquí.

El segundo texto es la entrega habitual del curso de arquitectura de computadores. En este cuarto capítulo del bloque temático dedicado en exclusiva al estudio de las memorias, realizaremos “ampliaciones” a las memorias ROM y RAM que diseñamos los dos meses pasados, mediante las técnicas conocidas como expansión de direcciones y expansión de tamaño de palabra.

Pero este mes hay más que contar sobre el curso de arquitectura, porque aquello de “la entrega habitual” toca a su fin. Efectivamente, y como todos habréis supuesto, este mes se publica la última entrega del curso de arquitectura de computadores. Han sido veintidós entregas, veintidós meses juntos, y más de tres mil líneas de código en lenguaje VHDL (concretamente 3.019 líneas :-P) picadas. Y eso es mucho, lo mires por donde lo mires.

Quiero aprovechar -aunque lo haya hecho también en el propio artículo- para agradecer, desde aquí, el apoyo y el tiempo dedicado por todos vosotros, los lectores. Gracias por leerme, por apoyarme, por seguirme, por mandarme correos con felicitaciones, dudas y sugerencias, y gracias en general por ayudarme a enseñar y aprender. Pero, para que la despedida no tenga un toque amargo, recurriré a un castizo refrán que reza “a Rey muerto, Rey puesto”… porque el mes que viene se inicia un nuevo curso en @rroba, que un servidor realizará. No doy más detalles… ¡os tocará esperar al mes que viene!

Respecto al resto de la revista, que este mes tiene en portada un artículo con un subtítulo muy “¡jódete Einstein!” (“Desgargas p2p a la velocidad de la luz”), podréis encontrar una nueva entrega del curso de Hack WiFi, en la cual NeTTinG continúa hablando sobre inyección de tráfico en el protocolo de cifrado WEP.

@rroba 129

Read Full Post »

A %d blogueros les gusta esto: