Gmail 계정을 이용해 이메일을 보내는 과정에서 SMTP 인증 오류가 발생했습니다.
인증 오류에 대한 원인 분석과 함께 문제를 해결하는 과정을 이미지와 함께 정리했습니다.

Gmail 계정으로 이메일을 보내기 위해 Nodemailer를 사용 중인데, Gmail의 보안 설정이 원인으로 인해 인증에 실패했음을 알려주고 있습니다. Gmail은 2단계 인증이 활성화된 경우, 앱 비밀번호를 사용해야 합니다.
Error: Invalid login: 534-5.7.9 Application-specific password required
Gmail의 보안 정책 때문에 일반 비밀번호로 SMTP 인증이 차단되었음을 의미합니다.

보안 탭에서 앱 비밀번호를 검색하여 앱 비밀번호 설정 페이지로 이동합니다.
만들기 버튼을 클릭합니다.

EMAIL_ADDRESS=vedivero73@gmail.com
EMAIL_PASSWORD=************
소스 코드
import nodemailer from 'nodemailer';
const transporter = nodemailer.createTransport({
service: 'gmail',
auth: {
user: process.env.EMAIL_ADDRESS,
pass: process.env.EMAIL_PASSWORD,
},
});
async function sendTestEmail() {
try {
const info = await transporter.sendMail({
from: process.env.EMAIL_ADDRESS,
to: 'recipient@example.com',
subject: 'Test Email',
text: 'Hello, this is a test email from Nodemailer!',
});
console.log('Email sent:', info.response);
} catch (error) {
console.error('Error sending email:', error);
}
}
sendTestEmail();

문제 원인해결 방법2단계 인증 활성화 및 앱 비밀번호 생성 후, Nodemailer에서 사용.