Cómo utilizar Telnet para probar la comunicación SMTP
Se aplica a: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007
Última modificación del tema: 2006-11-14
En este tema se explica cómo utilizar Telnet para probar la comunicación SMTP (protocolo simple de transferencia de correo) entre servidores de mensajería. De forma predeterminada, SMTP escucha en el puerto 25. Si utiliza Telnet en el puerto 25, puede indicar los comandos SMTP que se utilizan para conectarse a un servidor SMTP y enviar un mensaje exactamente del mismo modo que si la sesión de Telnet fuera un servidor de mensajería SMTP. Puede ver el éxito o error de cada paso del proceso de conexión y envío de mensajes.
En la lista siguiente se describen los escenarios donde se recomienda utilizar Telnet para probar la comunicación SMTP a o desde los servidores de transporte que existen en la organización de Microsoft Exchange Server:
Conéctese al servidor de transporte perimetral de la organización desde un host ubicado fuera de la red perimetral y envíe un mensaje de prueba.
Conéctese a un servidor de mensajería remoto desde el servidor de transporte perimetral de la organización y envíe un mensaje de prueba.
Antes de empezar
De forma predeterminada, las transferencias de mensajes que tienen lugar entre los servidores de transporte de concentradores están cifradas y autenticadas. Sólo puede usar Telnet en el puerto 25 para enviar mensajes a un servidor de transporte de concentradores interno que tenga un conector de recepción configurado para permitir el acceso anónimo o la autenticación básica para recibir mensajes. Se requiere el acceso anónimo para servidores expuestos a Internet. Cuando envía un mensaje a un conector de recepción que acepta autenticación básica, debe disponer de una utilidad para convertir cadenas de texto utilizadas en el nombre de usuario y la contraseña en formato Base64. Como el nombre de usuario y la contraseña se distinguen fácilmente cuando se utiliza la autenticación básica, no se recomienda este tipo de autenticación sin cifrado.
Los servidores de mensajería SMTP expuestos a Internet de muchas organizaciones están configurados para validar la dirección IP de origen, el nombre de dominio del sistema de nombres de dominio (DNS) correspondiente y la dirección IP de búsqueda inversa de cualquier host de Internet que intenta enviar un mensaje al servidor. Si conecta un equipo de prueba a Internet e intenta enviar un mensaje de prueba a un servidor de mensajería remoto mediante Telnet en el puerto 25, es posible que su mensaje se rechace. Para cumplir los requisitos de seguridad que puede haber impuesto el servidor de mensajería remoto, puede conectarse a este servidor desde el servidor de transporte perimetral. Los dominios aceptados que se han configurado en el servidor de transporte perimetral tienen los registros de intercambio de correo (MX), registros de direcciones (A) y registros de búsqueda inversa de DNS que identifican el servidor de transporte perimetral como un origen de correo electrónico legítimo y que se puede localizar para los dominios aceptados en Internet.
Los procedimientos de este tema muestran cómo usar el cliente Telnet de Microsoft que se incluye con Microsoft Windows Server 2003 y Windows XP. Las versiones anteriores de Windows o clientes Telnet de terceros pueden requerir una sintaxis diferente. Los comandos del cliente Telnet de Windows no distinguen entre mayúsculas y minúsculas. Para mayor claridad, se ponen en mayúsculas los verbos del comando SMTP.
No es posible utilizar la tecla de retroceso una vez se haya conectado al servidor SMTP de destino en la sesión de Telnet. Si comete un error al escribir un comando SMTP, debe presionar la tecla ENTRAR y volver a escribir el comando. Los comandos SMTP no reconocidos o errores de sintaxis tienen como resultado un mensaje de error similar al siguiente:
500 5.3.3 Unrecognized command
Uso de la herramienta de línea de comandos Nslookup para buscar la dirección IP de un servidor SMTP
Para conectarse a un servidor SMTP de destino mediante Telnet en el puerto 25, debe disponer del nombre de dominio completo (FQDN) o la dirección IP del servidor SMTP. El modo más sencillo de buscar esta información es mediante la herramienta de línea de comandos Nslookup, que permite buscar el registro MX del dominio de destino.
Para usar de la herramienta Nslookup con el fin de buscar la dirección IP de un servidor SMTP
En el símbolo del sistema, escriba nslookup y, a continuación, presione ENTRAR. Este comando abre la sesión de Nslookup.
Escriba set type=mx y, a continuación, presione ENTRAR.
Escriba set timeout=20 y, a continuación, presione ENTRAR. De forma predeterminada, los servidores DNS de Windows tienen un límite de tiempo de espera de DNS recurrente de 15 segundos.
Escriba el nombre del dominio cuyo registro MX desea buscar. Por ejemplo, para buscar el registro MX del dominio fabrikam.com, escriba fabrikam.com. y después, presione ENTRAR.
Nota
El punto al final ( . ) indica un FQDN. El uso del punto impide la adición accidental de cualquier sufijo de DNS predeterminado configurado para la red al nombre de dominio.
El resultado del comando será similar al siguiente:
fabrikam.com mx preference=10, mail exchanger = mail1.fabrikam.com fabrikam.com mx preference=20, mail exchanger = mail2.fabrikam.com mail1.fabrikam.com internet address = 192.168.1.10 mail2 fabrikam.com internet address = 192.168.1.20
Puede utilizar cualquier nombre de host o dirección IP asociados a los registros MX como el servidor SMTP de destino. Un valor de preferencia inferior indica un servidor SMTP preferido. Puede utilizar varios registros MX y diferentes valores de preferencia para el equilibrio de carga y la tolerancia a errores.
Cuando esté preparado para finalizar la sesión de Nslookup, escriba exit y, a continuación, presione ENTRAR.
Nota
Las restricciones de proxy de Internet o firewall impuestas en la red interna de su organización pueden impedir el uso de la herramienta Nslookup para realizar consultas en servidores DNS públicos de Internet.
Los registros MX no se requieren estrictamente para el flujo interno de mensajes en una organización de Exchange. Si tiene que buscar el FQDN de cualquier servidor de transporte de concentradores o servidor de transporte perimetral suscrito en la organización, puede utilizar el siguiente comando en el Shell de administración de Exchange: Get-ExchangeServer | where {$.isHubTransportServer -eq $true -or $.isEdgeServer -eq $true} | Format-List Fqdn,ServerRole
Para obtener más información, consulte Get-ExchangeServer y Canalización.
Uso de Telnet en el puerto 25 para probar la comunicación SMTP
El procedimiento de esta sección muestra cómo utilizar Telnet en el puerto 25 para probar la comunicación SMTP. El procedimiento utiliza los valores que se describen en la lista siguiente:
Servidor SMTP de destino mail1.fabrikam.com
Dominio de origen contoso.com
Dirección de correo electrónico del remitente chris@contoso.com
Dirección de correo electrónico del destinatario kate@fabrikam.com
Asunto del mensaje Prueba de Contoso
Cuerpo del mensaje Éste es un mensaje de prueba
Nota
Debe utilizar siempre una dirección de correo electrónico válida, de manera que el destinatario del mensaje no reciba ningún mensaje de informe de no entrega (NDR) generado por el servidor SMTP de destino.
Para usar Telnet en el puerto 25 con el fin de probar la comunicación SMTP
En el símbolo del sistema, escriba telnet y, a continuación, presione ENTRAR. Este comando abre la sesión de Telnet.
Escriba set localecho y, a continuación, presione ENTRAR. Este comando opcional le permite ver los caracteres conforme los escribe. Es posible que sea necesaria esta configuración en algunos servidores SMTP.
Escriba set logfile <nombreDeArchivo>. Este comando opcional permite registrar la sesión de Telnet en el archivo de registro especificado. Si sólo especifica un nombre de archivo, la ubicación del archivo de registro es el directorio de trabajo actual. Si especifica una ruta de acceso y un nombre de archivo, la ruta debe encontrarse en el equipo local. Tanto la ruta como el nombre de archivo que especifique deben indicarse en formato Microsoft DOS 8.3. La ruta de acceso que especifique debe existir. Si especifica un archivo de registro que no existe, éste se creará.
Escriba open mail1.fabrikam.com 25 y, a continuación, presione ENTRAR.
Escriba EHLO contoso.com y, a continuación, presione ENTRAR.
Escriba MAIL FROM:chris@contoso.com y, a continuación, presione ENTRAR.
Escriba RCPT TO:kate@fabrikam.com NOTIFY=success,failure y, a continuación, presione ENTRAR. El comando NOTIFY opcional define los mensajes particulares de notificación de estado de entrega (DSN) que el servidor SMTP de destino debe proporcionar al remitente. Los mensajes de DSN se definen en RFC 1891. En este caso, se le solicita un mensaje de DSN para la entrega de mensaje correcta o errónea.
Escriba DATA y, a continuación, presione ENTRAR. Recibirá una respuesta similar a la siguiente:
354 Start mail input; end with <CLRF>.<CLRF>
EscribaAsunto: Prueba de Contoso y, a continuación, presione ENTRAR.
Presione ENTRAR. RFC 2822 requiere una línea en blanco entre el campo de encabezado de
Subject:
y el cuerpo del mensaje.Escriba Éste es un mensaje de prueba y, a continuación, presione ENTRAR.
Presione ENTRAR, escriba un punto ( . ) y, a continuación, presione ENTRAR. Recibirá una respuesta similar a la siguiente:
250 2.6.0 <GUID> Queued mail for delivery
Para desconectarse del servidor SMTP de destino, escribaQUIT y, a continuación, presione ENTRAR. Recibirá una respuesta similar a la siguiente:
221 2.0.0 Service closing transmission channel
Para cerrar la sesión de Telnet, escribaquit y, a continuación, presione ENTRAR.
Interpretación de los resultados de una sesión de Telnet con un servidor SMTP
En esta sección se proporcionan detalles de las respuestas que pueden proporcionarse a los comandos indicados en el ejemplo anterior.
Nota
Los códigos de repuesta SMTP de 3 dígitos definidos en RFC 2821 son los mismos para todos los servidores de mensajería SMTP. Las descripciones de texto pueden diferir ligeramente en algunos servidores de mensajería SMTP. En este ejemplo, en el equipo de destino se ejecuta Exchange Server 2007.
Open mail1.fabrikam.com 25
Respuesta correcta 220 mail1.fabrikam.com Microsoft ESMTP MAIL Service ready at <day-date-time>
Respuesta de error Connecting to mail1.fabrikam.com...Could not open connection to the host, on port 25: Connect failed
Posibles motivos del error
El servicio SMTP de destino no está disponible.
Existen restricciones en el firewall de destino.
Existen restricciones en el firewall de origen.
Se especificó una dirección IP o un FQDN incorrecto para el servidor SMTP de destino.
Se especificó un número de puerto incorrecto.
EHLO contoso.com
Respuesta correcta 250 mail1.fabrikam.com Hello [<sourceIPaddress>]
Respuesta de error 501 5.5.4 Invalid domain name
Posibles motivos del error Existen caracteres no válidos en el nombre de dominio. Asimismo, también pueden existir restricciones de conexión en el servidor SMTP de destino.
Nota
EHLO es el verbo de Protocolo simple extendido de transferencia de mensajes (ESMTP) definido en RFC 2821. Los servidores ESMTP pueden anunciar sus capacidades durante la conexión inicial. Estas capacidades incluyen el tamaño de mensaje máximo aceptado y los métodos de autenticación admitidos. HELO es el verbo SMTP más antiguo definido en RFC 821. La mayoría de los servidores de mensajería SMTP admiten ESMTP y EHLO.
MAIL FROM:chris@contoso.com
Respuesta correcta 250 2.1.0 Sender OK
Respuesta de error 550 5.1.7 Invalid address
Posibles motivos del error Hay un error de sintaxis en la dirección de correo electrónico del remitente.
Respuesta de error 530 5.7.1 Client was not authenticated
Posibles motivos del error El servidor de destino no acepta envíos de mensajes anónimos. Recibe este error si intenta utilizar Telnet para enviar un mensaje directamente a un servidor de transporte de concentradores.
RCPT TO:kate@fabrikam.com NOTIFY=success,failure
Respuesta correcta 250 2.1.5 Recipient OK
Respuesta de error 550 5.1.1 User unknown
Posibles motivos del error El destinatario especificado existe en la organización.
Para obtener más información
Para obtener más información, consulte los siguientes temas: