Averiguar dominio final de un nombre de dominio alternativo

Recientemente me he encontrado en la situación de tener que usar un SMTP para mandar emails. En estos casos el servicio suele estar vinculado a un dominio que apunta a la maquina donde se encuentra corriendo el servidor SMTP corriendo el servicio. Suele ser cada vez más muy habitual que además estos  servicios estén securizados con SSL para proteger las conexiones.

Por otro lado, puede darse que para un dominio se tengan dominios alternativos que aseguren el acceso a la máquina, que en mi caso, es la que corre el servidor SMTP. Esto asegura que se pueda acceder a la máquina usando distintos dominios que se proveen desde distintos proveedores de dominio. Esta no es la única situación que lo justifica, sino que también puede hacerse porque un proveedor de servicios ofrezca personalización de los servicios con el dominio del cliente, permitiendo que una empresa o un usuario particular, tenga dichos servicios usando su propio dominio.

Aquí  es donde ocurre el problema, porque los certificados SSL para cifrar las conesxiones se asocian a un dominio y la redirección de dominios alternativos  provoca que no coincida el certificado del dominio final con el dominio alternativo con el que se accede, dando como resultado un error del tipo:

Error: Hostname/IP doesn't match certificate's altnames: "Host: smtp.mascandobits.es. is not in the cert's altnames: DNS:*.servidoresdns.net, DNS:servidoresdns.net"

Los certificados SSL se asocian a un único demonio por normal general, aunque es posible generar certificados que abarquen varios dominios (dominio + dominios alternativos).

Si tienes este problema y quieres seguir usando la conexión segura con SSL, tu única opción (si has contratado con el proveedor de servicios) es averiguar el dominio principal para el que es válido el certificado. Normalmente va a ser el del dominio final.

Desde Linux esta tarea es bien sencilla, basta con usar primero el comando “nslookup” para comprobar la dirección IP final, obteniendo cómo resuelve el DNS dicho dominio. Pongamos un ejemplo de un servicicio SMTP con dominio “smtp.mascandobits.es“:

nslookup smtp.mascandobits.es
Server:         208.67.222.223
Address:        208.67.222.223#53

Non-authoritative answer:
Name:   smtp.mascandobits.es
Address: 217.76.127.101

En la parte de “Address” de la sección “Non-authoritative answer” obtenemos la dirección IP final. Con esa IP aplicamos el comando “host” que permite resolver de manera inversa el dominio. Es decir, pasar de una IP a un nombre de dominio.

host 217.76.127.101
100.128.76.218.in-addr.arpa domain name pointer smtp-13.servidoresdns.net.

En este ejemplo el comando nos resuelve que el dominio principal que apunta a esa IP es “smtp-13.servidoresdns.net“. Este dominio resulta ser el que coincide con el certificado SSL, solventando el error que se presentaba al inicio de la entrada.

Alguno pensará que para qué complicarse tanto si se puede obtener la IP final de la máquina que da el servicio. La respuesta es bien sencilla. En un dominio se puede redirigir hacia donde apunta, y de manera transparente un cambio de IP en la máquina que aloja el servicio, no conlleva el cambiar el nombre de dominio hacia donde se apunta el servicio. Es decir, basta con que el dominio apunte a la nueva IP donde se encuentra la máquina.

854 Visitas Totales 2 Visitas para Hoy

One response on “Averiguar dominio final de un nombre de dominio alternativo

  1. Para ti todo es fácil usando Linus resuelves el problema para los demás nos vale con encender el ordenador y funcione . A intentar seguir mejorando

Deja un comentario