Gmail blokujący mutt


48

Kiedy próbuję zalogować się do Gmaila za pomocą mutta, miga szybki Webalert z adresem URL, coś takiego jak accounts.gmail.com lub coś takiego. Jest dla mnie zbyt szybki, aby go zobaczyć lub skopiować. Następnie mówi, że logowanie nie powiodło się.

Następnie otrzymuję wiadomość e-mail z Gmaila z informacją:

Google Account: sign-in attempt blocked

Hi Adam, 

We recently blocked a sign-in attempt to your Google Account [a...@gmail.com]. 

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

Mogę przejść do linku i włączyć opcję „Dostęp dla mniej bezpiecznych aplikacji”, a następnie mogę się zalogować, ale czy istnieje sposób na zalogowanie się w Mutt bez konieczności włączania tej mniej bezpiecznej opcji w Gmailu?

Aktualizacja:

Jestem na Mac OS X Yosemite Kiedy uruchamiam mutt -v, w opcjach kompilacji zawiera + USE_SSL_OPENSSL Nie korzystam z weryfikacji dwuetapowej Google Nie używam hasła specyficznego dla aplikacji Oto wiadomości, które I otrzymam, gdy spróbuję się zalogować:

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

Znalazłem tę odpowiedź, ale nie zadziałała: https://stackoverflow.com/a/25209735/1665818


Czy masz włączone uwierzytelnianie dwuskładnikowe w Gmailu? Jeśli tak, mutt nie będzie mógł się zalogować w ten sposób. Będziesz musiał wygenerować klucz aplikacji, aby mutt mógł się zalogować.
jw013,

Nie mam włączonego uwierzytelniania dwuskładnikowego.
aharris88,

1
cześć, mam te same problemy. byłoby świetnie, gdyby ktoś miał rozwiązanie do używania mutt z Gmailem i zachowania standardowych ustawień bezpieczeństwa konta Gmail.
linluk,

Czy używasz hasła aplikacji? Nie napotkałem jeszcze tego problemu.
Caleb,

Nie, nie używam hasła aplikacji.
aharris88

Odpowiedzi:


29

W końcu udało mi się to uruchomić, umożliwiając weryfikację dwuetapową Google i używając hasła mutt do aplikacji.

Więcej szczegółów:

Włączyłem weryfikację dwuetapową na moim koncie Google, co oznacza, że ​​kiedy loguję się do Google, muszę wprowadzić numer PIN z SMS-a lub aplikacji Google Authenticator.

Potem musiałem uzyskać hasło do aplikacji mutt. Można wygenerować konkretne hasło aplikacji tutaj .

Następnie użyłem tego hasła aplikacji do logowania się w Mutt zamiast mojego normalnego hasła. A potem nie muszę wpisywać numeru PIN.


czy mógłbyś rozwinąć tę kwestię, proszę?
tetris11

1
Ok, dodałem więcej szczegółów. Mam nadzieję, że to pomaga.
aharris88

2
Wciąż pracuję i oszczędzam godziny na całym świecie. Dzięki @ aharris88
Bernardo Sulzbach,

26

Jak mówi jeden z komentarzy , wygląda na to, że Google przeniósł się do blokowania aplikacji, które domyślnie korzystają z uwierzytelniania IMAP / SMTP PLAIN, i możesz przeczytać oficjalne blogi, w których stwierdzono, że Google zdecydowanie zaleca użytkownikom protokołu IMAP / SMTP przejście na OAuth 2.0 (ponieważ XMPP jest również wymienione Zastanawiam się, czy (starszy?) OSX iChat w pewnym momencie przestanie działać z GTalk). Gdzie indziej istnieją zabawne spekulacje na temat uzasadnienia tej zmiany . W momencie pisania anegdotyczne dochodzenie sugeruje:

  • Konta firmowe Google nie widzą tego problemu - nadal automatycznie akceptują logowania IMAP / SMTP oparte na hasłach i obecnie nie ma ustawienia, aby je odmówić (nie może powodować problemów dla wszystkich płacących użytkowników programów korzystających z „starszych” logowań hasła eh ?).
  • Konta Google niebędące „firmowymi” mają teraz ustawienie zezwalające na logowanie IMAP / SMTP oparte na hasłach lub zabraniające („mniej bezpieczne aplikacje”). Konta Google, które istniały od lat, mogą automatycznie wyłączyć, ale może nie zdarzyć się każdemu.

Próbowałem najpierw zalogować się do Gmaila przy użyciu przeglądarki internetowej, a następnie przy użyciu mutta z tej samej maszyny. Próbowałem zmienić ustawienia muttrc, aby zapewnić, że TLS jest zawsze używany . Próbowałem odblokować link captcha . Wszystkie nie pozwoliły mojemu muttowi pracować z kontem Gmail „nie zezwalaj na mniej bezpieczne aplikacje” (ale może rozwiązać problemy z logowaniem w różnych scenariuszach). Do wyboru są:

(Kto głosował na moją pierwotną odpowiedź - dziękuję)


1
Jak pasują hasła do aplikacji? Jeśli użyjesz hasła specyficznego dla aplikacji, czy możesz pozostawić opcję „zezwalaj na łączenie się mniej bezpiecznych aplikacji” i nadal używać PLAIN / Basic Authentication bez ostrzeżenia?
jla

2
Użycie hasła aplikacji w konfiguracji @ hampercm pozwala obejść ten problem. - security.google.com/settings/security/apppasswords
Yoshua Wuyts

6

Sądząc po opisie aharris88, Gmail blokował dostęp do swojego konta przez mutt, ponieważ mutt używa niepewnych połączeń podczas komunikacji z serwerami Gmaila. Oznacza to, że nazwa użytkownika i hasło są przesyłane przez sieć lokalną i Internet w niezaszyfrowanej formie; ogólnie bardzo zły pomysł i zawsze należy tego unikać. Gmail próbował odstraszyć tę ryzykowną konfigurację, odrzucając próbę połączenia mutta. Zmiana ustawień konta Google, aby umożliwić „Dostęp dla mniej bezpiecznych aplikacji”, unieważnia to zachowanie, pozwalając muttowi łączyć się w niepewny sposób.

Jednym z rozwiązań jest skonfigurowanie mutta do korzystania z zabezpieczeń TLS podczas łączenia się z Gmailem. W ten sposób twoje poświadczenia nie będą wysyłane w postaci zwykłego tekstu, a zatem możesz wyłączyć opcję „Dostęp dla mniej bezpiecznych aplikacji” w ustawieniach konta Google.

Aby użyć TLS, edytuj plik konfiguracji mutt (~ / .muttrc), aby był podobny do następującego:

set realname = 'Your Full Name'
set imap_user = 'youraccount@gmail.com'
set smtp_url = "smtp://youraccount@smtp.gmail.com: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

Ponadto utwórz katalogi i pliki, których mutt będzie używał do buforowania informacji o wiadomościach i przechowywania certyfikatów poprzez wykonanie:

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

Wiersze 3-5 pliku konfiguracyjnego mutt informują mutt, aby łączył się z Gmailem za pomocą bezpiecznych portów i protokołów. Upewnij się, że wypełniasz „Twoje pełne imię i nazwisko” w wierszu 1 i zastępujesz „twoje konto” w obu wierszach 2 i 3. Ostatnie dwa wiersze wymuszą bezpieczne połączenie mutt i mogą być wymagane w niektórych dystrybucjach Linuksa. Reszta konfiguracji jest dość powszechną konfiguracją, dzięki której mutt może grać w Gmailu.

Będziesz także musiał mieć OpenSSL (lub coś równoważnego) zainstalowany w twoim systemie, chociaż większość systemów prawdopodobnie już to ma.

A teraz zacznij kundle. Zostaniesz poproszony o podanie hasła do konta Gmail. Możesz również zostać poproszony o zaakceptowanie certyfikatu wysłanego przez serwer Gmail; śmiało i zrób to. Jeśli zobaczysz swoją skrzynkę odbiorczą, wszystko powinno być gotowe!

Jeśli nadal się nie łączy, coś innego uniemożliwia mutt bezpieczne połączenie. Spróbuj wykonać: mutt -vaby wyświetlić wersję mutta i opcje kompilacji. W sekcji „Opcje kompilacji” danych wyjściowych wyszukaj +USE_SSLlub coś podobnego jak +USE_SSL_OPENSSLlub +USE_SSL_GNUTLS. Jeśli żaden z nich nie pojawia się z plusem obok, oznacza to, że mutt został skompilowany bez możliwości połączenia z TLS i trzeba go ponownie skompilować.

Inną możliwością jest to, że OpenSSL (lub równoważny pakiet SSL) nie jest jeszcze zainstalowany w twoim systemie. Sposób instalacji będzie zależał od używanej dystrybucji Linux / Unix. Spróbuj wyszukać przewodniki właściwe dla Twojej dystrybucji. Może być również konieczne zainstalowanie dodatkowego pakietu zawierającego urzędy certyfikacji.

Gdy już zaczniesz działać, jeśli nie chcesz wpisywać hasła do Gmaila za każdym razem, gdy uruchamiasz mutt, możesz przechowywać je bezpośrednio w pliku ~ / .muttrc , dodając wiersz:

set imap_pass = 'yourpassword'

Należy jednak pamiętać, że stanowi to zagrożenie dla bezpieczeństwa , szczególnie jeśli udostępniasz system innym użytkownikom. Aby zmniejszyć to ryzyko, możesz uczynić ~ / .muttrc czytelnym tylko dla Ciebie, wykonując:

chmod 600 ~/.muttrc

Uniemożliwia to użytkownikom innym niż root i usługom działającym w systemie odczytywanie hasła zapisanego w pliku ~ / .muttrc.


2
to nie rozwiązuje problemu, to ta sama konfiguracja, którą mam. musisz zezwolić niezabezpieczonym aplikacjom w ustawieniach Gmaila na używanie mutt w ten sposób. ale chcemy go używać (f możliwe) ze standardowymi ustawieniami bezpieczeństwa. w każdym razie dzięki.
linluk

Upewnij się, że smtp_url , spoolfile i folder są ustawione dokładnie tak, jak określono powyżej, z wyjątkiem oczywiście zastąpienia twojego konta” nazwą twojego konta. To są kluczowe linie. I upewnij się, że nie są ustawione na coś innego w dalszej części pliku. Ulepszyłem również moją odpowiedź, aby rozwiązać kilka innych możliwości. Pomocne mogą być dwa wiersze, które dodałem u dołu pliku konfiguracyjnego podanego powyżej. W przeciwnym razie może być konieczne zainstalowanie implementacji SSL lub rekompilacja mutta.
hampercm

1
To wciąż nie działało. To było prawie dokładnie to samo, co już miałem w moim .muttrc. Ale miałem dodatkowe rzeczy. Na wszelki wypadek usunąłem inne rzeczy. Nie dodałem części ssl, ponieważ jestem na komputerze Mac. Ponadto komunikaty, które otrzymuję, wyglądają tak, jakby używały już ssl.
aharris88

Hmmm. Mam bardzo małe osobiste doświadczenie z MacOS, więc niestety nie mogę pomóc w rozwiązaniu twojego problemu. Czy utworzyłeś podkatalogi / / ~ / .mutt / pliki za pomocą komend mkdir i touch , jak opisano powyżej? Te wydają się być niezbędne w niektórych -nixach. Poza tym nie mam nic więcej do zasugerowania, oprócz wyszukiwania w Internecie specyficznych dla mutt i Gmaila w systemie Mac OS. Kilka wyników wyszukiwania mówi o używaniu „MacPorts” do instalowania wariantów mutta.
hampercm

2
Natknąłem się na informacje, które mogą wyjaśnić różne rzeczy. Sugeruje to , że OAuth 2.0 jest wymagany do WSZYSTKIEGO dostępu z aplikacji zewnętrznych, nawet przez bezpieczne połączenia. Sprawdziłem moje ustawienia Google i stwierdziłem, że w przeszłości włączyłem mniej bezpieczne aplikacje z jakiegoś innego powodu i zapomniałem o tym, dlatego mój dostęp do kundla działał na głowie z palmą :( Wygląda na to, że możesz używać SASL XOAUTH2 do poruszania się potrzebuje opcji „mniej bezpiecznej”, ale może nie być warte czasu zainwestowanego w niewielką poprawę bezpieczeństwa.
hampercm



0

DOBRZE. Więc po długim debugowaniu tego znalazłem ten post, który daje prawdziwe rozwiązanie.

Jeśli masz wspomniany problem i nie używasz uwierzytelniania dwuskładnikowego, musisz zalogować się do internetowej wersji Gmaila, a następnie przejść do:

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

Teraz wypróbuj Mutt - powinien się teraz zalogować.


W moim pytaniu już powiązałem z tą odpowiedzią, która mówi to samo, ale nie działa. stackoverflow.com/questions/25209676/…
aharris88

Rzeczywiście, to też mi nie pomogło.
reinierpost
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.