Comment parler au serveur IMAP dans Shell via OpenSSL

Je veux envoyer des commandes IMAP via le Terminal Mac OS X au serveur et obtenir une réponse. Je peux me connecter au serveur en utilisant cette ligne:

openssl s_client -connect imap.gmail.com:993

Et je peux me connecter avec succès:

? LOGIN m.client2 passwordhere

Mais toutes les autres commandes ne fonctionnent pas, aucune réponse du serveur. J'ai essayé par exemple ceci:

? LIST "" "*"
? SELECT INBOX
31
demandé sur Mansueli 2013-02-19 18:07:00

4 réponses

Trouvé une erreur à l'aide d'un ami:

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

-crlf est essentiel

49
répondu wzbozon 2013-02-19 14:37:35

Essayez ceci, cela devrait fonctionner pour vous (remplacez la première ligne par votre

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

Commande (obligatoire-crlf) & tapez seulement la partie bleue):

entrez la description de l'image ici

11
répondu Gilles Quenot 2018-03-20 12:46:00

Tout d'abord, imap est-il activé sur votre compte gmail??? si vous êtes en mesure de vous connecter avec succès, cela signifie que ssl fonctionne bien. quel est le code de retour que vous obtenez pour

A1 connexion M. client2 mot de passe ici commande.

Avez-vous essayé la commande

Capacité A1

Essayez d'autres commandes alternatives car tous les serveurs IMAP n'implémentent pas toutes les commandes IMAP. J'ai rencontré ce problème pendant que je créais les outils de migration de données pour différents fournisseurs comme gmail rediffmail yahoo...

4
répondu Anshul 2013-02-20 04:32:24

Quelques options supplémentaires à considérer: Vous pouvez vous connecter à un serveur offrant STARTTLS auquel cas vous pouvez dire à openssl de poursuivre la négociation, vous devez spécifier le protocole que vous utilisez (choisissez parmi pop3, imap, smtp, ftp); l'option -crlf a été mentionnée par d'autres, et je trouve également l'option -showcerts utile si je débogue une configuration SSL/TLS. Ainsi, par exemple, vous pourriez vous retrouver avec,

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

Plus d'options avec la page de manuel pertinente si vous avez cela disponible,

man s_client
2
répondu Andrew Richards 2018-05-03 21:48:26