업무

google 메일 전송을 위한 SMTP 세팅 방법 (25년 버전)

goresign 2025. 1. 16. 20:35

고객사에 메일 발송 기능을 새로 개발하면서 테스트하던 중

기존에 잘 쓰던 테스트계정으로는 권한이 없다고 메일 발송이 안되는 문제가 발생했다.

( 530 Authentication Required 에러 발생 )

 

확인해 보니 정책이 변경된 지 얼마 안됐었다.

 

2025년 1월부터, Google Workspace 계정은 사용자 이름과 비밀번호만을 사용해 Google 계정에 로그인하도록 요청하는 보안 수준이 낮은 앱, 서드 파티 앱 또는 기기를 더 이상 지원하지 않습니다

 

그래서 설정을 다시 하면서 기록

 

설정방법 요약

 

기존 :     

    -> 구글 계정 설정에서 '보안 수준이 낮은 앱 허용' 활성화 후 진행

mail.host=smtp.gmail.com
mail.port=587
mail.prop.smtp.auth=false
mail.username=test@gmail.com #예시
mail.password=mypassword123 #예시

 

수정 : 

    -> 이중 인증 사용

    -> 앱 비밀번호 설정

mail.host=smtp.gmail.com
mail.port=587
mail.prop.smtp.auth=true
mail.prop.smtp.starttls.enable=true
mail.username=test@gmail.com #예시
mail.password=ffybzxwsjayiyduf #예시, 16자 공백 없이 입력

 

 

 

smtp gmail 설정 상세 순서

 

 

1. Google 계정 관리 탭 > 보안 > 2단계 인증 설정

 

2. 보안 > 앱 비밀번호

 

3. 앱 비밀번호 생성

앱 이름에 설정할 이름을 입력하면 비밀번호가 생성된다.

 

4. 생성된 비밀번호로 입력

기존에는 보안 수준을 낮추고 발신자 gmail 계정의 암호를 입력했던 것 같은데

이제는 구글이 생성한 16자리의 앱 비밀번호를 입력해야 한다.

 

 

이렇게 받은 정보로 상단에 설정방법 요약 처럼 입력하면 구글 메일 발송이 잘 된다!

 

번외

starttls.enable=true 설정이 필요한가? 에 대한 GPT 답변

 

반드시 필요합니다.

Gmail SMTP 서버는 2025년 이후로도 보안 연결을 강제하기 때문에, starttls.enable=true 설정이 없으면 메일 전송이 불가능합니다.


기술적 이유

  • starttls.enable=true는 TLS 사용을 명시적으로 선언하는 역할을 합니다.
  • 만약 설정하지 않는다면:
    • 연결이 암호화되지 않아 Gmail SMTP 서버에서 연결 요청을 거부합니다.
    • 결과적으로 530 Authentication Required와 같은 에러가 발생합니다.