Cómo hablar con el servidor IMAP en Shell a través de OpenSSL


Quiero enviar comandos IMAP a través del Terminal Mac OS X al servidor y obtener respuesta. Puedo conectarme al servidor usando esta línea:

openssl s_client -connect imap.gmail.com:993

Y puedo iniciar sesión con éxito:

? LOGIN m.client2 passwordhere

Pero todos los demás comandos no funcionan, no hay respuesta del servidor. He intentado por ejemplo esto:

? LIST "" "*"
? SELECT INBOX
Author: Mansueli, 2013-02-19

4 answers

Encontró un error con la ayuda de un amigo:

openssl s_client -connect imap.gmail.com:993 -crlf

-crlf es crítico

 49
Author: wzbozon,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-02-19 14:37:35

Pruebe esto, esto debería funcionar para usted (reemplace la primera línea por su

openssl s_client -connect imap.gmail.com:993 -crlf

Comando (obligatorio-crlf) y escriba solo la parte azul):

introduzca la descripción de la imagen aquí

 11
Author: Gilles Quenot,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-03-20 12:46:00

Lo primero es que imap está activado en tu cuenta de gmail??? si usted es capaz de iniciar sesión con éxito que significa ssl está funcionando bien. ¿cuál es el código de retorno que obtienes para

A1 INICIAR sesión m.client2 contraseña aquí comando.

¿has probado el comando

Capacidad A1

Pruebe otros comandos alternativos ya que no todos los servidores IMAP implementan todos los comandos IMAP. Me he enfrentado a este problema mientras estaba creando las herramientas de migración de datos para diferentes proveedores como gmail rediffmail yahoo...

 4
Author: Anshul,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-02-20 04:32:24

Algunas opciones más a considerar: Puede estar conectándose a un servidor que ofrece STARTTLS en cuyo caso puede decirle a openssl que continúe negociando esto, debe especificar qué protocolo está utilizando (elija entre pop3, imap, smtp, ftp); la opción -crlf ha sido mencionada por otros, y también encuentro útil la opción -showcerts si estoy depurando una configuración SSL/TLS. Así, por ejemplo, usted podría terminar con,

 openssl s_client -showcerts -connect target.server.name.here:143 -starttls imap

Más opciones con la página de manual relevante si lo tiene disponible,

man s_client
 2
Author: Andrew Richards,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-05-03 21:48:26