Mutt de bloqueio do Gmail

47

Quando tento fazer login no gmail com o mutt, ele exibe um Webalert rápido com um URL, algo como accounts.gmail.com ou algo assim. É muito rápido para eu ver ou copiá-lo. Em seguida, ele diz que o login falhou.

Então, recebo um e-mail do Gmail dizendo:

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

Posso acessar o link e ativar "Acesso a aplicativos menos seguros" e, em seguida, entrar bem, mas existe uma maneira de fazer login com o mutt sem precisar ativar essa opção menos segura no Gmail?

Atualizar:

Estou no mac os x Yosemite Quando executo mutt -v, nas opções de compilação, ele contém + USE_SSL_OPENSSL Não estou usando a verificação em duas etapas do google Não estou usando uma senha específica do aplicativo Aqui estão as mensagens que eu começa quando tento fazer login:

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......

Encontrei esta resposta, mas não funcionou: https://stackoverflow.com/a/25209735/1665818

aharris88
fonte
Você tem autenticação de dois fatores ativada no gmail? Se assim for, o mutt não poderá fazer logon dessa maneira. Você precisará gerar uma chave de aplicativo para o mutt usar para fazer login.
Jw013
Não tenho autenticação de dois fatores ativada.
aharris88
1
Olá, estou com os mesmos problemas. seria ótimo se alguém tivesse uma solução para usar o mutt com o gmail e manter as configurações de segurança padrão da conta do gmail.
linluk
Você está usando uma senha específica do aplicativo? Ainda não encontrei esse problema.
Caleb
Não, não estou usando uma senha específica do aplicativo.
aharris88

Respostas:

30

Finalmente, consegui que ele funcionasse, ativando a verificação em duas etapas do Google e usando uma senha específica do aplicativo para vira-lata.

Mais detalhes:

Ativei a verificação em duas etapas na minha conta do Google, o que significa que, quando faço login no Google, tenho que inserir um número de PIN de um texto ou do aplicativo Google Authenticator.

Então eu tive que obter uma senha específica do aplicativo para mutt. Você pode gerar uma senha específica do aplicativo aqui .

Em seguida, usei a senha específica do aplicativo para efetuar login no mutt, em vez da minha senha normal. E então não preciso inserir um número de PIN.

aharris88
fonte
você poderia elaborar isso mais, por favor?
precisa saber é o seguinte
1
Ok, eu adicionei mais detalhes. Espero que ajude.
precisa saber é o seguinte
2
Ainda trabalhando e economizando horas em todo o mundo. Obrigado @ aharris88
Bernardo Sulzbach
26

Como um dos comentários diz, parece que o Google mudou para o bloqueio de aplicativos que usam autenticação IMAP / SMTP PLAIN por padrão e você pode ler blogs oficiais afirmando que o Google recomenda enfaticamente que os usuários do protocolo IMAP / SMTP mudem para o OAuth 2.0 (como XMPP também listado Gostaria de saber se o OSX iChat (mais antigo?) deixará de funcionar com o GTalk em algum momento). Em outros lugares, há algumas especulações divertidas quanto à justificativa para essa mudança . No momento da redação, a investigação anedótica sugere:

  • As contas comerciais do Google não veem esse problema - elas continuam aceitando automaticamente logins IMAP / SMTP baseados em senha e, atualmente, não há nenhuma configuração para recusá-las (não pode estar causando problemas para todos os usuários pagantes com programas que usam logons de senha "herdados" eh ?).
  • As contas do Google que não são "comerciais" agora têm uma configuração para permitir ou proibir logins IMAP / SMTP baseados em senha ("aplicativos menos seguros"). As contas do Google que existem há anos podem automaticamente optar por não permitir, mas isso pode não acontecer com todos.

Eu tentei primeiro fazer login no GMail usando um navegador da Web e depois usar o mutt da mesma máquina. Tentei alterar as configurações do muttrc para garantir que o TLS seja sempre usado . Eu tentei o link de desbloqueio captcha . Todos falharam em deixar meu mutt funcionar com uma conta GMail "não permitir aplicativos menos seguros" (mas podem resolver problemas de login em diferentes cenários). Suas escolhas são:

(Quem votou na minha resposta original - obrigado)

Anon
fonte
1
Como as senhas específicas do aplicativo se encaixam no mix? Se você usar uma senha específica do aplicativo, poderá deixar "permitir a conexão de aplicativos menos seguros" e continuar usando a autenticação PLAIN / Basic sem o aviso?
JLA
2
O uso de uma senha específica do aplicativo com a configuração do @ hampercm contorna esse problema. - security.google.com/settings/security/apppasswords
Yoshua Wuyts
6

A julgar pela descrição de aharris88, o Gmail estava bloqueando o acesso à sua conta via mutt porque o mutt está usando conexões inseguras ao se comunicar com os servidores do Gmail. Isso significa que seu nome de usuário e senha estão sendo enviados pela rede local e pela Internet de forma não criptografada; geralmente uma péssima idéia e algo a ser evitado sempre que possível. O Gmail estava tentando desencorajar essa configuração arriscada, rejeitando a tentativa de conexão do mutt. Alterar as configurações da sua conta do Google para permitir "Acesso a aplicativos menos seguros" substitui esse comportamento, permitindo que o mutt se conecte de maneira insegura.

Uma solução para isso é configurar o mutt para usar a segurança TLS ao se conectar ao Gmail. Dessa forma, suas credenciais não são enviadas em texto sem formatação e, portanto, você pode desativar o "Acesso a aplicativos menos seguros" nas configurações da sua conta do Google.

Para usar o TLS, edite seu arquivo de configuração mutt (~ / .muttrc) para ser semelhante ao seguinte:

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

Além disso, crie os diretórios e arquivos que o mutt usará para armazenar em cache as informações da mensagem e armazenar certificados executando:

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

As linhas 3-5 do arquivo de configuração do mutt dizem ao mutt para se conectar ao Gmail usando portas e protocolos seguros. Certifique-se de preencher 'Seu nome completo' na linha 1 e substituir "sua conta" nas linhas 2 e 3. As duas últimas linhas obrigarão o mutt a se conectar com segurança e podem ser necessárias em algumas distribuições do Linux. O restante da configuração é uma configuração bastante comum para tornar a reprodução de vira-latas agradável no Gmail.

Você também precisará ter o OpenSSL (ou algo equivalente) instalado no seu sistema, embora a maioria dos sistemas provavelmente já o tenha.

Agora, comece a vira-lata. Você será solicitado a fornecer a senha da sua conta do Gmail. Você também pode ser solicitado a aceitar um certificado que o servidor do Gmail lhe enviará; vá em frente e faça isso. Se você vir sua caixa de entrada, tudo estará pronto!

Se ainda não estiver conectando, outra coisa está impedindo que o mutt se conecte com segurança. Tente executar: mutt -vpara exibir a versão do mutt e compilar as opções. Na seção "Opções de compilação" da saída, procure por +USE_SSLalgo semelhante como +USE_SSL_OPENSSLou +USE_SSL_GNUTLS. Se nenhum deles aparecer com um sinal de mais ao lado deles, o mutt foi compilado sem a capacidade de conectar-se ao TLS, e você precisará recompilá-lo.

Outra possibilidade é que o OpenSSL (ou um pacote SSL equivalente) ainda não esteja instalado no seu sistema. O método para instalá-lo dependerá de qual distribuição Linux / Unix você está usando. Tente procurar guias específicos para sua distribuição. Você também pode precisar instalar um pacote adicional contendo autoridades de certificação.

Depois de fazer as coisas funcionarem, se você não quiser digitar sua senha do Gmail toda vez que executar o mutt, poderá armazená-la diretamente no arquivo ~ / .muttrc adicionando uma linha como:

set imap_pass = 'yourpassword'

Observe, no entanto, que isso apresenta um risco à segurança , principalmente se você compartilhar um sistema com outros usuários. Para reduzir esse risco, você pode tornar ~ / .muttrc legível apenas por você executando:

chmod 600 ~/.muttrc

Isso impede que usuários e serviços não raiz executados em seu sistema leiam sua senha armazenada no arquivo ~ / .muttrc.

hampercm
fonte
2
isso não resolve o problema, é a mesma configuração que eu tenho. você precisa permitir que aplicativos inseguros nas configurações do gmail usem o mutt dessa maneira. mas queremos usá-lo (possível) com as configurações de segurança padrão. obrigado de qualquer maneira.
Linux #
Verifique se smtp_url , spoolfile e folder estão sendo definidos exatamente como especificado acima, exceto, é claro, substituindo 'youraccount' pelo nome da sua conta. Estas são as linhas principais. E verifique se eles não estão sendo definidos para outra coisa mais abaixo no arquivo. Também ampliei minha resposta para abordar algumas outras possibilidades. Usar as duas linhas adicionadas na parte inferior do arquivo de configuração fornecidas acima pode ajudar. Caso contrário, pode ser necessário instalar uma implementação SSL ou recompilar o mutt.
hampercm
1
Ainda não funcionou. Esse foi quase o mesmo material que eu já tinha no meu .muttrc. Mas eu tinha coisas extras. Eu apaguei as outras coisas por precaução. Não adicionei a parte ssl porque estou no mac. Além disso, as mensagens que estou recebendo parecem já estar usando ssl.
aharris88
Hummm. Tenho muito pouca experiência pessoal com o MacOS. Infelizmente, talvez não seja de muita ajuda para o seu problema. Você criou os subdiretórios e arquivos ~ / .mutt / usando os comandos mkdir e touch, conforme descrito acima? Esses parecem ser necessários em alguns nixes. Fora isso, não tenho muito mais a sugerir, além de fazer algumas pesquisas na web específicas para o mutt e o Gmail no Mac OS. Vários hits de pesquisa falam sobre o uso de "MacPorts" para instalar variantes de mutt.
amigos estão dizendo sobre hampercm
2
Encontrei algumas informações que podem explicar as coisas. Isso sugere que o OAuth 2.0 é necessário para TODOS os acessos de aplicativos externos, mesmo em conexões seguras. Eu verifiquei minhas configurações do Google e descobri que havia habilitado aplicativos menos seguros no passado por algum outro motivo, e esqueci-o, e é por isso que meu acesso de mutt estava funcionando muito bem com a palma da mão :( Parece que você pode usar o SASL XOAUTH2 para se locomover precisando a opção "menos seguro", mas pode não valer a pena o tempo investido para um pequeno impulso de segurança?.
hampercm
2

O Mutt agora suporta oficialmente o OAuth, visando especificamente problemas no Gmail.

Philipp Gesang
fonte
1
Eu acho que é melhor se você tentar adicionar pelo menos algumas das instruções de como usar o OAuth no gmail para sua resposta. as respostas do link somente se tornam inválidas se o URL mudar. ou o arquivo é movido.
yukashima huksay
0

ESTÁ BEM. Então, depois de muito tempo depurando isso, encontrei este post que fornece a solução real.

Se você tiver o problema mencionado e não estiver usando a autenticação de dois fatores, precisará fazer login na versão web do Gmail e, em seguida, acessar:

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

Agora, tente o Mutt - ele deve entrar agora.

niieani
fonte
Na minha pergunta, eu já vinculei a esta resposta, que diz a mesma coisa, mas não funciona. stackoverflow.com/questions/25209676/...
aharris88
Na verdade, isso também não me ajudou.
Reinierpost