Archivos del Mes para Mayo, 2009

Fragmento de los Últimos Escritos

Antes de que la tía Micaela anunciara por telegrama la intención de trasladarse a sus antiguos aposentos, muchos creían que llevaba muerta casi tantos años como su hermano perdido en los canchales inventados por Apolonia. Bajo una llovizna punzante de arcilla la vieron llegar varios días después de lo esperado, tan mastodóntica como la recordaban y aún más inhábil de lo que acaso hubiesen imaginado, incapaz incluso de moverse siquiera para cubrirse del agua que se precipitaba sobre ella. Los pocos que no la conocían de las anteriores visitas se sorprendieron en cambio al hallarla  postrada sobre el jergón de la cama colonial que utilizaron para la mudanza, con el cuerpo puesto en rebeldía hasta la hazaña de desparramarse por los bordes como un volumen licuado.

No se Abrirá la Fosa de Federico García Lorca

Hoy me sobresaltó la noticia. Parece que la justicia no exíste para un determinado periodo de nuestra historia.

Las fosas de las víctimas de la Guerra Civil y el franquismo no se abrirán por el momento en Granada, tras el rechazo del Juzgado de Instrucción número 3 de esta ciudad a la inhibición propuesta por el magistrado de la Audiencia Nacional Baltasar Garzón.

Y es que está visto que en éste, nuestro amado país, no todos los muertos son investigados. A parte del desprecio más absoluto hacia la clase política (por que unos se oponen como si sintieran la culpabilidad y la mala conciencia de la historia y los otros, peores que los unos por no reclamar lo que deben), lo que es innegable es que existe una tremenda laguna legal.

Con la decisión notificada hoy por el juzgado de Granada, se paraliza la apertura de la fosa del poeta Federico García Lorca, asesinado hace 72 años. La Audiencia Nacional tiene ahora la posibilidad de pedir al Tribunal Supremo que resuelva sobre la competencia entre la Audiencia y el Juzgado de Instrucción 3 de Granada.

No sufran más. Si por alguna de esas casualidades usted ha asesinado a alguien en España y no sabe dónde esconder el cadáver, no tiene más que enterrarlo en una de las innumerables fosas comunes. Total, no las van a abrir jamás…. Menuda vergüenza!

Trailer “The Surrogates”


Montaje de un Servidor Ciego con Debian Lenny (3.-Acceso Remoto con SSH)

SSH (Secure SHell) es una forma segura con la que vamos a poder conectarnos a nuestro servidor de manera remota. Podremos conectarnos a el por nuestra red siendo de manera local o desde Internet. De momento nos conformaremos con poder entrar desde otro PC que tengamos en nuestra red ya que todavía no os he explicado como vamos a localizar nuestro servidor desde Internet, todo se andará.

Arrancamos nuestro servidor, nos logeamos como root e instalamos el programa:

#apt-get install ssh

Reiniciamos el servidor:

#reboot

Una vez tengamos reiniciada la maquina vamos a conectarnos a ella desde otro ordenador de nuestra red. Para los que tenemos Linux nos va a ser fácil conectarnos ya que no tenemos que instalar ningún programa ( los Terminales vienen de serie en Linux ) así que abrimos una terminal y ejecutamos …

#ssh root@192.168.0.XXX

Donde root es el usuario y 192.168.0.XXX es la dirección ip fija del servidor. Obtendremos algo así:

estacionuno:~# ssh root@192.168.0.XXX

The authenticity of host ‘192.168.0.XXX (192.168.0.XXX)’ can’t be established.

RSA key fingerprint is ab:86:d1:0b:d6:5d:01:68:1c:d5:ac:11:89:68:13:52.

Are you sure you want to continue connecting (yes/no)?

El sistema Secure SHell genera una llave de autentificación y si nos equivocamos el sistema nos beta para no dejarnos pasar mas. Esta es una de las medidas de seguridad que nos ofrece este programa.

Le indicamos yes

estacionuno:~# ssh root@192.168.0.XXX

The authenticity of host ‘192.168.0.XXX (192.168.0.XXX)’ can’t be established.

RSA key fingerprint is ab:86:d1:0b:d6:5d:01:68:1c:d5:ac:11:89:68:13:52.

Are you sure you want to continue connecting (yes/no)?

Warning: Permanently added ‘192.168.0.XXX’ (RSA) to the list of known hosts.

root@192.168.0.XXX’s password:

Linux estacioncentral 2.6.26-2-686 #1 SMP Thu Mar 26 01:08:11 UTC 2009 i686

The programs included with the Debian GNU/Linux system are free software;

the exact distribution terms for each program are described in the

individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent

permitted by applicable law.

Last login: Sun Apr 26 12:11:06 2009

estacioncentral:~#

Como podéis ver ya estamos dentro de nuestro servidor desde un terminal en nuestro ordenador que usamos habitualmente. Con esto hemos conseguido poder abrirnos una puerta para poder entrar en nuestro servidor bajo modo local y mas adelante veremos como conectarnos a él desde Internet.

Para conectarnos como usuario: ssh usuario@ipdelservidor

UN POCO DE SEGURIDAD CON SSH

Un equipo conectado a internet siempre está expuesto a correr el riesgo de recibir ataques pero podemos disminuirlos de forma descomunal con una buena configuración. Esto implica modificar la mayoría de parámetros por defecto del fichero de configuración con la finalidad de reducir al máximo la posibilidad de que alguien vulnere o consiga el acceso a nuestro sistema sin consentimiento. En caso de no realizar estas modificaciones le estaríamos dando al atacante una gran parte del acertijo que debe resolver para acceder a nuesto equipo.

Lo primero que debemos hacer para poder realizar los cambios es conectarnos al servidor mediante ssh. Podríamos hacerlo de dos formas:

  1. Usando la ip privada estática de nuestra red:
  • Utilizando el usuario root:
    ssh root@192.168.0.xxx -p 22
  • Utilizando el usuario que definimos durante la instalación:
    ssh user@192.168.0.xxx -p 22
  1. Usando nuestra ip pública (normalmente dinámica):
  • Utilizando el usuario root :
    ssh root@xxx.xxx.xxx.xxx -p 22
  • Utilizando el usuario que definimos durante la instalación:
    ssh user@xxx.xxx.xxx.xxx -p 22

El acceso a ssh con el usuario root desde el puerto 22 viene por defecto y por lo tanto es algo que debemos modificar de tal forma que siempre accederemos al servidor con el usuario que creamos durante la instalación del sistema operativo y, una vez dentro, ya accederemos como root para poder realizar cambios.

Una vez dentro, en caso de haver accedido con el usuario que no es root, ejecutamos el siguiente comando para obtener los permisos de éste último:

su

Ahora, abrimos el fichero de configuración de ssh con un editor de texto (yo uso el nano):

nano /etc/ssh/sshd_config

Modificamos el puerto desde el cual accedemos al servidor. Para ello, buscamos la siguiente linea

Port 22

y modificamos el numero del puerto (si queremos, lo podemos modificar por otro):

Port 754

Importante!! Para acceder desde internet, debemos abrir este puerto en el router (el protocolo TCP) para nuestra ip privada (192.168.x.xxx) del servidor. -Ver más adelante-

Buscamos la linea siguiente:

PermitRootLogin yes

La substituimos por lo siguiente para evitar el acceso con el usuario root

PermitRootLogin no

Añadimos lo siguiente al final del fichero:

MaxAuthTries 3MaxStartups 3

MaxAuthTries 3 hace que se cierre la conexión tras 3 intentos fallidos ingresando la contraseña. Tras estos 3 intentos, se puede volver a intentar conectando de nuevo.

MaxStartups 1 limita a 1 el número de pantallas de login simultáneas por ip que podemos tener abiertas para acceder con un usuario. Esto no impide que no podamos tener varias sesiones simultáneas abiertas.

Guardamos los cambios pulsando “ctrl + x” y “S” a contnuación.

Ahora debemos reiniciar el servidor ssh para que los cambios surjan efecto:

/etc/init.d/ssh restart

Ahora, sin cerrar la sesión de ssh, abrimos una nueva consola y volvemos a acceder al servidor con los mismos datos que antes.

ssh root@192.168.0.xxx -p 22

¿Qué observamos?
Observamos que no se nos permite conectarnos ya que no tenemos acceso desde el puerto 22.
Veamos si nos lo permite en el puerto que hemos definido:

ssh root@192.168.0.xxx -p 754

Observamos que ahora si que conecta y nos pide la contraseña. La insertamos y observaremos que nos apracere el mensaje “Permission denied, please try again.”. Esto es porque el usuario root no tiene permisos para acceder.
Ahora solo nos falta por ver que podemos acceder con el usuario que hemos definido antes:

ssh user@192.168.0.xxx -p 754

Observamos que si hemos podido entrar.

¿Por qué hacemos todas estas verificaciones?

Al no cerrar la primera sesión ssh, verificamos que no tengamos ningún problema para acceder al servidor tras hacer los cambios. Nos podríamos encontrar por ejemplo, en el caso de que el servidor estuviera en una red desconocida, que entre nuestro servidor e internet hay un firewall que no nos permite el acceso al servidor por el puerto que definimos o bien que el puerto que hemos puesto no se encuentre abierto.
Es entonces cuando debemos volver a dejar la conexión en el puerto 22, reiniciar ssh y ver si funciona correctamente mediante una nueva consola.

Una vez comprobado que los camios han surgido con éxito, para tener permisos root o para poder realizar cambios sobre el servidor, simplemente tenemos que escribir lo siguiente en consola:

Su

Ahora se nos pide la contraseña de root. La introducimos y ya tendremos permiso para realizar cualquier cambio en el servidor.

Utilidades Debian: Unir Dos Ficheros .AVI

A veces cuando nos descargamos una película viene en dos ficheros y querríamos tenerlo en uno solo. Para ello renombramos los dos ficheros como fragmento1.avi y fragmento2.avi y:

1.-Concatenamos los dos ficheros con el comando cat

$ cp fragmento1.avi peli.avi

$ cat fragmento2.avi >>peli.avi

2.-Recodificamos el fichero usando mencoder

$ mencoder -forceidx -oac copy -ovc copy peli.avi -o peliBuena.avi

Momentos Musicales: Hey Joe -Jimmy Hendrix-

Sin palabras:

Montaje de un Servidor Ciego con Debian Lenny (2.-Configurar una IP Estática)

Los que usamos router a traveś de DHCP, tendremos asignada una ip dinámica. Para poder configurar determinados puertos al servidor necesitamos obtener una ip estática. Para ello, nos logeamos como root y:

#ifconfig

Obtenemos algo así:

eth0 Link encap:Ethernet HWaddr 00:1d:60:5e:8d:65

inet addr:192.168.0.158 Bcast:192.168.0.255 Mask:255.255.255.0

inet6 addr: fe80::21d:60ff:fe5e:8d65/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:36533 errors:0 dropped:0 overruns:0 frame:0

TX packets:34704 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:21752140 (20.7 MiB) TX bytes:3512881 (3.3 MiB)

Interrupt:17

lo Link encap:Local Loopback

inet addr:127.0.0.1 Mask:255.0.0.0

inet6 addr: ::1/128 Scope:Host

UP LOOPBACK RUNNING MTU:16436 Metric:1

RX packets:12 errors:0 dropped:0 overruns:0 frame:0

TX packets:12 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

RX bytes:800 (800.0 B) TX bytes:800 (800.0 B)

Podemos observar que el router nos asigna una ip dinámica de 192.168.0.158 (en mi caso), por lo que ya sabemos que el rango de la ip estática deberá ser 192.168.0.XXX, o lo que es lo mismo, el grupo de trabajo o network será 192.168.0.0. De aquí podemos obtener además la máscara de subred o netmask que en mi caso es 255.255.255.0.

#route

Obtenemos algo así:

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

192.168.0.0 * 255.255.255.0 U 0 0 0 eth0

default 192.168.0.1 0.0.0.0 UG 0 0 0 eth0

De aquí obtenemos la puerta de entace o gateway, que no es otra cosa que la ip del router. En mi caso es 192.168.0.1.

Además necesitaremos los nameserver o servidores de nombre DNS que deben ser proporcionados por la compañía de suministro. Los DNS suelen ser asignados en /etc/resolv.conf, de no adquirirlos automaticamente, hay que agregarlos en dicho archivo de las siguiente forma:

#nano /etc/resolv.conf

Obtenemos algo así:

nameserver 89.29.160.2

nameserver 192.168.0.1

Una vez tengamos estos datos, procederemos a modificar el archivo interfaces no sin antes generar una copia por si las moscas…

#cp /etc/network/interfaces /etc/network/interfacesOK

Luego lo editamos:

#nano /etc/network/interfaces

Obtenemos algo así:

# This file describes the network interfaces available on your system

# and how to activate them. For more information, see interfaces(5).

# The loopback network interface

auto lo

iface lo inet loopback

# The primary network interface

allow-hotplug eth0

iface eth0 inet dhcp

Como se puede observar está configurado para DHCP. Tendremos que coger los anteriores datos obtenidos y modificar el archivo dejándolo de una manera parecida a esto:

# This file describes the network interfaces available on your system

# and how to activate them. For more information, see interfaces(5).

# The loopback network interface

auto lo

iface lo inet loopback

# The primary network interface

auto eth0

iface eth0 inet static

address 192.168.0.XXX # IP del Servidor

netmask 255.255.255.0 # Máscara de Subred

network 192.168.0.0 # Grupo de Trabajo

broadcast 192.168.0.255 # Bcast

gateway 192.168.0.1 # IP del Router

Como se puede apreciar, en mi caso, asigné al servidor la ip 192.168.0.XXX, donde XXX debe ser un número cualquiera distinto a los usados ya por algún otro terminal de la red. Guardamos y salimos. Ahora reiniciamos:

#reboot

Comprobamos que al servidor se le ha asignado la ip estática que definimos:

#ifconfig

eth0 Link encap:Ethernet HWaddr 00:1d:60:5e:8d:65

inet addr:192.168.0.XXX Bcast:192.168.0.255 Mask:255.255.255.0

inet6 addr: fe80::21d:60ff:fe5e:8d65/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:36533 errors:0 dropped:0 overruns:0 frame:0

TX packets:34704 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:21752140 (20.7 MiB) TX bytes:3512881 (3.3 MiB)

Interrupt:17

lo Link encap:Local Loopback

inet addr:127.0.0.1 Mask:255.0.0.0

inet6 addr: ::1/128 Scope:Host

UP LOOPBACK RUNNING MTU:16436 Metric:1

RX packets:12 errors:0 dropped:0 overruns:0 frame:0

TX packets:12 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

RX bytes:800 (800.0 B) TX bytes:800 (800.0 B)

Vemos que se le ha asignado la ip estática definida en el archivo “interfaces”. Ahora ya tenemos el servidor configurado con una ip fija.

Antes de continuar editaremos el archivo “hosts” para pulir el nombre que por defecto sale en la instalación, tras asignar el nombre de la máquina el mismo que el del dominio.

#nano /etc/hosts

Obtenemos lo siguiente:

127.0.0.1 localhost

127.0.1.1 ejemplo.ejemplo.no-ip.info ejemplo

# The following lines are desirable for IPv6 capable hosts

::1 localhost ip6-localhost ip6-loopback

fe00::0 ip6-localnet

ff00::0 ip6-mcastprefix

ff02::1 ip6-allnodes

ff02::2 ip6-allrouters

ff02::3 ip6-allhosts

Como podemos apreciar el nombre sale repetido. No es un tema importante pero sí algo que por estética debemos pulir, ya que luego, en las estadísticas por ejemplo, nos apareceré este nombre. Así pués, el archivo modificado debe quedar:

127.0.0.1 localhost

127.0.1.1 ejemplo.no-ip.info ejemplo

# The following lines are desirable for IPv6 capable hosts

::1 localhost ip6-localhost ip6-loopback

fe00::0 ip6-localnet

ff00::0 ip6-mcastprefix

ff02::1 ip6-allnodes

ff02::2 ip6-allrouters

ff02::3 ip6-allhosts

Algunos Lugares: El Puente de Brooklyn

Dicen que el día en que lo inauguraron murieron varias personas mientras lo cruzaban. Se generó una estampida masiva propiciada por la creencia entre la muchedumbre de que se derrumbaba. Años después parece una historia sorprendente. Sin embargo, en el año en que se concluyeron las obras de este magnífico puente (el mismo año en que se registraba la marca Coca-Cola), curiosamente todavía no se había inventado el automóvil.

 brooklyn

El Puente de Brooklyn (conocido inicialmente como “Puente de Nueva York y Brooklyn”) une los barrios de Manhattan y Brooklyn en la ciudad de Nueva York. Fue construido entre 1870 y 1883 y, en el momento de su inauguración era el puente colgante más grande del mundo (mide 1825 metros de largo, y la luz entre pilas es de 486,3 metros, record de luz hasta que en 1889 se construye el Forth Bridge, con una luz máxima de 521 m. También fue el primero suspendido mediante cables de acero. Desde entonces, se ha convertido en uno de los símbolos más reconocibles de Nueva York.

Utilizado hasta la saciedad por el cine, el puente de Brooklyn destila una familiaridad poco corriente. Caminar por él bajo la claridad de un día soleado es una experiencia tan entrañable que uno puede llegar a imaginar que ya lo cruzó en alguna otra ocasión. Las vistas desde allí son sorprendentes, aunque en mi opinión las mejores son las que se aprecian desde el pequeño parquecito que queda del lado de Brooklyn, justo en el lado contrario del River Café.

Montaje de un Servidor Ciego con Debian Lenny (1.-Instalación de Debian 5 Lenny)

Para la instalación no entraré mucho en profundidad por estimar que alguien que vaya a montar un servidor con debian, por lo menos tendrá algo de experiencia instalándolo. Si no es el caso, siempre se puede recurrir a FORAT como apunté anteriormente.

Lo primero será descargarnos la imagen .iso del CD de instalación de Debian 5 Lenny NETINST desde la página oficial. Luego tendremos que grabarla en un CD (para los ya aventurados en linux esto ya es consabido).

En la instalación deberemos introducir los datos correspondientes al Idioma, País, Distribución de teclado, red, particiones y lo que queremos que se instale. También nos pedirá el “Hostname” o nombre de la máquina, para lo cual vamos a poner “ejemplo” en nuestro caso, o como queramos. Luego nos pide el “domain” o dominio, introduciendo “ejemplo.no-ip.info“.

Tendremos que definir la contraseña de root, un usuario que en mi caso llamaré “usuarioservidor” y la contraseña del usuario, y después llegaremos al momento en que tendremos que definir de entre una lista de elementos, lo que queremos que instale. Como siempre, en nuestro caso tan solo seleccionaremos:

[*]Sistema estándar

standard

Después instala el GUB, esperamos que descargue los archivos de los repositorios, realice el resto de la instalación y reinicie para encontrarnos en una tremenda consola.

Actualizamos el sistema:

#apt-get update

#apt-get upgrade

Instalamos ntp para sincronizar la hora:

#apt-get install ntp

Y con eso tendremos el sistema a punto.

Montaje de un Servidor Ciego con Debian Lenny

Hace mucho tiempo que llevo trabajando en él y hoy al fin decidí compartir mis desventuras sobre cómo montar un servidor ciego. El manual estará basado casi todo en la magnífica guía para la instalación de un Servidor Web de FORAT. Desde aquí quisiera mostrarle mi infinita gratitud por conseguir que personas con conocimientos tan limitados como los míos podamos haber logrado montar un servidor propio. Hace tan solo unos meses jamás podría haber imaginado que montar un servidor fuera a reportarme una de las experiencias informáticas más confortables  y apasionantes.

¿Por qué FORAT? Bueno, siendo objetivos hay que apuntar que la gran diferencia que encontramos en los manuales de FORAT respecto a otros muchos es su maravillosa paciencia para explicar todo desde cero. Es decir, que con estos manuales no sólo encontramos una guía de haga esto y luego esto y obtendrá esto, sino que cualquier paso es explicado detalladamente con una claridad abrumadora. Todo tiene un por qué y luego un como, y en mi opinión, para la gente como yo que andamos bastante escasos de conocimientos de informática y de redes pues es de agradecer. Así es como en realidad se aprende. Si no sabes qué estas haciendo, puedes lograrlo pero en unos días se te habrá olvidado y será como si hubieses perdido el tiempo.

El manual se estructura en 16 apartados, a través de los cuales conseguiremos montar un Servidor Ciego con Debian Lenny, que nos permitirá darle varios usos, desde servidor de archivos para nuestra red privada hasta servidor web. Muchos apartados los he copiado (no se me alteren) directamente de FORAT por considerarlos inmejorables, acomodando tan solo la instalación y la configuración a debian 5 (puesto que el suyo está realizado con debian 4), otros los he modificado bajo mi modesta experiencia. También he ampliado conocimientos en algunos apartados más con documentación recabada en la red, desde aclaraciones hasta curiosidades. La relación final de publicaciones será:

1.-INSTALACIÓN DEBIAN 5 LENNY

2.-CONFIGURAR UNA IP ESTÁTICA

3.-ACCESO REMOTO CON SSH

4.-APACHE WEB SERVER

5.-REDIRECCIONAMIENTO DNS CON NO-IP

6.-ABRIENDO PUERTOS EN EL ROUTER

7.-FTP CON PROFTPD

8.-SOPORTE PARA PHP

9.-BASE DE DATOS MYSQL

10.-INFORMACIÓN DEL SISTEMA CON PHPSYSINFO

11.-ESTADÍSTICAS WEB CON AWSTATS

12.-ENCENDIDO REMOTO CON WAKE ON LAN

13.-SERVIDOR DE ARCHIVOS NFS

14.-SEGURIDAD CON FAIL2BAN

15.-SERVIDOR DNS CON BIND9

16.-INSTALACIÓN DE TORRENTFLUX

Por supuesto que cualquier anotación o comentario en este manual será bienvenido, tanto para posibles errores como para aclaraciones de aspectos no explicados correctamente y que podrían ayudar a alguien más. La finalidad es la misma: aprender. Por eso otra opción muy válida es recurrir al manual original de FORAT cuando algo no quede muy claro, puesto que allí además de poder comparar, existe un amplio abanico de comentarios de los que conseguí aclarar algunas cuestiones oscuras de la instalación. Tal vez esto pueda servir a alguien más. Que aproveche.