워드프레스 구글 SMTP Gmail 등록, 실패 이유와 해결 (Easy WP SMTP)

개꿀몬(GKKmon)이 사용했던 아마존 라이트세일(Amazon Lightsail)의 기본 인스턴스는 이메일 지원을 하지 않았다. 이런 경우 서버에서 자체적인 이메일 수신&발신이 불가능하기 때문에, 확인 이메일이라든지 플러그인 기능 등 본인의 이메일과 관련된 설정과 기능을 사용할 수 없다. 그래서 이메일 기능이 지원되는 서버를 사용하거나, 지원되는 상품으로 업그레이드하는 등 자체적으로 서버와 이메일의 연결을 구축해야만 정상적인 이메일 관련 기능을 사용할 수 있다.

서버의 이메일 기능 여부&상태 확인법

본인의 서버가 이메일 시스템이 돌아가고 있는지 확인하는 방법은 간단하다. ‘워드프레스 설정 – 일반 – 이메일 주소’ 부분을 변경해 인증 메일을 보낸 뒤, ‘Email Log‘ 플러그인을 설치해 이메일 로그를 확인해보면 된다. 인증 메일을 보냈는데도 이메일 로그가 아무것도 없다면 이메일 기능이 없는 것이고, 인증 메일이 안 왔는데 이메일 로그에는 남아있다면 차단이 됐거나 호스팅 사의 문제 등, 뭔가 다른 문제가 생긴 것이다.

워드프레스에서 SMTP를 사용해야 하는 이유

만약 ‘Email Log’로 확인해 서버에 이메일 기능이 없다는 걸 확인했다면, 꼭 자체적으로 구축할 필요 없이 외부 이메일 기능을 사용하는 방법도 있다. 외부 이메일 주소를 사용하려면 해당 메일로 인증 메일을 받는 인증절차를 걸쳐야 한다. ‘워드프레스 설정 – 일반 – 이메일 주소’ 의 기본 이메일 주소인 ‘user@example.com’을 자신의 이메일 주소로 변경하고, 인증 메일을 통해 절차를 진행하면 된다.

하지만 위와 같은 경우 서버에서 자체적으로 이메일을 보낼 수 없기 때문에 인증 메일이 오지 않는다! 그 때문에 SMTP 기능을 구축해서 메일을 보내야 하는 것이다. 가장 메이저한 Google SMTP를 사용해 외부 이메일인 Gmail과 워드프레스를 연동시켜 보도록 하자.

워드프레스 SMTP 사용을 위한 ‘Easy WP SMTP’ 플러그인 설치

– ‘Easy WP SMTP‘ 플러그인을 설치한 뒤 세팅을 진행한다.

– ‘Easy WP SMTP Settings’ 의 ‘SMTP Settings’ 탭에 정보를 적는다.

  • Frome Email Address: 이메일 주소 (ex example@gmail.com)
  • Frome Name: 보내는 사람에 표기될 이름 (ex 개꿀몬(GKKmon))
  • Reply-To Email Address: 답장받을 주소. 그냥 비워두면 위에 적었던 이메일 주소로 설정된다.
  • SMTP Host: smtp.gmail.com (Gmail의 SMTP Host 주소다, 그냥 그대로 적으면 된다.)
  • Type of Encryption: 암호화 유형인데 ‘SSL/TLS’를 선택하면 된다.
  • SMTP Port: 465 (Gmail의 SMTP Port번호는 465다.)
  • SMTP Authentication: SMTP 인증은 항상 ‘Yes’로 설정해놔야 한다.
  • SMTP Username: 본인 Gmail의 실제 Username 을 적으면 된다. (ex example@gmail.com)
  • SMTP Password: 본인 Gmail의 실제 Password 를 적으면 된다. (ex ~!@abc123123)

설정을 모두 마쳤으면 ‘Save Changes’ 버튼을 눌러 설정을 저장하자. ‘Easy WP SMTP Settings’ 의 ‘Test Email‘ 탭에서 테스트 이메일을 발송할 수 있다. ‘To:’에 테스트 메일을 발송받을 이메일 주소를 적고 ‘Subject’에 적당한 제목과 ‘Message’에 적당한 내용을 적고 ‘Send Test Email’ 버튼을 눌러서 테스트 이메일을 보내보자. 여기서 무사히 테스트 메일이 온다면 연동이 성공적으로 이루어진 것이다. 그럼 연동된 메일로 인증도 받고 기능들도 사용하면 된다.

‘Easy WP SMTP’ 플러그인 오류

만약 오류가 뜬다면 해당 오류를 해결해야 한다. 오류중 개꿀몬(GKKmon)이 경험했던

Following error occured when attempting to send test email:
SMTP Error: Could not authenticate.

과 같은 오류는 해결법이 아주 쉽다. 위에서 등록했던 본인의 Gmail계정으로 로그인을 해보자. 그러면 화면 상단에

경고: Google은 귀하의 비밀번호를 이용해 계정에 접근하려는 수상한 로그인 시도를 차단했습니다. '지금 활동...

라는 경고 메세지와 함께 왜 오류가 났는지를 한눈에 알 수 있다. 이유는 바로 워드프레스 ‘Easy WP SMTP’ 플러그인에 적은 Gmail 아이디와 비밀번호로 플러그인이 자동으로 로그인 후 이메일을 보내서 보안경고가 뜬 것이다.

https://myaccount.google.com/device-activity?service=pr_bl&rfn=5&rfnc=4&anexp=desktop 주소에서 시간과 위치, IP 주소가 서버의 고정 IP 주소인지 확인하고(플러그인이 보낸것이기 때문에 고정 IP주소가 뜬다) 맞다면 ‘예, 내가 한 활동입니다.’ 를 선택해 보안경고를 잡아주면 된다. 보안설정을 마치고 다시 테스트 이메일을 보내보면, 잘 보내지는 것을 확인할 수 있다.

이 외에도 호스팅 서버에서 스팸으로 분류되어서 오류가 나거나(이 경우는 호스팅 사와 관련해서 해결을 해야한다), (‘카페24’ 의 경우 ‘계정관리 – 스팸 SHIELD’ 에서 ‘사용 안 함’으로 설정하면 된다고 함.)
‘SMTP connect() failed’ 라는 오류가 발생한 경우 ‘SMTP Port’의 포트번호를 465에서 587로 바꾸면 오류가 고쳐지는 경우도 있다고 한다.