web-dev-qa-db-fra.com

Gmail bloquant mutt

Lorsque j'essaie de me connecter à gmail avec mutt, cela fait clignoter une rapide Webalert avec une URL, quelque chose comme accounts.gmail.com ou quelque chose. C'est trop rapide pour moi de le voir ou de le copier. Ensuite, il indique que la connexion a échoué.

Ensuite, je reçois un e-mail de Gmail disant:

Google Account: sign-in attempt blocked

Hi Adam, 

We recently blocked a sign-in attempt to your Google Account [[email protected]]. 

Sign in attempt details
Date & Time: Wednesday, December 10, 2014 11:55:21 PM UTC 
Location: Utah, USA 

If this wasn't you
Please review your Account Activity page at         https://security.google.com/settings/security/activity to see if anything looks suspicious.     Whoever tried to sign in to your account knows your password; we recommend that you change it right away. 

If this was you
You can switch to an app made by Google such as Gmail to access your account (recommended) or change your settings at https://www.google.com/settings/security/lesssecureapps so that your account is no longer protected by modern security standards. 

To learn more, see https://support.google.com/accounts/answer/6010255. 

Sincerely,
The Google Accounts team

Je peux aller sur le lien et activer "Accès aux applications moins sécurisées", puis je peux me connecter très bien, mais existe-t-il un moyen de se connecter avec mutt sans avoir à activer cette option moins sécurisée dans Gmail?

Mise à jour:

Je suis sur mac os x Yosemite Lorsque j'exécute mutt -v, dans les options de compilation, il contient + USE_SSL_OPENSSL Je n'utilise pas la vérification google en 2 étapes Je n'utilise pas de mot de passe spécifique à l'application Voici les messages que je obtenir lorsque j'essaie de me connecter:

Reading imaps://imap.gmail.com:993/INBOX...
Looking up imap.gmail.com...
Connecting to imap.gmail.com...
TLSv1.2 connection using TLSv1/SSLv3 (ECDHE-RSA-AES128-GCM-SHA256)
Logging in...
[WEBALERT https://accounts.google.com/ContinueSignIn?sarp=1&scc=1&plt=AKgnsbsm0P......

J'ai trouvé cette réponse, mais cela n'a pas fonctionné: https://stackoverflow.com/a/25209735/1665818

49
aharris88

Je l'ai finalement fait fonctionner en activant la vérification en deux étapes de Google et en utilisant un mot de passe spécifique à l'application pour mutt.

Plus de détails:

J'ai activé la vérification en deux étapes sur mon compte Google, ce qui signifie que lorsque je me connecte à Google, je dois saisir un code PIN à partir d'un texte ou de l'application Google Authenticator.

Ensuite, j'ai dû obtenir un mot de passe spécifique à l'application pour mutt. Vous pouvez générer un mot de passe spécifique à l'application ici .

Ensuite, j'ai utilisé ce mot de passe spécifique à l'application pour me connecter à mutt au lieu de mon mot de passe normal. Et puis je n'ai pas besoin d'entrer un code PIN.

33
aharris88

Comme l'un des commentaires dit que cela ressemble à Google est passé au blocage des applications qui utilisent l'authentification IMAP/SMTP PLAIN par défaut et vous pouvez lire les blogs officiels indiquant que Google recommande fortement aux utilisateurs du protocole IMAP/SMTP de passer à OAuth 2. (comme XMPP est également répertorié, je me demande si (plus ancien?) OSX iChat cessera de fonctionner avec GTalk à un moment donné). Ailleurs, il y a du plaisir spéculation sur la justification de ce changement . Au moment de la rédaction de l'enquête anecdotique suggère:

  • Les comptes professionnels Google ne verront pas ce problème - ils continuent à accepter automatiquement les connexions IMAP/SMTP par mot de passe et il n'y a actuellement aucun paramètre pour les refuser (peut ' ne causera pas de problèmes à tous les utilisateurs payants avec des programmes utilisant des logins de mot de passe "hérités" hein?).
  • Les comptes Google non "professionnels" disposent désormais d'un paramètre permettant d'autoriser ou d'interdire les connexions IMAP/SMTP par mot de passe ("applications moins sécurisées"). Les comptes Google qui existent depuis des années peuvent automatiquement avoir choisi de refuser, mais cela pourrait ne pas arriver à tout le monde.

J'ai d'abord essayé de me connecter à GMail en utilisant un navigateur Web puis en utilisant mutt depuis la même machine. J'ai essayé modification des paramètres muttrc pour garantir que TLS est toujours utilisé . J'ai essayé le déverrouiller le lien captcha . Tous n'ont pas réussi à laisser mon mutt fonctionner avec un compte GMail "ne pas autoriser les applications moins sécurisées" (mais peuvent résoudre les problèmes de connexion dans différents scénarios). Vos choix sont:

(Celui qui a voté ma réponse originale - merci)

28
Anon

À en juger par la description de aharris88, Gmail bloquait l'accès à son compte via mutt car mutt utilise des connexions non sécurisées lors de la communication avec les serveurs de Gmail. Cela signifie que votre nom d'utilisateur et votre mot de passe sont envoyés via le réseau local et Internet sous une forme non cryptée; généralement une très mauvaise idée, et quelque chose à éviter autant que possible. Gmail tentait de décourager cette configuration risquée en rejetant la tentative de connexion de mutt. La modification des paramètres de votre compte Google pour autoriser l'accès à des applications moins sécurisées a annulé ce comportement, permettant à mutt de se connecter de manière non sécurisée.

Une solution consiste à configurer mutt pour utiliser la sécurité TLS lors de la connexion à Gmail. De cette façon, vos informations d'identification ne sont pas envoyées sous forme de texte brut, et vous pouvez donc désactiver "Accès aux applications moins sécurisées" dans les paramètres de votre compte Google.

Pour utiliser TLS, modifiez votre fichier de configuration mutt (~/.muttrc) pour qu'il ressemble à ce qui suit:

set realname = 'Your Full Name'
set imap_user = '[email protected]'
set smtp_url = "smtp://[email protected]:587/"
set spoolfile = imaps://imap.gmail.com:993/INBOX
set folder = "imaps://imap.gmail.com:993"
set record="+[Gmail]/Sent Mail"
set postponed="+[Gmail]/Drafts"
set header_cache="~/.mutt/cache/headers"
set message_cachedir="~/.mutt/cache/bodies"
set certificate_file=~/.mutt/certificates

# These two lines appear to be needed on some Linux distros, like Arch Linux
set ssl_starttls = yes
set ssl_force_tls = yes

De plus, créez les répertoires et les fichiers que mutt utilisera pour mettre en cache les informations sur les messages et stocker les certificats en exécutant:

mkdir -p ~/.mutt/cache/bodies
mkdir ~/.mutt/cache/headers
touch ~/.mutt/certificates

Les lignes 3 à 5 du fichier de configuration mutt indiquent à mutt de se connecter à Gmail à l'aide de ports et de protocoles sécurisés. Assurez-vous de remplir 'Votre nom complet' à la ligne 1, et remplacez "youraccount" dans les deux lignes 2 et 3. Les deux dernières lignes forceront mutt à se connecter en toute sécurité, et peuvent être requises sur certaines distributions Linux. Le reste de la configuration est une configuration assez courante pour faire mutt jouer Nice avec Gmail.

Vous devrez également avoir OpenSSL (ou quelque chose d'équivalent) installé sur votre système, bien que la plupart des systèmes l'auront probablement déjà.

Maintenant, lancez mutt. Vous serez invité à saisir le mot de passe de votre compte Gmail. Vous pouvez également être invité à accepter un certificat que le serveur Gmail vous enverra; allez-y et faites-le. Si vous voyez votre boîte de réception, vous devriez être prêt!

S'il ne se connecte toujours pas, autre chose empêche mutt de se connecter correctement. Essayez d'exécuter: mutt -v pour afficher la version de mutt et les options de compilation. Dans la section "Options de compilation" de la sortie, recherchez +USE_SSL ou quelque chose de similaire comme +USE_SSL_OPENSSL ou +USE_SSL_GNUTLS. Si aucun de ceux-ci n'apparaît avec un plus à côté d'eux, alors mutt a été compilé sans la possibilité de se connecter avec TLS, et vous devrez le recompiler.

Une autre possibilité est qu'OpenSSL (ou un package SSL équivalent) n'est pas encore installé sur votre système. La méthode d'installation dépendra de la distribution Linux/Unix que vous utilisez. Essayez de rechercher des guides spécifiques à votre distribution. Vous devrez peut-être également installer un package supplémentaire contenant les autorités de certification.

Une fois que les choses fonctionnent, si vous ne voulez pas taper votre mot de passe Gmail à chaque fois que vous exécutez mutt, vous pouvez le stocker directement dans le fichier ~/.muttrc en ajoutant une ligne comme:

set imap_pass = 'yourpassword'

Notez cependant que cela présente un risque pour la sécurité, en particulier si vous partagez un système avec d'autres utilisateurs. Pour réduire ce risque, vous pouvez rendre ~/.muttrc uniquement lisible par vous en exécutant:

chmod 600 ~/.muttrc

Cela empêche les utilisateurs et les services non root exécutés sur votre système de lire votre mot de passe stocké dans le fichier ~/.muttrc.

6
hampercm

Mutt maintenant prend officiellement en charge OAuth ciblant spécifiquement les problèmes avec Gmail.

2
Philipp Gesang
1
twolfe18

D'ACCORD. Donc, après un long débogage, j'ai trouvé ce post qui donne la vraie solution.

Si vous rencontrez ce problème et que vous n'utilisez pas l'authentification à 2 facteurs, vous devez vous connecter à la version Web de Gmail, puis accéder à:

https://accounts.google.com/b/0/DisplayUnlockCaptcha

Maintenant, essayez Mutt - il devrait se connecter maintenant.

0
niieani