ในฐานะ Software Engineer คุณอาจอยากมีอีเมลมืออาชีพพร้อมเว็บไซต์ของตัวเอง เช่น "info@example.com" แต่สิ่งนี้อาจมีค่าใช้จ่ายที่คุณไม่ค่อยยินดีจ่าย
แต่คุณรู้ไหมว่าสามารถทำได้ฟรี? มีวิธีทำจริงๆ และนอกจากอีเมลมืออาชีพฟรีแล้ว ยังช่วยให้คุณทำงานได้มีประสิทธิภาพ น่าเชื่อถือ และปลอดภัยมากขึ้น
ในบทความนี้ คุณจะได้เรียนรู้วิธีสร้างและตั้งค่าอีเมลของตัวเองโดยใช้ Cloudflare และ Mailgun เพื่อจัดการอีเมลใน Gmail หมายความว่าคุณสามารถส่งและรับอีเมลได้ตรงใน Inbox ของ Gmail
ผมทำไปแล้วสำหรับการใช้งานส่วนตัว และถ่ายภาพหน้าจอทั้งกระบวนการที่คุณจะเห็นในบทความนี้ ดังนั้นผมจะแชร์ขั้นตอนทั้งหมดที่คุณต้องทำตามเพื่อตั้งค่าอีเมลของตัวเอง
ลองมาดูว่าก่อนเริ่มต้องมีอะไรบ้าง จะทำอะไร และจะทำงานอย่างไร
สิ่งที่ต้องมีก่อนเริ่ม
สมมติว่าคุณมี Domain อยู่แล้ว เรียกว่า "yourdomain.com" โดยเฉพาะคุณต้องเข้าถึงการเชื่อมต่อ Domain กับ Cloudflare และตั้งค่า DNS Records ได้ ตัวอย่างคลาสสิกคือมี Domain ที่ Registrar (อย่าง GoDaddy, Namecheap) และเพิ่ม Domain เข้า Cloudflare โดยตั้ง DNS Records ที่ Cloudflare ให้บนบัญชี Registrar
การเพิ่ม Domain เข้า Cloudflare เกี่ยวข้องกับการอัปเดต DNS Nameservers ของ Domain ให้ชี้ไปที่ Nameservers ของ Cloudflare เมื่อเพิ่ม Domain แล้ว Cloudflare จะทำหน้าที่ Middleware สำหรับ Web Traffic ให้คุณสมบัติความปลอดภัยอย่าง DDoS Protection, Firewall, และ SSL Encryption รวมถึงการเพิ่มประสิทธิภาพผ่าน Caching และ Content Optimization
ถ้ายังไม่ได้ทำ นี่คือวิดีโอทางการบน YouTube วิธีเชื่อมต่อ Domain กับ Cloudflare
เพิ่มเติม Cloudflare จัดการ DNS Records สำหรับ Domain ของคุณ อนุญาตให้ควบคุมการ Route Traffic และรับรองการส่งมอบบริการอย่าง Email ได้อย่างน่าเชื่อถือ
ดังนั้นงานในบทความนี้จะเน้นตรงจุดนี้: วิธีตั้งค่า Domain บน Cloudflare Email
Cloudflare Email เป็นหนึ่งในบริการของ Cloudflare ตั้งแต่ 2021 ซึ่งใช้ได้ฟรี (ตอนนี้อย่างน้อย)
สมมติฐานที่สองคือคุณมีบัญชี Gmail และเข้าถึง Email Settings ได้ อย่างง่าย ถ้าคุณมี "youremail@gmail.com" ปกติ ไม่อยู่ภายใต้การควบคุมของ Admin ก็ไม่ต้องกังวล เราจะสำรวจและทำงานกับ Email Settings ภายหลัง
สิ่งที่คุณจะทำ
คำพูดง่ายๆ คุณจะสร้าง Custom Email อย่าง "something@yourdomain.com" ซึ่งใช้ส่งและรับอีเมลผ่านแพลตฟอร์ม Gmail ดังนั้นคุณจะรับและอ่านอีเมลที่ส่งไป "something@yourdomain.com" ใน Gmail และส่งอีเมลจาก Custom Email นั้นผ่าน Gmail ด้วย
คุณจะใช้ Cloudflare Email สำหรับ Email Routing และ Mailgun's SMTP Server สำหรับส่งอีเมล
วิธีการทำงาน
เมื่อเขียนอีเมลจาก Gmail โดยตั้ง Sender เป็น "something@yourdomain.com" Gmail ใช้ Mailgun's SMTP Server ผ่าน Credentials ที่ให้มา ส่งอีเมลออกไป Mailgun จะประมวลผลข้อความและส่งต่อไปยัง Email Server ของผู้รับ อาจเกี่ยวกับ DNS Lookups เพื่อหาเซิร์ฟเวอร์ของผู้รับ
อีเมลที่ส่งไป "something@yourdomain.com" จะถูกรับโดย Email Servers ของ Cloudflare ที่ตั้งค่าผ่าน MX Records ใน DNS Settings ของ Domain Cloudflare จัดเก็บอีเมลที่รับไว้ในบัญชีที่เกี่ยวข้อง เข้าถึงได้ผ่าน Gmail ซึ่งเชื่อมต่อกับเซิร์ฟเวอร์ของ Cloudflare เป็นระยะ (ใช้โปรโตคอล IMAP หรือ POP3) เพื่อดึงข้อความใหม่ ทำให้เข้าถึงอีเมลเข้าได้อย่างราบรื่น
Email Routing บน Cloudflare
Cloudflare Email Routing ออกแบบมาเพื่อทำให้การสร้างและจัดการที่อยู่อีเมลง่ายขึ้น โดยไม่ต้องเฝ้าดู Mailbox เพิ่มเติม ด้วย Email Routing คุณสามารถสร้าง Custom Email Addresses จำนวนไม่อจำกัด เพื่อใช้ในสถานการณ์ที่ไม่ต้องการแชร์ Primary Email เช่นเมื่อสมัครบริการใหม่หรือ Newsletter อีเมลจะถูก Route ไปยัง Inbox ที่คุณชอบ โดยคุณไม่ต้องเปิดเผย Primary Email เลย (Cloudflare Docs)
Sign in เข้า Cloudflare Account และไปที่ Dashboard
เลือกและคลิก Website ที่ต้องการ สำหรับผมคือ "boolfalse.com" เพราะอยากสร้าง Custom Email อย่าง "email@boolfalse.com"
[Screenshot: Cloudflare Websites]
ไปที่ Email Routing สำหรับ Website ที่เลือก
[Screenshot: Cloudflare Email Routing]
ถ้ายังไม่ได้ตั้งค่า Email Routing อาจเห็นแบบ Screenshot ข้างบน คลิก "Get started" อาจสามารถสร้าง Address ของตัวเองเพื่อรับอีเมลและดำเนินการได้
เราจะข้ามขั้นตอนนี้โดยไม่สร้าง Address เพราะจะทำเองแบบ Manual
[Screenshot: Cloudflare Custom Email]
โดยค่าเริ่มต้น Email Routing ปิดอยู่ ต้อง Enable โดยคลิกลิงก์ไปหน้า Email Routing
[Screenshot: Cloudflare Email Routing]
กด "Enable Email Routing" เพื่อยืนยัน
[Screenshot: Cloudflare Enable Email Routing]
คุณต้องมี MX Records 3 ตัว และ TXT Record 1 ตัว:
- Type: MX; Name: @; Mail Server: route1.mx.cloudflare.net; TTL: Auto; Priority: 69
- Type: MX; Name: @; Mail Server: route2.mx.cloudflare.net; TTL: Auto; Priority: 99
- Type: MX; Name: @; Mail Server: route3.mx.cloudflare.net; TTL: Auto; Priority: 40
- Type: TXT; Name: @; TTL: Auto; Content: v=spf1 include:spf.mx.cloudflare.net ~all
คุณสามารถเห็นได้ที่ด้านล่างของหน้า Email Routing
[Screenshot: Cloudflare DNS Records สำหรับ Email Routing]
ดังนั้น ในเมนูซ้าย ไปที่ "DNS" → "Records" และเพิ่ม Records ดังกล่าว
[Screenshot: Cloudflare DNS Records ที่เพิ่มแล้ว]
หลังสร้าง Records แล้ว กลับไปหน้า Email Routing อีกครั้ง
ที่นี่คุณต้องมีแค่ Records ที่เพิ่งสร้าง ถ้ามี Records อื่น ให้ลบทิ้ง
ตัวอย่างผมมี Entry ที่ไม่จำเป็นต้องลบ
[Screenshot: Cloudflare Existing Records สำหรับ Email Routing]
กดยืนยันลบ Records ที่ไม่จำเป็น
[Screenshot: Cloudflare ลบ Records ที่ไม่จำเป็น]
หลังลบ Records ที่ไม่จำเป็นแล้ว จะเหลือแค่ที่ต้องการ
ตอนนี้คุณสามารถ Enable Email Routing ได้โดยคลิกปุ่ม "Add records and enable"
[Screenshot: Cloudflare Enable Email Routing]
หลัง Enable แล้วควรเห็นแบบนี้:
[Screenshot: Cloudflare Email DNS Records Configured]
ตอนนี้ไปที่ Tab Routes และสร้างอีเมลโดยคลิกปุ่ม "Create address"
[Screenshot: Cloudflare Email Routing (Enabled)]
ในตัวอย่างนี้เราจะสร้าง "email@boolfalse.com" โดยเพิ่ม "email" เป็น Custom Address และ Destination Email Address ที่จะรับอีเมล
[Screenshot: Cloudflare Email Routing]
ควรได้ Notification เกี่ยวกับเรื่องนี้
[Screenshot: Cloudflare Creating Custom Email]
คุณควรได้อีเมลสำหรับยืนยันการกระทำนี้
[Screenshot: Verifying Destination Email]
ไปยืนยัน Email Address
[Screenshot: Verify Email Address]
หลังยืนยัน Email Address แล้ว อาจได้หน้านี้:
[Screenshot: Cloudflare Custom Email Address Verified]
คุณอาจได้อีเมลแจ้งว่ายืนยัน Domain กับ Mailgun แล้ว:
[Screenshot: Notification เกี่ยวกับการยืนยัน Custom Email]
วิธีรับอีเมลใน Custom Email
ตอนนี้ Email Address ของคุณ Active แล้ว มองได้ที่นี่:
[Screenshot: Cloudflare Custom Email Address Active]
จุดนี้คุณสามารถส่งอีเมลทดสอบไปที่ Custom Email ที่เพิ่งตั้งค่า ในกรณีนี้คือ "email@boolfalse.com"
ด้านล่างคืออีเมลทดสอบที่ส่งจากอีเมลอื่น
[Screenshot: Testing Email Receiving]
คุณจะได้รับอีเมลทดสอบที่ Custom Email
[Screenshot: Test Email Received]
Mailgun: เพิ่ม Domain ใหม่
ตอนนี้รับอีเมลได้แล้ว แต่อยากส่งอีเมลจาก Custom Email นั้นยังไม่ได้
ถึงเวลาเปลี่ยนไป Email Service Provider ในกรณีนี้คือ Mailgun
แค่สมัครและผูกบัตรกับบัญชี Mailgun หลัง Activate บัญชีพร้อมบัตรแล้ว สามารถตั้งค่า Domain สำหรับอีเมลได้
ไม่ต้องกังวลเรื่องบัตร เพราะ Mailgun ไม่เรียกเก็บเงินสำหรับปริมาณจำกัด คิดว่าจำนวนที่ให้มาพอสมควรสำหรับ Free Package
ดูแพ็กเกจราคาโดยละเอียดได้ที่นี่
ไป Sending → Domains แล้วคลิกปุ่ม "Add New Domain"
ในกรณีนี้จะเป็น "mg.boolfalse.com" เนื่องจาก Mailgun แนะนำให้เป็นแบบนี้ เพื่อให้ส่งอีเมลจาก Root Domain ได้ คือ "email@boolfalse.com"
คุณควรเห็นคำแนะนำนี้ทางขวาในรูปภาพด้านล่าง:
[Screenshot: Mailgun Create New Domain]
คุณสามารถเลือก Domain Region และ DCIM Key Length ได้ แต่อาจปล่อย Default ไว้
ผมจะตั้ง DCIM Key Length เป็น 1024 และ "US" เป็น Domain Region
หลังสร้าง Domain แล้ว อาจได้ Tips วิธี Verify Domain
[Screenshot: Mailgun Adding New Domain]
Mailgun จะให้ TXT Records 2 ตัว, MX Records 2 ตัว และ CNAME Record 1 ตัว เพื่อเพิ่มที่ Provider:
- Type: TXT; Name: mailto._domainkey.mg.boolfalse.com; TTL: Auto; Content:
- Type: TXT; Name: mg.boolfalse.com; TTL: Auto; Content: v=spf1 include:mailgun.org ~all
- Type: MX; Name: mg.boolfalse.com; Mail Server: mxa.mailgun.org; TTL: Auto; Priority: 10
- Type: MX; Name mg.boolfalse.com; Mail Server: mxb.mailgun.org; TTL: Auto; Priority: 10
- Type: CNAME; Name: email; Target: mailgun.org; TTL: Auto; Proxy Status: On
ในกรณีนี้เราจะเพิ่มที่ Cloudflare
[Screenshot: Mailgun First TXT Record]
[Screenshot: Mailgun Second TXT Record]
[Screenshot: Mailgun First MX Record]
[Screenshot: Mailgun Second MX Record]
หลังเพิ่ม TXT 2 ตัวและ MX 2 ตัวแล้ว สามารถตรวจสอบและ Verify ได้โดยคลิกปุ่ม "Verify DNS Records"
[Screenshot: Mailgun Checking TXT และ MX Records]
สุดท้าย เพิ่ม CNAME Record
[Screenshot: Mailgun Adding CNAME Record]
อาจเห็นไอคอนเตือนด้านซ้ายของ CNAME Record ไม่ต้องกังวล นี่คือคำอธิบายจากเอกสารทางการ:
ถ้าคุณเพิ่งเพิ่ม Domain เข้า Cloudflare - หมายถึง Zone อยู่ในสถานะ Pending - มักสามารถข้าม Warning นี้ได้
เมื่อ Domain ส่วนใหญ่กลายเป็น Active Cloudflare จะออก Universal SSL Certificate ให้อัตโนมัติ ซึ่งให้ SSL/TLS Coverage และลบ Warning Message
หลังเพิ่ม CNAME Record แล้ว สามารถตรวจสอบและ Verify อีกครั้งโดยคลิกปุ่ม "Verify DNS Records" ตัวที่สอง
[Screenshot: Mailgun Checking CNAME Record]
ถ้าเพิ่ม Records ทั้ง 5 ตัวบน Cloudflare สำเร็จ หลังคลิก Verify Mailgun จะ Redirect ไปหน้า Overview อัตโนมัติ
[Screenshot: Mailgun 2 TXT, 2 MX และ 1 CNAME Records Added]
หมายความว่าคุณพร้อมเพิ่ม Sending API Key บน Mailgun
Mailgun: Sending API Key & SMTP User
ไป Sending → Domain Settings เลือก Tab Sending API keys ด้านบน อาจไม่เห็น API Keys ใดๆ แค่สร้าง Sending API Key ใหม่
คลิก "Add sending key" มุมขวาบน ใน Pop-up ใส่ชื่อ Key ที่จะสร้าง
[Screenshot: Mailgun Creating Sending API Key]
หลังกด "Create sending key" จะได้ Secret API Key ต้อง Copy และเก็บไว้ที่ปลอดภัย หลังเก็บแล้วปิด Pop-up ได้
ควรเห็น Key ที่สร้างขึ้น Listed:
[Screenshot: Mailgun Sending API Key Created]
คุณยังต้องสร้าง SMTP User ใหม่ใน Mailgun Dashboard
ไป Sending → Domain Settings เลือก Tab SMTP credentials ด้านบน และคลิก "Add new SMTP user" มุมซ้ายบน จะเปิด Pop-up
ใส่ Credentials ในตัวอย่างผมจะสร้าง User ชื่อ "email" จะเป็น Login สำหรับอีเมลบน Gmail
[Screenshot: Mailgun Creating SMTP User]
หลังสร้าง SMTP User ใน Mailgun แล้ว จะเห็น Listed และ Password จะถูก Generate อัตโนมัติ เพื่อรับ Password นี้ Copy โดยคลิกปุ่ม "Copy" ใน Pop-up Notification มุมขวาล่าง
[Screenshot: Mailgun SMTP User Created]
เก็บไว้ที่ปลอดภสำหรับใช้ในอนาคต คุณจะต้องการ Login และ Password นี้เพื่อ Authenticate บน Gmail
ตอนนี้คุณพร้อมตั้งค่าการกำหนดค่าอีเมลกับ Email Provider ในกรณีนี้คือ Gmail
เปิด Gmail บน Desktop Browser ไป Settings คลิกไอคอน Settings มุมขวาบน และคลิก "See all settings"
[Screenshot: Mailgun New Domain Verified]
การยืนยันตัวตน Gmail ด้วย Mailgun SMTP Server
ในหน้า Gmail Settings เลือก Tab Accounts and Import และคลิก "Add another email address" จาก Section "Send mail as":
[Screenshot: Gmail Settings]
จะเปิด Pop-up สำหรับ Authentication ใช้ Login และ Password ที่เพิ่งได้จากการสร้าง SMTP User บน Mailgun ตรวจสอบให้แน่ใจว่าใส่ Credentials ถูกต้อง
[Screenshot: Gmail Authenticate New User ใช้ SMTP Server ที่สร้างบน Mailgun]
Submit Form โดยคลิก "Add Account" อาจถามว่าจะ Save Username/Password ใน Browser หรือไม่ ขึ้นอยู่กับคุณ
และสิ่งสำคุดสุดท้าย: จะขอ Verify การเพิ่มบัญชี
[Screenshot: Gmail Authentication Confirmation]
สำหรับ Verification อีเมลยืนยันจะส่งไป Primary Email ของคุณ
[Screenshot: Gmail Authentication Verification Email]
คุณสามารถใช้ Confirmation Code เพื่อ Verify ผ่าน Pop-up หรือกด Link ในอีเมลยืนยันก็ได้
ในกรณีนี้เราจะคลิก Link ซึ่งจะเปิดหน้าที่ขอ Confirm คลิก "Confirm" และปิด Pop-up ก่อนหน้าได้เลย
[Screenshot: Gmail Verifying Authentication]
ตอนนี้คุณพร้อมส่งและรับอีเมลจาก Custom Email ที่เพิ่งสร้าง
สำหรับการส่งอีเมลจาก Custom Email แค่เลือก Email นั้นเป็น Sender Email:
[Screenshot: Gmail Sending Emails]
แค่นี้ก็จบแล้ว!
สิ่งเพิ่มเติมที่อาจมีประโยชน์: คุณสามารถตั้ง Custom Email Address ที่เพิ่งสร้างเป็น Default Address สำหรับส่งอีเมลจาก Gmail ได้
ตั้งได้ที่หน้า Settings ใน Section "Send mail as":
[Screenshot: Gmail Settings (Default Sender)]
หวังว่าคู่มือนี้จะเป็น Resource ที่ดีสำหรับการตั้งค่า Custom Email ของคุณ
สรุป
ในบทความนี้ คุณเรียนรู้วิธีตั้งค่าอีเมลของตัวเองเพื่อจัดการอีเมลใน Gmail โดยใช้ Cloudflare Email และ Mailgun
สรุปแล้ว เลือก Tools ไม่ได้เป็นเรื่องบังคับ สามารถใช้ Tools อื่นแทนได้ แตแนวคิดและ Logic พื้นฐานจะคล้ายกัน
เยี่ยมเว็บไซต์ของผมได้ที่: boolfalse.com
แชร์บทความนี้ได้ครับ 😇
Learn to code for free. freeCodeCamp's open source curriculum has helped more than 40,000 people get jobs as developers. Get started