✅ Gmail SMTP용 앱 비밀번호 생성 방법 (2025년 기준 최신 방법)
Gmail SMTP를 사용하려면 **앱 비밀번호(App Password)**를 설정해야 한다.
앱 비밀번호는 Google이 보안 강화를 위해 제공하는 특별한 16자리 비밀번호로,
SMTP 인증을 위해 일반 비밀번호 대신 사용해야 함.
📌 1. 2단계 인증(2FA) 활성화
앱 비밀번호를 사용하려면 먼저 2단계 인증을 활성화해야 해.
- Google 계정 보안 설정으로 이동
- "2단계 인증"을 클릭
- 화면 안내에 따라 2단계 인증 설정 진행
- 본인 휴대폰으로 인증받거나, 다른 인증 옵션을 설정할 수 있음.
- 2단계 인증이 활성화되면, 앱 비밀번호를 생성할 수 있음.
📌 2. 앱 비밀번호 생성
2단계 인증을 설정한 후, 앱 비밀번호를 생성할 수 있어.
- 앱 비밀번호 생성 페이지로 이동
- Gmail 계정으로 로그인해야 함.
- 앱 선택:
- "메일"을 선택
- 기기 선택:
- "Windows 컴퓨터" 또는 "기타(맞춤 이름 입력 가능)" 선택
- "생성" 버튼 클릭
- 화면에 16자리 앱 비밀번호가 표시됨
- 예: abcd efgh ijkl mnop
- 이 비밀번호를 복사해서 application.properties에 입력하면 됨.
📌 3. application.properties에 적용
생성된 앱 비밀번호를 application.properties에 설정하면 돼.
spring.mail.host=smtp.gmail.com
spring.mail.port=587
spring.mail.username=your-email@gmail.com
spring.mail.password=abcd efgh ijkl mnop # 앱 비밀번호 사용
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
💡 중요: 앱 비밀번호는 한 번만 표시되므로, 복사해 두고 바로 사용해야 해!
📌 4. 테스트 (SMTP 연결 확인)
SMTP 설정이 정상적으로 동작하는지 확인하려면, 메일 발송 테스트를 해보는 게 좋아.
🔹 Java 코드 예제 (Spring Boot에서 메일 전송)
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.stereotype.Service;
@Service
public class EmailService {
@Autowired
private JavaMailSender mailSender;
public void sendTestEmail() {
SimpleMailMessage message = new SimpleMailMessage();
message.setTo("receiver@example.com"); // 받는 사람 이메일
message.setSubject("SMTP 설정 테스트");
message.setText("Gmail SMTP 설정이 정상적으로 동작합니다!");
mailSender.send(message);
}
}
이 코드를 실행하면 설정한 SMTP를 통해 테스트 메일이 발송될 거야.
에러가 나면 콘솔 로그를 확인해서 디버깅하면 돼!
📌 5. 자주 발생하는 문제 해결
🚨 앱 비밀번호 입력해도 메일이 안 보내질 때
- Google 계정에서 "보안 수준이 낮은 앱 액세스" 허용 필요
- 현재 Google 정책상 필요 없지만, 일부 계정에서는 제한될 수도 있음.
- 보안 설정 페이지에서 확인 가능.
- Gmail SMTP 서버 차단
- Google이 SMTP 사용을 차단했을 수 있음. Google 계정 보안 설정에서
"보안 경고" 또는 "비정상적인 로그인 시도"가 있는지 확인.
- Google이 SMTP 사용을 차단했을 수 있음. Google 계정 보안 설정에서
- Gmail 계정 비밀번호를 변경한 경우
- 비밀번호를 변경하면, 앱 비밀번호도 다시 생성해야 함.
- 포트(port) 확인
- 587 (STARTTLS) 또는 465 (SSL) 중 하나를 시도.
✅ 정리
- 2단계 인증 활성화
- 앱 비밀번호 생성 (16자리)
- application.properties에 설정
- 테스트 메일 발송 (Java 코드)
- SMTP 연결 문제 발생 시 보안 설정 확인
'Develop > Spring' 카테고리의 다른 글
[Spring]대용량 데이터 엑셀 다운로드 구현하기 (1) | 2024.10.30 |
---|---|
[Spring]빌드도구 Maven과 Gradle의 차이 (0) | 2024.10.18 |
[Spring]Filter와 Interceptor의 개념 및 차이 (0) | 2024.10.17 |
[Spring] Validator의 주요개념과 적용 방법 (0) | 2024.10.02 |
@RequestBody와 @ModelAttribute (0) | 2024.08.01 |