¿Cómo está tu MailServer?

MailLlego a mxtoolbox, una web muy útil que nos sirve para indicarnos a que IP resuelve un determinado dominio para su registro MX, es decir, a qué IP irá un correo que enviamos para este determinado dominio.

A parte de esta funcionalidad, que podríamos ejecutar directamente desde la línea de comandos, también nos ofrece un par de servicios si cabe, más interesantes todavía: diagnóstico de nuestro smtp y blacklists. Especialmente interesante el segundo, que consulta si el dominio en cuestión aparece catalogado como spammer en alguna de las 124 blacklist a las que consulta, dando asesoramiento gratuito de cómo actuar en caso de aparecer como tal.

Flickr! Foto por e³°°°

VMWare brigde error

Hoy voy a comentar un problema que me he encontrado configurando una máquina virtual Windows 2003 Server en VMWare Server sobre un Ubuntu Server 8.04 LTS. Básicamente aparecía el siguiente error al iniciar la máquina virtual configurada para conectar en modo “Brigde” (funcionando tanto el modo NAT como el modo “host only”):

Error: “The network bridge on device /dev/vmnet0 is temporarily down because the bridged Ethernet interface is down. The virtual machine may not be able to communicate with the host or with other machines on your network.”

El problema se ha identificado intentando reconfigurar la máquina virtual (con el guest apagado, claro).

[…]

root@Terran:~# vmware-config.pl
Do you want networking for your virtual machines? (yes/no/help) [yes]
Would you prefer to modify your existing networking configuration using the wizard or the editor? (wizard/editor/help) [wizard] editor

The following virtual networks have been defined:

. vmnet0 is bridged to eth0
. vmnet1 is a host-only network on private subnet 172.16.120.0.
. vmnet8 is a NAT network on private subnet 192.168.10.0.
[…]

De la anterior “captura” nos hemos dado cuenta que que vmnet0 estaba asignado a la eth0, así que se ha decidido comprobar si realmente estabamos usando esta eth0 en el host:

root@Terran:~# ifconfig

eth1 Link encap:Ethernet HWaddr 00:50:bf:5a:a6:e7
inet addr:10.10.12.11 Bcast:10.10.12.255 Mask:255.255.255.0
inet6 addr: fe80::250:bfff:fe5a:a6e7/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:563969 errors:0 dropped:0 overruns:0 frame:0
TX packets:475524 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:299505491 (285.6 MB) TX bytes:416600924 (397.3 MB)
Interrupt:16 Base address:0xd800

Efectivamente, VMWare ha configurado por defecto (seguramente por hacer la configuración del mismo sin pararse a leer todos los puntos) la salida Bridge con una interfaz que no era la eth1 que estábamos usando (nuestro servidor tiene más de una tarjeta de red). Hemos reconfigurado este punto en VMWare de la siguiente manera:

Do you want networking for your virtual machines? (yes/no/help) [yes]

Would you prefer to modify your existing networking configuration using the wizard or the editor? (wizard/editor/help) [wizard] editor

The following virtual networks have been defined:

. vmnet0 is bridged to eth0
. vmnet1 is a host-only network on private subnet 172.16.120.0.
. vmnet8 is a NAT network on private subnet 192.168.10.0.

Do you wish to make any changes to the current virtual networks settings?
(yes/no) [no] yes

Which virtual network do you wish to configure? (0-99) 0

The network vmnet0 has been reserved for a bridged network. You may change it, but it is highly recommended that you use it as a bridged network. Are you sure you want to modify it? (yes/no) [no] yes

What type of virtual network do you wish to set vmnet0?
(bridged,hostonly,nat,none) [bridged]

Configuring a bridged network for vmnet0.

Your computer has multiple ethernet network interfaces available: eth1, vmnet1,
vmnet8, eth0. Which one do you want to bridge to vmnet0? [eth0] eth1

The following virtual networks have been defined:

. vmnet0 is bridged to eth1
. vmnet1 is a host-only network on private subnet 172.16.120.0.
. vmnet8 is a NAT network on private subnet 192.168.10.0.

Do you wish to make additional changes to the current virtual networks settings? (yes/no) [yes] no

Conoce la web

Command LineBuscando mis cosillas por Internet, he ido a parar con una página accesible desde la caché de google que explicaba algunos comandos de lo más basico a la vez que interesantes para usar en Internet, si quieres obtener información de un determinado host. Creo que es una buena idea recogerlos y tenerlos aquí ordenados (obviamente hay muchos y muchos y aún muchos más).

  • ping <host>: el rey por excelencia. Si te responde sabrás que actualmente tienes conexión con el host. Si no te responde indicará que o bien está apagado, o bien no responde a pings debido a sus protocolos de seguridad. No lo uses junto a un -f ya que podrías llegar a colapsar el host (metiéndote en problemas). Junto con -a obtendremos la resolución de nombres para una dirección IP.
  • whois <host>: nos debería devolver el resultado de la consulta a la base de datos whois, con información del propietario del dominio del host, el teléfono y mail de contacto, etc. Además, es posible que nos devuelva un listado de DNS que guardan más información respecto al whois del host.
  • finger <usuario@host>: este es el comando que menos conozco. De hecho creo que no lo he usado desde la facultad (y quizá ni eso). Parece ser que este comando nos lo van a rechazar en la mayoría de ocasiones que lo usemos debido a problemas de seguridad, pero nos servirá para obtener información detallada de un usuario de un host (por ejemplo sacado del whois anterior). Usando simplemente <@host> nos listará los usuarios actualmente conectados al sistema. En cualquier caso, no viene instalado por defecto en las versiones de ubuntu que he probado (de la 6.06 en adelante).
  • telnet <host> <puerto>: pensándolo un poco, quizá me he precipitado diciendo que el ping era el rey. Si no ponemos puerto intentará conectar con el 23/TCP por defecto, en caso contrario intentará conectar con el puerto indicado, para comprobar si existe un servicio corriendo y accesible en el host.

Aprovechando el hilo dejo un comando más que no citaba las fuentes originales pero que creo que es bastante útil:

  • nslookup <dominio> <servidorDNS>: este comando preguntará al servidor DNS si es capaz de resolver el dominio que le indicamos. Útil a la hora de configurar firewalls y/o programas que actualizen desde un determinado host, y nos queramos asegurar de que serán capaces de encontrarlo.

Se trata de comandos muy básicos y la mayoría de ellos se pueden encontrar implementados en forma de aplicaciones web para ejecutarlos directamente desde la web. Como siempre, la mejor ayuda es el “man” o en su defecto, google.

Flickr! Foto por Dick Mooran

SAIs Y PCs virtuales

ApagadoTenía ya preparada una entrada sobre como ingeniárselas para apagar de forma correcta tus servidores virtualizados, cuando éstos están conectados a un SAI el cual se apaga automáticamente al detectar un corte de luz prolongado. Cómo no tenía una respuesta había diseñado un script que siguiendo la forma de trabajar de algunos dispositivos de alta disponibilidad, me apagaba los servidores al detectar un corte de luz.

Finalmente, vimos que VMWare Server, (la versión gratuita y totalmente funcional para entornos de producción de servidores virtualizados) ya viene preparado para apagarse de forma correcta, durante el proceso de apagado de la máquina física (host) en la que se aloja, de la misma manera que permite encenderse a la par que su host.

Esta fantástica funcionalidad, está directamente disponible desde la consola de administración de las máquinas virtuales (VMWare Server Console), en las opciones de apagado y encendido (y yo sin encontrarla…), y de esta forma, permite gestionar las máquinas virtuales alojadas en hosts conectados a un SAI, los cuales queremos apagar de forma correcta y segura, y sobretodo de forma automática, ante problemas en la red eléctrica.

Esto soluciona el problema al que le estaba dando vueltas: existen mecanismos de apagado automático de PC’s conectados a un SAI. Pero si estos PC’s contienen a su vez otros PC’s virtualizados en su interior, ¿cómo los apagamos de forma correcta antes de que se apague automáticamente el PC físico que los aloja? Pues con VMWare!

Flickr! Foto por cirox

Telefónica Nemesys

NémesisEn las últimas semanas, he tenido conocimiento de una empresa que se ha visto afectada por la “fantástica” política antispam de Telefónica. Básicamente, Telefónica tiene un Centro llamado Nemesys que tiene la agradable función de banear IP’s que ellos consideran como spammers.

¿Qué es para Nemesys un spammer?
Por ejemplo, el mero hecho de estar en un rango de IP’s en el que se encuentra un spammer “de los de verdad” (aunque en la mayoría de veces sea un zombie y por tanto el usuario no sea consciente) ya te puede convertir así por las buenas, en candidato a ser baneado por Nemesys.

O por ejemplo, si Nemesys considera que estás enviando “demasiado” correo electrónico para la conexión que tienes contratada. Y sin necesidad de enviar ni un solo spam. ¡Y esto es verídico!. En este caso te “ofrecen” a contratar un servicio de telefónica que te asegura no estar filtrado por la sombra de Telefónica Nemesys.

¿Pero qué pasa si Telefónica Nemesys considera que eres un spammer? Pues fácil, fácil. Básicamente, te deniegan la salida de todo correo electrónico. Así de simple. No podrás enviar ningún tipo de correo electrónico saliendo por la IP pública baneada.

Así que además de controlar los correos electrónicos que envías, pueden proceder a denegarte el servicio de envío de mails si ellos lo creen oportuno. Pues nada, avisados estáis.

Flickr! Foto por ♫♪iΛ7 m a₫ ♫♪