Header Ads Widget

Ticker

6/recent/ticker-posts

Xây dựng hệ thống send mail trên AWS với SES service

Keyword: How to build send mail system on AWS with SES service

Thời đại công nghệ bây giờ thì cần gì một mail server nữa, giờ cứ lên Cloud làm vài thao tác nhẹ là ta đã có thể xây dựng một hệ thống send mail marketing xịn sò rồi, thật vậy bởi lẻ khi mình xây dựng hệ thống send mail cho một service notification chỉ với vài thao tác rất đơn giản, cùng mình thực hiện nó nhé

Định nghĩa về thằng SES này thì nói dài dòng sau đi, mình sẻ rút gọn nó như sau, nó là một service dùng để send mail, với SES là tên viết tắt của (Simple Email Service), đúng như cái tên luôn vì nó quá đơn giản, việc của các bạn đầu tiên là thực hiện truy cập tìm kiếm service với từ khóa SES

Sau đó thực hiện truy cập vào SES và tìm đến mục config để thực hiện cấu hình add domain
Tại đây ta chọn "Create identity"
Sau đó Ok tiếp đến nó sẻ cho chúng ta 3 CNAME Record để add vào DNS, bạn thực hiện add vào DNS để cho nó Verify
Sau khi đã verify thành công các bạn lại thực hiện tạo credential bằng cách truy cập vào mục "Account dashboard" tại đây bạn chọn "Create SMTP credentials"

Việc  tạo credentials nó sẻ giống như tạo IAM vậy, nó sẻ cho bạn 2 key
  • ACCESS KEY: Giống như user account của email vậy
  • SECRET ACCESS KEY: Đây có thể coi như là password của một email 
Giờ đây với 'User Account' đã có, 'Password' cũng đã có vậy thì giờ với những thông tin đó chúng ta đã có một config hoàn chỉnh của một mail service cần có rồi đấy, à phần SMTP endpoint ở đây có thể khác nhau tùy vùng region mà bạn tạo dựng SES nhé, ở đây mình build SES tại Sing nên thành ra region của mình là ap-southeast-1 


Ví dụ: Để config mail và sử dụng trong code thì bắt buộc chúng ta sẻ cần có những thông tin sau (đây là info mà mình sử dụng mail office365) 
  1. SMTP_HOST: smtp.office365.com
  2. SMTP_PORT: '587'
  3. SMTP_USER: [email protected]
  4. SMTP_PASSWORD: '1234'
  5. SMTP_EMAIL: [email protected]
  6. SMTP_TITLE: 'ITBLOGNOTE'
Nhưng nếu sử dụng SES thì sao ? 
  1. SMTP_HOST: email-smtp.ap-southeast-1.amazonaws.com
  2. SMTP_PORT: '587'
  3. SMTP_USER: AP222222ITBLOGNOTE
  4. SMTP_PASSWORD: 'TPsasasadaewJASSAJGwaisashJ5OeK81jYPRVaV'
  5. SMTP_FROM_EMAIL: [email protected]
  6. SMTP_FROM_NAME: 'ITBLOGNOTE'
Ta sẻ cần thay thế Host, User chính là Access Key và Password là Secret Key, còn với mục email thì khi sử dụng SES bạn có thể đặt email bất kỳ mà bạn muốn, miễn sao nó có cùng domain mà bạn đã verify lúc đầu là ok, nghĩa là ở đây mình sử dụng abc hoặc thay đổi thành xyz gì cũng được cả, quan trọng là domain sau thằng @ vẫn là itblognote.com là được.

Bây giờ thì các bạn có thể gửi mail cho những email có cùng domain được rồi hoặc những email ngoài đã được verify riêng cùng với limit là 100 email trong 1 ngày, thế làm cách nào để nâng limit email lên cũng như có thể gửi cho những email khác mà không cần verify ? ở đây AWS bắt buộc chúng ta phải viết một letter xin phép support từ phía AWS yêu cầu tăng limit lên, ở phần xin phép tăng limit thì mình nghĩ các bạn tự chém gió với AWS nhé, nhưng yên tâm việc xin phép rất dễ, sẻ thành công thôi, mình viết đại là "Tao muốn tăng lên 50000 mail để gửi thông tin cho nhân viên v.v" vậy mà nó nâng liền ngay lập tức trong buổi sáng, Chúc các bạn thành công nhé.
Nguồn: itblognote.com

Post a Comment

0 Comments