개발자 블로그
node mailer - Invalid login: Username and Password not accepted 해결 본문
프로그래밍/Node.js
node mailer - Invalid login: Username and Password not accepted 해결
로이드.Roid 2022. 7. 11. 14:06내 앱에서 모니터링이 필요한 부분에 nodemailer를 사용해서 gmail로 알림을 받고 있었다. 기존에는 아무런 문제 없이 잘 동작하고 있었는데, 어느 순간부터 메일이 발송되지 않고 있었다.
그래서 에러 로그를 찾아보니 아래와 같은 로그가 찍혀있었다. (민감할 수 있을 것 같은 내용은 삭제 또는 수정해서 원문과는 조금 다를 수 있다.)
Send mail error: { Error: Invalid login: Username and Password not accepted. Learn more at
https://support.google.com/mail/?p=BadCredentials - gsmtp
at SMTPConnection._formatError (myprojects/node_modules/nodemailer/lib/smtp-connection/index.js:774:19)
at SMTPConnection._actionAUTHComplete (myprojects/node_modules/nodemailer/lib/smtp-connection/index.js:1513:34)
at SMTPConnection._responseActions.push.str (myprojects/node_modules/nodemailer/lib/smtp-connection/index.js:540:26)
at SMTPConnection._processResponse (myprojects/node_modules/nodemailer/lib/smtp-connection/index.js:932:20)
at SMTPConnection._onData (myprojects/node_modules/nodemailer/lib/smtp-connection/index.js:739:14)
at TLSSocket.SMTPConnection._onSocketData.chunk (myprojects/node_modules/nodemailer/lib/smtp-connection/index.js:189:44)
at emitOne (events.js:116:13)
at TLSSocket.emit (events.js:211:7)
at addChunk (_stream_readable.js:263:12)
at readableAddChunk (_stream_readable.js:250:11)
code: 'EAUTH',
response: 'Username and Password not accepted. Learn more at https://support.google.com/mail/?p=BadCredentials - gsmtp',
responseCode: 535,
command: 'AUTH PLAIN' }
로그에 찍혀있는 URL로 접속하면 아래와 같은 페이지로 연결된다.
https://support.google.com/mail/?p=BadCredentials
설명은 크게 도움이 안되고, 그냥 간단하게 설명하면, 아마도 과거에 구글로부터 메일을 한 통 받았을꺼다. (나도 메일 받고 그냥 무시하고 넘겼었다..-_-;;)
그러니깐 구글은 사실 이미 나한테 통지를 했었다.. 내가 그냥 별 생각 없이 아무런 조치도 안했던거지..
뭐, 우리한테 중요한건 해결 방법이니깐..
다행히도 약간의 설정만 해준다면 gmail을 사용한 nodemailer는 계속해서 사용할 수 있다.
- 2단계 인증 사용
- 앱 비밀번호 생성
이렇게 두 단계만 해주면 된다.
해당 설정은 아래 링크에서 변경 가능하다.
https://myaccount.google.com/security
그리고 관련해서 도움말이 필요하다면, 아래 링크를 참고하자.
https://support.google.com/accounts/answer/185833
이렇게 앱 비밀번호를 생성했다면, 기존 node.js 코드에서 패스워드만 앱 비밀번호로 변경해주면 된다. 서비스를 재시작 하는 것은 잊지말고!
'프로그래밍 > Node.js' 카테고리의 다른 글
[Resolved] node mailer - Invalid login: Username and Password not accepted (0) | 2022.07.11 |
---|---|
PROTOCOL_ENQUEUE_AFTER_FATAL_ERROR 에러 해결 (0) | 2021.12.21 |
이모티콘이 DB에 물음표(????)로 저장되는 현상 해결하기 (0) | 2021.01.15 |
Comments